auswahl löschen

Golz

Erfahrenes Mitglied
Hi leutz,

ich hab da ein kleines Problem mit den checkboxen.

ich habe eine Liste mit namen, jeder name hat eine checkbox, ich möchte jetzt mehrere sachen anwählen können und dann löschen. wenn ich aber auf den löschen button klicke löscht er immer nur einen.

Hier die Codes:

PHP:
//Tabelle mit allen Usern
//connection für tabelle mit allen Usern
mysql_select_db($database_klassensprecherwahl, $klassensprecherwahl) or die(mysql_error());

$query_showklspr = "SELECT `Name` FROM `klassensprecher` WHERE `Name` != 'Enthaltung'" ; 

$showklspr = mysql_query($query_showklspr, $klassensprecherwahl) or die(mysql_error());

$row_showklspr = mysql_fetch_assoc($showklspr); 
$totalRows_showklspr = mysql_num_rows($showklspr);
			
echo '<table border=0>';
			
do
{
	echo '<tr>';
	echo '<td>';
	echo '<input type="checkbox" name="checkbox" value="'.$row_showklspr['Name'].'">';
	echo $row_showklspr['Name'];
	echo '</td>';
	echo '</tr>';
}
while($row_showklspr = mysql_fetch_assoc($showklspr));
				
echo '</table>';
echo '<br><br>';
echo "<input type='hidden' name='kls_loeschen' value='" .$username_admin_kaal. "'>";

echo '<input type="submit" name="loeschen" value=" Auswahl loeschen ">';

echo '</form>';

der header geht auf

PHP:
if($loeschen != "")
{
//connection für tabelle mit allen Usern
mysql_select_db($database_klassensprecherwahl, $klassensprecherwahl) or die(mysql_error());

$query_loeschen = "DELETE FROM `klassensprecher` WHERE `Name` = '".$_POST['checkbox']."'" ; 

$loeschen = mysql_query($query_loeschen, $klassensprecherwahl) or die(mysql_error());

header("Location: ./kls_a_a_l.php?username_admin_kaal=$kls_loeschen");
exit;
}
else
{
echo "Bitte wählen Sie einen User aus um ihn zu löschen";
echo '<input type="button" name="nein" value=" zurück " onClick="javascript:history.back()">' ;	

exit;

was müsste ich machen, um mehrere löschen zu können?


MfG

Patrick
 
Hi

Du kannst das Delete-Statement z.B. in eine Foreach-Schleife setzen und die Checkbox-Werte, die in einem Array gesammelt worden sind, dort löschen. Ich wurde auch die ID zum löschen verwenden anstelle des Namens. Auf jeden Fall sollte der Wert eindeutig sein.

<input type="checkbox" name="checkbox[]" value="<? echo $row['id'];?>">

dann

PHP:
foreach($_POST['checkbox'] as $warwas) {
	$sql=mysql_query("delete from tabelle where id = $warwas");
	}

Ist jetzt nicht getestet.
http://php-faq.de/q/q-formular-checkbox.html
 
super vielen Dank, es hat mir wirklich geholfen und funktionieren tuts auch :D

Merci

Gruß

Patrick
 
Zurück