Det er fordi mysql_query
funktion vil kun acceptere én forespørgsel, men du har givet den to, adskilt af et semikolon. Prøv enten:
-
Kører hver forespørgsel separat (ved ikke om dette vil virke):
mysql_query( "SET @N=-1" ); mysql_query( "SELECT `id`, (@N:[email protected]+1) AS `mycount` FROM `mydb`" );
-
Brug af mysqli med multi_query funktion (eller en PDO tilsvarende, hvis der er en).
For at besvare dit opdaterede spørgsmål:tjek PHP-manualsiden for multi_query. Jeg tror, du vil bruge mysqli::next_result
. Noget som dette, ved hjælp af procedurestil:
mysqli_multi_query($link, $query);
mysqli_next_result($link);
if ($result = mysqli_store_result($link)) {
while ($row = mysqli_fetch_row($result)) {
printf("%s\n", $row[0]);
}
mysqli_free_result($result);
}