Query funktioniert nur in PHPMyAdmin

Danielku15

Erfahrenes Mitglied
Hi Leute.
Ich hab gerade ein sehr seltsames Problem. Ich hab mich schon um die Suche bemüht, jedoch ist mit den möglichen Suchbegriffen nur schwer das konkrete Problem zu finden.

Ich einen SQL Query. Wenn ich ihn versuche über PHP auszuführen bekomme ich nur den Fehler:
ErrorNummer: 1054
FehlerMeldung: Unknown column 'a.NUserID' in 'on clause'

Wenn ich den Query jedoch 1:1 aus der PHP Ausgabe in den PhpMyAdmin kopiere und ausführe, bekomme ich ein Ergebnis. Der Query enthält keine Fehler.

SQL:
SELECT a.* , b.SName AS SCategoryName, c.SNameFirst AS SAutorNameFirst, c.SNameSecond AS SAutorNameSecond 
FROM CnContent a 
INNER JOIN CnCategory b ON a.NCategoryID = b.NCategoryID 
INNER JOIN UsUser c ON a.NUserID = c.NUserID 
WHERE a.NContentID = "2"

Wisst ihr woran das liegen könnte?
 
was für anführungszeichen hast du denn in dem query (im PHP script) stehen, ich hab da manchmal ärger das nur ' oder " oder gar nichts an bestimmten stellen genutzt werden können.
 
Im PHP Code sieht das Ganze so aus:
PHP:
$query = MySqlConnection::mysql_secure_query('
SELECT a.* , b.SName AS SCategoryName, c.SNameFirst AS SAutorNameFirst, c.SNameSecond AS SAutorNameSecond
FROM %s a
INNER JOIN CnCategory b ON a.NCategoryID = b.NCategoryID
INNER JOIN UsUser c ON a.NUserID = c.NUserID
WHERE a.NContentID = "%u"',
array($_CONFIG['tables']['CnContent'], $this->NContentID),
$this->OConnection->Connection);

1. Parameter ist derselbe wie bei einem sprintf
2. Parameter ist ein Array mit den Werten für sprintf
3. Parameter ist die Verbindungsresource für den mysql_real_escape_string
 
Gib dir mal den slq befehl bei echo oder var_dump aus. Vermutlich liegt es am Array das du hinten dranfügst das dort daten kommen die in Abfrage nicht rein passen und einen fehler verusachen.

Mfg Splasch
 
Hat sich erledigt. Mein Provider hat gerade den Server gewechselt. Das Problem war dass das Script noch auf eine Kopie einer alten DB Version zugegriffen hat. Ich hab jedoch noch auf der Alten die Tabellen geändert. Jetzt funktioniert alles.
 

Neue Beiträge

Zurück