MySQLデータベースからいくつかのデータを選択するPHPサーバースクリプトがあります。
mysql_queryとmysql_fetch_assocの結果を自分のローカル変数に保存したらすぐに、選択した行を削除したいと思います。
このアプローチの問題は、PHPが値渡しではなくローカル変数への参照渡しを行っているように見え、deleteコマンドの後でローカル変数が未定義になることです。
これを回避する方法はありますか?これが私のコードです:
$query="SELECT id, peerID, name FROM names WHERE peer = $userID AND docID = '$docID' AND seqNo = $nid";
$result = mysql_query($query);
if (!$result)
self::logError("FAIL:1 getUsersNamesUpdate() query: ".$query."\n");
if (mysql_num_rows($result) == 0)
return array();
$row = mysql_fetch_assoc($result);
$result = array();
$result["id"] = $row["id"];
$result["peerID"] = $row["peerID"];
$result["name"] = $row["name"];
$query="DELETE FROM names WHERE id = $result[id];";
$result = mysql_query($query);
if (!$result)
self::logError("FAIL:2 getUsersNamesUpdate() query: ".$query."\n");
return $result;