Tobias K.: liste und einträge löschen

Beitrag lesen

Hallo bjb,

if(!empty($daten)){

ich nehme mal an, $daten ist das Ergebnis von mysql_query(), richtig? dann dürfte es imho etwas sinnlos sein auf empty zu prüfen, sinnvoller wäre if(mysql_num_rows()!=0)[1] (ich gehe mal davon aus, das in mysql_query() irgendwas mit SELECT... drinsteht)

echo"
      <table width= "100%">

du tust dir einfacher, wenn du den php-Bereich vorher schließst, oder den Heredoc Syntax[2] verwendest.

<td width="5%"><input type="Checkbox" name="chckbx" value="".$i.""></td>

was bringt es wenn du einen willkürliche Zahl als Wert der checkbox mitlieferst? so ist es nicht eindeutig, welcher Datensatz gelöscht werden soll. am sinnvollsten wäre es, wenn du zum erkennen des Datensatzes eine eindeutige id nimmst (wenn es die Spalte noch nicht gibt, kannst du sie ja noch anlegen).

<td width="20%"><nobr>".$zeile['autor']."</nobr></td>

<nobr> gibt es im html-Standard nicht. (du brauchst css - white-space:nowrap;[3] sollte helfen)

$chckbx=$_POST['chckbx'];

du bekommst nur eine Nummer, geliefert, auch wenn du mehrere Checkboxen "ankreuzt" - hierzu dürfte dich [4] interressieren.

if($chckbx==true){

mhh... wohl eher if(!empty($chckbx))

mysql_query("DELETE * FROM ".$table."WHERE datum=".$zeile['datum']."AND autor=".$zeile['autor']."AND inhalt=".$zeile['inhalt']."LIMIT 1");

mhh... wo kommt $zeile['datum'] usw. her?
Außerdem solltest du dir den Query ausgeben lassen, um zu sehen, was da eigentlich drinsteht (da fehlen einige Leer- und Anführungszeichen)

Grüße aus Nürnberg
Tobias

[1] http://www.php.net/manual/de/function.mysql-num-rows.php
[2] http://www.php.net/manual/de/language.types.string.php#language.types.string.syntax.heredoc
[3] http://selfhtml.teamone.de/css/eigenschaften/ausrichtung.htm#white_space
[4] http://aktuell.de.selfhtml.org/tippstricks/php/checkboxen/index.htm

--
Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|