Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 72%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 23%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 21%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 12%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 7%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 7%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 5%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 3%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 306 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

Tato

Routinier

Dabei seit: 18.02.2010

Beiträge: 383

 

1 Zum Seitenanfang

Montag, 9. August 2010, 21:00

Löschen von Datein in der Datenbank

Hey,
sorry wenn euch die Überschrift etwas verwirrt mir ist aber leider nichts besseres eingefallen.
Also, ich habe folgendes Problem/Frage:
Ich mache zum löschen von Daten in der DB immer checkboxen mit der jeweiligen id als value...ja aber denn ist es so, das wenn ich 2 chechboxen ankreuze, er nur eine Zeile löscht.
Wie muss man es machen das wenn ich 2 (oder mehr) löschen will?
 

dienstdrk

Routinier

Dabei seit: 02.01.2010

Beiträge: 357

 

2 Zum Seitenanfang

Montag, 9. August 2010, 21:04

Am einfachsen einfach zweimal das Statement in ner Schleife durchlaufen lassen...
Brauchst mehr Hilfe?
 

Tato

Routinier

Dabei seit: 18.02.2010

Beiträge: 383

 

3 Zum Seitenanfang

Montag, 9. August 2010, 21:05

Ja ich denke schon^^
Denn so richtig verstehen tue ich das nicht.
 

dienstdrk

Routinier

Dabei seit: 02.01.2010

Beiträge: 357

 

4 Zum Seitenanfang

Montag, 9. August 2010, 21:24

ok. Weiß jetzt nicht, wie du die Parameter bekommst, aber und wo du das programmierst, aber ich geh mal von PHP aus...

Dann hast du bestimmt ein array z.B. erase_data, wo dann die Indexe der zu löschenden Dateien drin steht.

Dann schaust du wieviele Felder das sind --> z.B. 3
und dann machst ne for schleife alla

PHP-Quelltext

1
2
for (i=0anzahl_felder<ii++)
mysql_query("delete from tablename where id = ".erase_data[i]);

oder hab ich dich falsch verstanden?

Erzähl doch mal, wie du es gecodet hast, bzw wo die Indexe drin stehen...

Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »dienstdrk« (9. August 2010, 21:24)

 

Skittles

Moderator

Dabei seit: 14.02.2004

Beiträge: 3 013

 

5 Zum Seitenanfang

Montag, 9. August 2010, 22:11

MySQL-Abfrage(n)

1
DELETE FROM `tabelle` WHERE `feld` IN ('Wert1', 'Wert2', ...)


Das sollte auch gehen. Wenn du deine Ids in einem Array hast, müsstest du diese noch in die Kommaschreibweise überführen, das geht mit implode: http://de.php.net/implode

PHP-Quelltext

1
2
$str implode(","$array);
mysql_query("DELETE FROM `tabelle` WHERE `feld` IN (".$str.")");

~!__/
..o.o

This is Einkaufswagen.
Copy Einkaufswagen into your signature to help him on his way to world domination.
 

viatoris

unregistriert

6 Zum Seitenanfang

Donnerstag, 12. August 2010, 22:15

So wie du das erzählst, dürfest du allen Checkboxen den selben Namen gegeben haben. Daher "überschreibt" jede angehakte Checkbox die vorherige. Relativ einfache Lösung dafür:

Statt

HTML

1
<input type="checkbox" name="id_to_delte" />


dieses hier:

HTML

1
<input type="checkbox" name="id_to_delte[]" />


Also die beiden eckigen Klammern am Ende vom Namen.

Damit bekommst du (wenn zumindest eine Checkbox angehakt ist) ein Array an IDs, über die du dann mit einer Schleife iterieren kannst. Löschen dann am Besten so, wie es Skittles beschrieben hat mit

MySQL-Abfrage(n)

1
WHERE `feld` IN ('ID1', 'ID2', ...)
. Aber pass auf, wenn keine angehakt ist, dann wird nämlich gar nichts mitgeliefert, also $_POST['id_to_delete'] ist nicht gesetzt.
 

Tato

Routinier

Dabei seit: 18.02.2010

Beiträge: 383

 

7 Zum Seitenanfang

Sonntag, 15. August 2010, 13:22

Ehh, i-wie hab ich das noch ganz verstanden.

Wie soll ich die IDs denn in einen Array packen?

Das versteh ich noch nicht ganz...
 

viatoris

unregistriert

8 Zum Seitenanfang

Sonntag, 15. August 2010, 21:07

Lies meinen Beitrag nochmal durch... Es steht ganz genau dort, was du machen musst.
 

Ähnliche Themen