[Anfänger] mysql befehle php schleife

  • Themenstarter Themenstarter Bernie33
  • Beginndatum Beginndatum
B

Bernie33

private nachrichten = pm
 
Zuletzt bearbeitet von einem Moderator:
Veränder dein Formular so:

HTML:
<INPUT type="checkbox" name="msg[]" value="1"> <a href="private.php?lesen=1">betreff</a> von username.

<INPUT type="checkbox" name="msg[]" value="2"> <a href="private.php?lesen=2">betreff</a> von username.

So wird automatisch ein Array erstellt und die Daten eingepflegt.
In deiner alten Variante wurde die Variable einfach immer wieder überschrieben und somit nur der letzte markierte Wert übertragen.

Und jetzt musst du mit einer Schleife über die übergebenen Werte iterieren.

PHP:
if(!empty($msg) && is_array($msg))
{
  foreach($msg as $value)
  {
    // delete
  }
}
else
{
  // einzelner Delete
}
 
Hallo,
der Msg Array in deiner Postvariable hat ja einen index und wenn du
PHP:
$msg = mysql_real_escape_string($_POST[msg[0]]);
machst, sollte die Funktion nicht mehr meckern, da jetzt ein einzelner Wert als bezug gilt und nicht mehr das Array.
So long XerY
 
Also,

wenn wir davon ausgehen, dass du die CheckboxEinträge aus der Datenbank erstellst, dann solltest du den ValueWert der Checkbox mit dem Wert der ID-Spalte aus der Datenbank füllen.
Tust du das, würde das Array der Post-Variable "msg" dann ungefähr so aussehen :
Code:
array msg(
   [0] => 1
   [1] => 4
   [2] => 10
   ...
)

Dieses Array kannst du dann per For-Schleife auswerten lassen :
PHP:
for($i=0; $i<count($_POST["msg"]); $i++){
    // mysql_query zum löschen der Zeile mit der id $_POST[msg[$i]]
}

dann sollten alle Einträge gelöscht werden, habs jetzt nicht getestet abe so sollte es gehen.
So Long, Xery;-]
 
Zurück