tôi đang làm việc với php và mysql và đột nhiên tôi nhận đượcoffset 0 là không hợp lệ cho MySQL kết quả chỉ số 64 (hoặc các dữ liệu truy vấn là không có bộ đệm)
mysql_data_seek() [function.mysql-dữ liệu tìm kiếm]: Offset 0 không hợp lệ đối với chỉ mục kết quả MySQL 64 (hoặc dữ liệu truy vấn không bị chặn)
Điều này có nghĩa là gì.
Tôi không biết bắt đầu gỡ lỗi cái này ở đâu.
Lớp này được thông qua một nguồn lực mysql vào nó của constructor
class dbResult {
private $result;
private $num_rows;
function __construct($result) {
$this->result = $result;
}
function result($type = 'object') {
@mysql_data_seek($this->result, 0);
if ($type == 'array')
return mysql_fetch_assoc($this->result);
if ($type == 'object') {
if ($this->num_rows() == 1) {
$data = new stdClass();
foreach (mysql_fetch_assoc($this->result) as $k => $v)
$data->$k = $v;
return $data;
}
if ($this->num_rows() > 1) {
$data = array();
while ($result = mysql_fetch_assoc($this->result)) {
$row = new stdClass();
foreach ($result as $k => $v)
$row->$k = $v;
$data[] = $row;
}
return $data;
}
return false;
}
}
function num_rows() {
return mysql_num_rows($this->result);
}
function num_fields() {
return mysql_num_fields($this->result);
}
}
Cách hiển thị một số mã. –
xin lỗi, Đã thêm mã nhưng nhấn nút backspace bên ngoài hộp văn bản, thêm mã một lần nữa. – Hailwood
Trước khi gọi mysql_data_seek luôn kiểm tra mysql_num_rows (kết quả)> = 1. Có thể là tập hợp kết quả trống rỗng –