You have an error in your SQL syntax; check?

Shorty

Registered User
Ich habe auf meinen vServer ein Script instaliert und bekomme nun beim bb code erstellen folgende meldung:

Invalid SQL:
SELECT * FROM scar4u_bbcode_groups WHERE bbcodegroupid IN () ORDER BY groupname ASC


MySQL-ERROR-MSG: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY groupname ASC' at line 1
MySQL-ERROR-Nr: 1064

Nun möchte ich hier mal Fragen kann mir bitte jemand sagen/helfen den Fehler zu finden und zu beheben?

Gruss
 
Vielen dank aber was genau ist diese IN ( ) in den SQL befehl ist nichts mit IN ( ) zu finden?

Wie könnte ich nun den fehler durch einen eingriff im phpmyadmin beheben?
 
Mit PHPMyAdmin garnicht. Die Abfrage, die das Script ausführt, ist einfach kaputt. Warum und weshalb musst du mit dem Entwickler bzw. deren Community klären - oder du findest es selbst heraus, wenn du entsprechende Programmierkenntnisse hast ;)
 
Der Autor antwortet leider nicht und ich habe mal in die entsprechende php datei geschaut,ich kenne mich damit nicht aus und wollte mal fragen ob eventuell der teil:

PHP:
if(!defined("LOGIN")){ header("Location: login.php?site=".$_REQUEST["site"]); die(); }

if($groupdata["cansmiliesgroupedit"]!=1) noAccess();

$action = strtolower(trim($_REQUEST["action"]));

Falsch sein könnte,sind die ersten Drei zeilen?
 
Sorry, aber das ist doch jetzt reines Strohhalme ziehen, Rätselraten, sonstiger Kinderkram.

Denk doch mal nach:
Das Script produziert einen SQL-String welcher einen Fehler erzeugt.
Taucht in diesen ersten 3 Zeilen irgendwas aus diesem SQL-String auf?

Wenn Du es abkürzen willst, dann sag doch gleich, welches Script Du nutzt und wo man es laden kann. Evtl. ist hier jemand so gnädig und lädt sich das runter und schaut mal rein.

huschi.
 
Hallo Huschi,
sorry du hast recht,ich kenne mich zwar nicht so gut damit aus,aber das hätte sogar mir auffallen müssen.

Denoch werde ich hier mal den Link zu dem Script angeben,eventuell macht sich ja doch zufällig einer der sich dmit gut aus kennt schnell die endeckung wo der fehler liegt.

http://www.scar4u.de/news/index.php?sn_show_news=141

Vielen dank.

P.S.wenn ich mir den fehler oben und noch mal in die Datei schaue würde ich sagen das es an dieser abfrage liegt?
PHP:
$db->query("SELECT * FROM ".$config["tblpre_script"]."bbcode_groups WHERE bbcodegroupid IN (".@implode(",",$db->escape($script["bbcodegroup"])).") ORDER BY groupname ASC");
        while($array = $db->fetch_array()){
 
Last edited by a moderator:
Ich habe das @ entfernt,der fehler ist noch der selbe nur ganz oben ist nun das:

Warning: implode() [function.implode]: Bad arguments. in /var/www/web0/html/bewertung/admin/bbcode.php on line 118

nun hin zu gekommen?
 
Also übergibt dein Skript an die Implode funktion falsche Werte und dadurch ist der Rückgabe Wert null.

php.net/implode

Da mal schauen da findeste Informationen.

Was gibt ein
PHP:
echo $script["bbcodegroup"]);
print_r($script["bbcodegroup"]));
am Anfang des Skripts??
 
Danke ich schaue mir die seite mal an und werde ein paar experimente machen bis ich verzweifel.:D:cool:

Dein Code an den anfang des scriptes beziehungsweisse anden anfang der bbcode.php brache folgenden fehler:

PHP:
Parse error: syntax error, unexpected ')', expecting ',' or ';' in /var/www/web0/html/bewertung/admin/bbcode.php on line 62
 
Wahrscheinlich holt er sich die BBCode-Gruppen auch an irgendeiner Stelle aus der Datenbank (oder aus einer ein Config-Datei) und da kommt es zu einem leeren Ergebnis - hat der Programmierer ergo nicht sauber abgefangen.
Also Bug an den Programmierer melden und hoffen, daß der schnell eine Lösung liefert.
 
Dann lern PHP oder sei einfach ein bisschen intelligent.
Da sind mir schlißende runde Klammern reingerutscht die musst du natürlich entfernen damit der Error weggeht das steht aber auch in der Fehlermeldung.

Hast du dir php.net/implode angeschaut?
Du brauchst ein array und hast keins ... :eek:
 
Back
Top