EitrazMedlem sedan sep. 2002385 inlägg
Har ett fel jag inte blir riktigt klok på här, säkert nåt slarv ;)
Börjar med koden här iaf:
if ($is_content_id) {
$where = "E.content_id = '$evaluation_id'";
}
else {
$where = "E.evaluation_id = '$evaluation_id'";
}
// Get evaluation
$DB->query("SELECT E.evaluation_id, E.content_id, E.title, E.start, E.end, C.title AS title_2
FROM db_evaluation AS E
LEFT JOIN db_content AS C ON C.content_id = E.content_id
WHERE $where");
if (! ($row = $DB->fetch_row())) {
return "";
}
Detta är inbakat i en funktion, och när jag har $is_content_id = true så får jag Query was empty som ett SQL-fel. Om $is_content_id = false så fungerar det galant.
Jag har testat att manuellt mata in sql-frågan som genereras av scriptet i MySQL-front och då fungerar det oavsett vilken av de två versionerna det är.
Nån som vet vart jag skrivit fel :(
Dies_IraeMedlem sedan aug. 2001159 inlägg
Använder du inte $is_content_id någon annanstans? Du borde ju aldrig få ett empty query fel eftersom du har fast kod i queryn.
EitrazMedlem sedan sep. 2002385 inlägg
Nix, koden ovan är i början av funktionen function Main($evaluation_id, $is_content_id = false) {.
mmmMangeMedlem sedan jan. 2005111 inlägg
Visa hela koden. Verkar ju inte vara något som kan gå fel i den kod du skrivit... Är $evaluation_id samma både när du har True och False på $is_content_id?
aasahMedlem sedan mars 20033 451 inlägg
Lägg in en echo av din SQL-sats:
if ($is_content_id) {
$where = "E.content_id = '$evaluation_id'";
}
else {
$where = "E.evaluation_id = '$evaluation_id'";
}
// Get evaluation
$sql = "SELECT E.evaluation_id, E.content_id, E.title, E.start, E.end, C.title AS title_2
FROM db_evaluation AS E
LEFT JOIN db_content AS C ON C.content_id = E.content_id
WHERE $where";
echo $sql;
$DB->query($sql);
if (! ($row = $DB->fetch_row())) {
return "";
}
Med lite tur ser du vad som är tokigt. :)
EitrazMedlem sedan sep. 2002385 inlägg
Var inget tokigt med SQL-koden alls. Som vanligt var det ett (slarv-)fel längre ner som gav ett skummt fel bara :)