Mysql
 sql >> Datenbank >  >> RDS >> Mysql

PHP DELETE unmittelbar nach der Auswahl

Sie überschreiben Ihr $result Variable mit Ihrer zweiten Anweisung:

$query="DELETE FROM names WHERE id = $result[id];";
$result = mysql_query($query); // result does not contain the array anymore

Ändern Sie den Namen in etwas anderes. Das hat nichts mit Call-by-Reference oder ähnlichem zu tun.

Eigentlich ist Ihre erste Zuweisung der Werte als $row unnötig ist bereits ein Array:

$row = mysql_fetch_assoc($result);
$result = array();
$result["id"] = $row["id"];
$result["peerID"] = $row["peerID"];
$result["name"] = $row["name"];

Sie könnten einfach Folgendes tun:

$row = mysql_fetch_assoc($result);
// at the end
return $row;

Dann müssen Sie nicht einmal Ihren Variablennamen für die zweite Anweisung ändern. Denken Sie jedoch daran, aussagekräftige Variablennamen zu verwenden.