sql >> Databáze >  >> RDS >> Mysql

PHP DELETE ihned po výběru

Přepisujete svůj $result proměnná s vaším druhým příkazem:

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

Změňte název na něco jiného. Nemá to nic společného s call-by-reference nebo tak.

Ve skutečnosti je vaše první přiřazení hodnot jako $row zbytečné je již pole:

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

Mohli byste udělat:

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

Pak ani nemusíte měnit název proměnné pro druhý příkaz. Zvažte však použití smysluplných názvů proměnných.



  1. Výběr na základě cesty v mysql

  2. Co může plán dotazů prozradit?

  3. Nelze získat více entit tabulky prostřednictvím uložené procedury pomocí režimu spánku

  4. PIVOT / UNPIVOT v SQL Server 2008