webForumDet fria alternativet

Query was empty

5 svar · 270 visningar · startad av Eitraz

EitrazMedlem sedan sep. 2002385 inlägg
#1

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
#2

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
#3

Nix, koden ovan är i början av funktionen function Main($evaluation_id, $is_content_id = false) {.

mmmMangeMedlem sedan jan. 2005111 inlägg
#4

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
#5

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
#6

Var inget tokigt med SQL-koden alls. Som vanligt var det ett (slarv-)fel längre ner som gav ett skummt fel bara :)

Genererad på 373 ms · cache AV · v20260730165559-full.f96bc7eb