$result
を上書きしています 2番目のステートメントの変数:
$query="DELETE FROM names WHERE id = $result[id];";
$result = mysql_query($query); // result does not contain the array anymore
名前を別の名前に変更します。参照による呼び出しなどとは何の関係もありません。
実際には、$row
のように、最初に値を割り当てる必要はありません。 すでに配列です:
$row = mysql_fetch_assoc($result);
$result = array();
$result["id"] = $row["id"];
$result["peerID"] = $row["peerID"];
$result["name"] = $row["name"];
あなたはただすることができます:
$row = mysql_fetch_assoc($result);
// at the end
return $row;
そうすれば、2番目のステートメントの変数名を変更する必要さえありません。ただし、意味のある変数名を使用することを検討してください。