Mengekstrak Data daripada MySQL Query: Mengatasi Isu "Resource id #"
Dalam PHP, apabila melaksanakan pertanyaan MySQL menggunakan mysql_query() fungsi, hasilnya disimpan sebagai pengecam sumber. Untuk mengakses data sebenar daripada pertanyaan, fungsi ambil seperti mysql_fetch_assoc() mesti digunakan.
Kod Asal dan Isu:
<code class="php">$datos1 = mysql_query("SELECT TIMEDIFF(NOW(), '" . $row['fecha'] . "');"); echo($datos1);</code>
Walau bagaimanapun, kod ini tidak memberikan hasil yang diharapkan. Sebaliknya, ia mencetak "id Sumber #6", yang menunjukkan bahawa hasil pertanyaan ialah sumber dan bukannya data sebenar.
Penyelesaian: Menggunakan Fungsi Ambil:
Untuk mengekstrak data daripada pertanyaan, gunakan fungsi ambil seperti mysql_fetch_assoc() seperti berikut:
<code class="php">$result = mysql_query(sprintf("SELECT TIMEDIFF(NOW(), '%s') as time_delta", $row['fecha'])); if ($result) { $data = mysql_fetch_assoc($result); echo $data['time_delta']; }</code>
Nota:
Sementara fungsi mysql masih disokong dalam PHP, penggunaannya tidak digalakkan. Sebaliknya, pertimbangkan untuk menggunakan PDO dengan PDO_MYSQL atau MySQLi untuk prestasi, keselamatan dan keserasian yang lebih baik dengan versi PHP akan datang.
Atas ialah kandungan terperinci Bagaimanakah anda mengekstrak data daripada hasil pertanyaan MySQL dalam PHP dan mengelakkan isu \'Resource id #\'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!