SQL Datenlöschen
|
Verfasser |
Nachricht |
|
Beiträge: 396
Registriert seit: Oct 2008
Status:
offline
|
SQL Datenlöschen
Moin,
Ich bin grade dabei eine GW-Box zu schreiben.
Nun habe ich ein kleines Problem...
Ich habe eine Liste von Dateneinträgen:
[Link: Registrierung erforderlich]
So jetzt hab ich sie ausgewählt wie man sehen kann. Jetzt kommen wir zu meinen Problem... in einem Formular methode Post passt ja normal nur ein Wert... wie bekomme ich dort alle rein?
Mein Input:
<input type="checkbox" name="liste" value="'.$row->id.'" />
Mit freundlichem Gruß
Jens-Ole Sondermann
[Link: Registrierung erforderlich]
Dieser Beitrag wurde zuletzt bearbeitet: 30.10.2011 18:33 von Patrik.
|
|
29.10.2011 09:26 |
|
|
Beiträge: 24
Bewertung: 0
Registriert seit: Mar 2011
Status:
offline
|
RE: SQL Datenlöschen
So einfach wie du es jetzt hier erklärst wird es nicht gehen. Da du im Topic schreibst SQL musst du es ja schon mit PHP machen. Musst dann mit "Hidden" arbeiten und auf die Variable verweisen das die Markierten (IDs) aus der Datenbank gelöscht werden sollen, sollte mit "DELETE FROM" definiert werden. Das ganze darf er natürlich erst ausführen wenn man auf "löschen" klickt.
Hoffe ich konnte dir den Sprung zum Ziel etwas erleichtern.
|
|
29.10.2011 09:40 |
|
|
Beiträge: 396
Registriert seit: Oct 2008
Status:
offline
|
RE: SQL Datenlöschen
Nicht ganz...
Klar ist mir schon das es in PHP muss und das ich das Formular erst abschicken muss...
Es geht mir um die übergabe der IDs aus der Liste...
$_POST['liste'] kann ja maximal einen Wert tragen, so wie ich es jetzt geschrieben habe...
Nur wie bekomme ich alle IDs übergeben nicht nur die letzte?
Mit freundlichem Gruß
Jens-Ole Sondermann
[Link: Registrierung erforderlich]
|
|
29.10.2011 09:46 |
|
|
Beiträge: 758
Bewertung: 9
Registriert seit: Feb 2010
Status:
offline
|
RE: SQL Datenlöschen
So jetzt hab ich sie ausgewählt wie man sehen kann. Jetzt kommen wir zu meinen Problem... in einem Formular methode Post passt ja normal nur ein Wert... wie bekomme ich dort alle rein?
Mein Input:
<input type="checkbox" name="liste" value="'.$row->id.'" />
Die Frage ist ein bisschen schwer zu verstehen, soweit ich sie jedoch verstehe mit einer while Schleife?!
Oder wie meinst du das?
|
|
29.10.2011 11:08 |
|
|
Beiträge: 2.492
Bewertung: 29
Registriert seit: Jul 2010
Status:
offline
|
|
29.10.2011 11:58 |
|
|
Beiträge: 1.545
Bewertung: 62
Registriert seit: Jan 2011
Status:
offline
|
RE: SQL Datenlöschen
Naja Leute hier ist es nicht einfach DELETE FROm ... WHERE. Hier muss erst das Formulkar per POST übergeben werden und ein array muss in eine Schleife gebaut werden (mehrere Checboxen). Frag mich jetzt grade bitte nicht wies geht. Bin gerade erst aufgestanden. Storage-Base wirds regeln
---------------------------
[Link: Registrierung erforderlich] | [Link: Registrierung erforderlich]
|
|
29.10.2011 12:30 |
|
|
Beiträge: 2.492
Bewertung: 29
Registriert seit: Jul 2010
Status:
offline
|
RE: SQL Datenlöschen
HTML Code:
<input type="checkbox" name="liste[]" id="liste" value="'.$row->id.'" />
PHP Code:
foreach($_POST['liste'] as $key => $val) {
mysql_query("DELETE FROM `table` WHERE `id` = '$val'");
}
Ich bin dann bei mir noch hingegangen, habe die ausgewählten bzw. das Array gezählt, dann mit zählen lassen wie viel ausgeführt wurde, dann kannst du noch ein if schreiben welches fragt ob == 0, dann wurde nichts ausgeführt, ob != 0, dann wurde mindestens eine Abfrage ausgeführt bzw. == $count, dann wurden alle ausgeführt.
Das was du hier machst ist einfach ein Array beim übergeben erstellen, in welches sich dann alle ID's eintragen und so auslesen und verarbeiten lassen.
Mit freundlichen Grüßen / Best Regards
Julian Weiler | Geschäftsführender Gesellschafter
[Link: Registrierung erforderlich] ist außerdem bei [Link: Registrierung erforderlich], [Link: Registrierung erforderlich] und [Link: Registrierung erforderlich]
Telefon: +49 (0) 67 74 / 20 49 520
Fax: +49 (0) 67 74 / 20 49 520 9
E-Mail: [Mail: Registrierung erforderlich]
|
|
29.10.2011 12:55 |
|
|
Beiträge: 396
Registriert seit: Oct 2008
Status:
offline
|
|
29.10.2011 23:19 |
|
|
Beiträge: 59
Bewertung: 0
Registriert seit: Sep 2011
Status:
offline
|
RE: SQL Datenlöschen
$query = "DELETE FROM xxx WHERE id IN (".implode(",", $_POST["liste"]).")";
Nur als Tipp am rande.
Arbeite so, dass du Code und Template trennst ..
Das kann dir später SEHR VIEL helfen
Dieser Beitrag wurde zuletzt bearbeitet: 30.10.2011 00:02 von Marvin91.
|
|
30.10.2011 00:00 |
|
|