ऐसा इसलिए है क्योंकि mysql_query
फ़ंक्शन केवल एक प्रश्न को स्वीकार करेगा, लेकिन आपने इसे अर्धविराम से अलग करके दो दिए हैं। या तो कोशिश करें:
-
प्रत्येक क्वेरी को अलग से चलाना (पता नहीं यह काम करेगा या नहीं):
mysql_query( "SET @N=-1" ); mysql_query( "SELECT `id`, (@N:[email protected]+1) AS `mycount` FROM `mydb`" );
-
mysqli का उपयोग करना multi_query के साथ फ़ंक्शन (या एक PDO समतुल्य यदि कोई हो तो)।
अपने अद्यतन प्रश्न का उत्तर देने के लिए:multi_query के लिए PHP मैन्युअल पृष्ठ देखें। मुझे लगता है कि आप mysqli::next_result
. का उपयोग करना चाहेंगे . कुछ इस तरह, प्रक्रियात्मक शैली का उपयोग करते हुए:
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);
}