Itu karena mysql_query
function hanya akan menerima satu kueri, tetapi Anda telah memberikannya dua, dipisahkan oleh titik koma. Coba salah satu:
-
Menjalankan setiap kueri secara terpisah (tidak tahu apakah ini akan berhasil):
mysql_query( "SET @N=-1" ); mysql_query( "SELECT `id`, (@N:[email protected]+1) AS `mycount` FROM `mydb`" );
-
Menggunakan mysqli dengan multi_query fungsi (atau PDO setara jika ada).
Untuk menjawab pertanyaan Anda yang diperbarui:periksa halaman manual PHP untuk multi_query. Saya pikir Anda ingin menggunakan mysqli::next_result
. Kira-kira seperti ini, menggunakan gaya prosedural:
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);
}