Rumah >pembangunan bahagian belakang >tutorial php >Mengapa MySQL Fetch Array Hanya Mendapatkan Baris Pertama Hasil Pertanyaan?
MySQL Fetch Array Mendapatkan Kembali Baris Terhad
Kod yang disediakan bertujuan untuk mendapatkan semula berbilang baris daripada pangkalan data menggunakan sambungan MySQL dalam PHP. Walau bagaimanapun, ia menghadapi masalah di mana hanya baris pertama boleh diakses. Pertanyaan mendapatkan semula artis bermula dengan 'a', 'b' atau 'c'; namun, percubaan berikutnya untuk mengakses baris di luar keputusan pertama dalam ralat ofset yang tidak ditentukan.
Punca isu ini terletak pada kefungsian fungsi mysql_fetch_array. Ia mengembalikan satu baris daripada set hasil sebagai tatasusunan bersekutu dan diindeks. Untuk mengakses berbilang baris, fungsi mesti dipanggil berulang kali sehingga semua baris telah diproses.
Coretan kod yang diubah suai berikut menunjukkan cara untuk mengulang semua baris dalam set hasil:
<code class="php">$array = mysql_query("SELECT artist FROM directory WHERE artist LIKE 'a%' OR artist LIKE 'b%' OR artist LIKE 'c%'"); while ($array_result = mysql_fetch_array($array)) { echo $array_result[0] . "\n"; // Additional processing for each row can be performed here. }</code>
Dalam kod ini, gelung while terus memanggil mysql_fetch_array sehingga tiada lagi baris untuk diambil daripada set hasil. Ini membolehkan kod memproses setiap baris mengikut keperluan.
Atas ialah kandungan terperinci Mengapa MySQL Fetch Array Hanya Mendapatkan Baris Pertama Hasil Pertanyaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!