mysql_query()
mengirimkan kueri unik (beberapa kueri tidak didukung) .Itu perilaku default. Namun ada bypass untuk ini.
Namun kode hasil dari kueri pertama saja akan diberikan sebagai output dari mysql_query()
jika Anda melakukan ini.
Anda hanya perlu melewati flag 65536 sebagai parameter ke-5 mysql_connect. flag didefinisikan di flag Klien MySQL .
#define CLIENT_MULTI_STATEMENTS 65536 /* Enable/disable multi-stmt support */
#define CLIENT_MULTI_RESULTS 131072 /* Enable/disable multi-results */
Jadi edit mysql_connect()
. Anda kode yang cocok dengan ini:
mysql_connect($host, $username, $password, false, 65536);
Peringatan:
- Anda akan mendapatkan hasil dari
mysql_query($query)
untuk kueri pertama hanya dalam$query
yang diberikan . Anda dapat mencoba menggabungkan131072
dengan65536
untuk mendapatkan banyak hasil. - Ini tidak akan bekerja pada PHP <4.3.0
- Ini tidak akan berfungsi jika
sql.safe_mode
ditetapkan sebagai 1 di php.ini
Alternatif lain adalah menggunakan mysqli
bukannya mysql
Perpustakaan. Mendukung $mysqli->multi_query()
dan memberikan output dalam larik untuk setiap kueri.