Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

Implode oder was?





Frage

Aaalso, gegeben folgende Situation: - Eine Liste von Datensätzen - Diejenigen Datensätze, welche durch eine Checkbox markiert sind, sollen updated (was man nicht alles eindeutschen muss *argh) werden - Das ganze wollte ich durch eine implode Funktion realisieren - Die Datensätze werden aber nicht geändert Hier ist der Code, der nach dem Abschicken des Formulars greifen soll: if (isset($_POST[posted]) && isset($_POST[mark])) { $sql2 = "UPDATE userdata SET user_zugelassen=´j´ WHERE user_id IN (´.implode(´,´, ´$_POST[mark]´).´)"; if (mysql_query($sql2)) { echo "Die ausgewählten Datensätze wurden zugelassen."; } else { echo "<font color=´red´><b>Fehler bei der Übertragung.</b></font><br>"; } } Meine Vermutung ist, dass in implode nicht die einzelnen Variablen erkannt werden, sodass user_id natürlich nicht in dem implode sein kann (denn ich bekomme trotzdem die Rückmeldung, dass $sql2 funktioniert hat). Bin in Sachen PHP noch ziemlich weit am Anfang und habe die Idee mit dem implode irgendwo im Netz aufgeschnappt, aber wo ist der Fehler? Kann man das möglichst einfach zurechtbiegen?

Antwort 1 von JanVer

Weiß ja nicht, wie Dein Formular aufgebaut ist, aber bevor ich eine SQL-Anweisung endgültig implementiere, prüfe ich sie vorher durch In-Augenschein-Nahme.

echo $sql2;

wäre also mein erster Schritt. Des weiteren musst Du noch checken, ob die IN Liste nicht leer ist. So etwas sollte auch abgefangen werden.

Antwort 2 von Jasmin-chan

Also den implode habe ich schon getestet, der gibt wie er es auch sollte solche Zeichenketen aus: 1,2,3, ...

Antwort 3 von disco

moin

hab keine ahnung von dem implode befehl. für mich sieht einfach nur der string falsch aus.

probier das mal:

$sql2 = "UPDATE userdata SET user_zugelassen=´j´ WHERE user_id IN (".implode(´´,´´,$_POST[mark]).")";

und wenn das nicht geht poste mal bitte was er dir mit
echo $sql2; ausgibt.

g,
disco

Antwort 4 von Jasmin-chan

@disco

Stimmt, jetzt wo du´s sagst fällt´s mir auch auf. Man, ich bin echt blutiger Anfänger ^^"
Jetzt funktioniert´s tadellos, danke Leute!

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: