Hướng dẫn php mysql error not showing - lỗi php mysql không hiển thị

Tôi đã tạo một tập lệnh trên nền tảng Windows kết nối với cơ sở dữ liệu MySQL và trả về kết quả của bảng. Một kịch bản rất cơ bản mà tôi đã viết để kiểm tra kết nối của tôi hoạt động. Kịch bản hoạt động tốt trên máy Windows của tôi nhưng không phải trên máy Mac mới của tôi. Trên Mac, nó đơn giản là không hiển thị bất kỳ bản ghi nào.

Tôi biết rằng kết nối cơ sở dữ liệu đã được thiết lập vì không có lỗi nhưng tôi không thể thấy lý do tại sao bộ kết quả không được hiển thị trên màn hình, như tôi đã nói nó hoạt động tốt trên máy Windows của tôi.

Mac có MySQL [với dữ liệu] và Apache chạy cho PHP.

Xin ai đó có thể giúp đỡ vì tôi không biết phải làm gì bây giờ?

Kịch bản bên dưới:

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'root';

$conn = mysql_connect[$dbhost, $dbuser, $dbpass] or die ['Error connecting to mysql'];

$dbname = 'test';

mysql_select_db[$dbname];

mysql_select_db["test", $conn];

$result = mysql_query["SELECT * FROM new_table"];

while[$row = mysql_fetch_array[$result]]
  {
  echo $row['test1'] . " " . $row['test2'] . " " . $row['test3'];
  echo "
"; } mysql_close[$con];

Đã hỏi ngày 20 tháng 3 năm 2012 lúc 17:04Mar 20, 2012 at 17:04

NullpoiNullPoiиteя

55.5K22 Huy hiệu vàng124 Huy hiệu bạc141 Huy hiệu đồng22 gold badges124 silver badges141 bronze badges

5

Có nhiều điều bạn có thể làm để gỡ lỗi điều này.

  • Hiển thị tất cả các lỗi PHP.

    ini_set['display_errors','On'];
    ini_set['error_reporting',E_ALL];
    
  • Bắt tất cả các lỗi MySQL có thể, không chỉ các lỗi liên quan đến việc bạn đã kết nối thành công.

    mysql_select_db["test", $conn] or die[mysql_error[]];
    mysql_select_db[$dbname] or die[mysql_error[]];
    $result = mysql_query["SELECT * FROM new_table"] or die[mysql_error[]];
    

Lưu ý bên cạnh: Không có lý do gì để chọn cơ sở dữ liệu nào bạn muốn sử dụng hai lần.: There's no reason to select which database you wish to use twice.

Đã trả lời ngày 20 tháng 3 năm 2012 lúc 17:08Mar 20, 2012 at 17:08

Rất khó để xem những gì sai ... vì vậy hãy thêm một số kiểm tra lỗi cơ bản, như thay đổi điều này

$result = mysql_query["SELECT * FROM new_table"];

đến

$result = mysql_query["SELECT * FROM new_table"] or die[mysql_error[]];

Điều này sẽ cho bạn thấy lỗi bạn đang nhận được từ truy vấn của bạn [nếu có] .. bạn sẽ thấy trong tài liệu cho

ini_set['display_errors','On'];
ini_set['error_reporting',E_ALL];
0 rằng nó sẽ trả về
ini_set['display_errors','On'];
ini_set['error_reporting',E_ALL];
1 nếu có lỗi

Cũng lưu ý rằng bạn có một lỗi trong tên biến để đóng kết nối MySQL:

mysql_close[$con];

nên là

mysql_close[$conn];

Đã trả lời ngày 20 tháng 3 năm 2012 lúc 17:06Mar 20, 2012 at 17:06

MansemanseManse

37.5K10 Huy hiệu vàng82 Huy hiệu bạc108 Huy hiệu đồng10 gold badges82 silver badges108 bronze badges

Kiểm tra xem liệu truy vấn

ini_set['display_errors','On'];
ini_set['error_reporting',E_ALL];
2 có thành công hay không trước khi tìm nạp các hàng.

Bài Viết Liên Quan

Chủ Đề