Du skriver över ditt $result
variabel med ditt andra påstående:
$query="DELETE FROM names WHERE id = $result[id];";
$result = mysql_query($query); // result does not contain the array anymore
Byt namn till något annat. Det har ingenting att göra med call-by-referens eller så.
Egentligen är din första tilldelning av värdena onödig som $row
är redan en array:
$row = mysql_fetch_assoc($result);
$result = array();
$result["id"] = $row["id"];
$result["peerID"] = $row["peerID"];
$result["name"] = $row["name"];
Du kan bara göra:
$row = mysql_fetch_assoc($result);
// at the end
return $row;
Då behöver du inte ens ändra ditt variabelnamn för den andra satsen. Men överväg att använda meningsfulla variabelnamn.