Tobias Kloth: Fehler in DELETE

Beitrag lesen

Hallo Stephan,

$res = mysql_db_query("dbname",

die Funktion ist veraltet, verwende mysql_select_db() und mysql_query() (->[1])

"DELETE * FROM users WHERE user = $_POST['user']");

Spaltennamen kann man bei DELETE nicht angeben (löschen kann man nur einen ganzen Datensatz auf einmal) - lass das Sternchen weg (das man sowieso nicht verwenden sollte [2]), dann sollte es funktionieren (den Syntax von DELETE findest du unter [3]) - außerdem solltest du um $_POST['user'] noch Anführungszeichen machen und den Wert _unbedingt_ noch mit mysql_escape_string() (->[1]) behandeln.

$num = mysql_num_rows($res);

die Funktion funktioniert nur bei SELECT; bei INSERT, UPDATE und DELETE brauchst du mysql_affected_rows() (->[1])

Grüße aus Nürnberg
Tobias

[1] http://de.php.net/ref.mysql
[2] http://www.dclp-faq.de/q/q-sql-select.html
[3] http://www.mysql.de/doc/de/DELETE.html

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