Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Lỗi khi kết nối với Cơ sở dữ liệu trên máy chủ được lưu trữ

Chú thích bên lề: Giả sử bằng chứng xác thực là chính xác, do máy chủ web của bạn cấp cho bạn.

Có một số vấn đề với mã này (lấy từ nhận xét bạn để lại).

Thứ nhất, ba trong số các khai báo của bạn không được trích dẫn và đang được coi là hằng số.

Báo cáo lỗi PHP sẽ đưa ra thông báo về các hằng số không xác định.

Chúng được coi là hằng số:

 $username=b31_16461744; 
 $pass=test123; 
 $dbname=b31_16461744_user; 

Bạn cũng đang tham chiếu sai biến cho tên người dùng là $user phải là $username . Báo cáo lỗi sẽ báo hiệu một thông báo về biến không xác định.

Sau đó, bạn đang trộn mysql_ với mysqli_ cú pháp. Các API MySQL khác nhau đó KHÔNG trộn lẫn với nhau. Bạn phải sử dụng cùng một mã trong suốt mã của mình.

Ghi chú bên lề:Câu hỏi khác mà bạn đã đăng Quyền truy cập bị từ chối đối với người dùng 'test123'@'192.168.0.38' (sử dụng mật khẩu:KHÔNG) bạn đang sử dụng sql306.byethost31.com cho người dẫn chương trình. Hãy chắc chắn rằng điều đó là chính xác. Tôi không biết máy chủ lưu trữ muốn bạn sử dụng cài đặt nào.

<?php 
     $localhost="localhost"; 
     $username="b31_16461744"; 
     $pass="test123"; 
     $dbname="b31_16461744_user"; 
     $a= mysqli_connect($localhost, $username, $pass); 
     mysqli_select_db($a, $dbname); 
     if($a)
     { 
       echo "connected..";
     } 
     else 
     { 
       echo "not...!!"; 
     }
?>

hoặc chỉ sử dụng tất cả bốn tham số:

<?php 
     $localhost="localhost"; 
     $username="b31_16461744"; 
     $pass="test123"; 
     $dbname="b31_16461744_user"; 
     $a= mysqli_connect($localhost, $username, $pass, $dbname); 

     if($a)
     { 
       echo "connected..";
     } 
     else 
     { 
       echo "not...!!" . mysqli_error($a); 
     }
?>

Tuy nhiên, else của bạn với tiếng vang không giúp bạn. Sử dụng mysqli_error() để nhận được lỗi thực sự.

Tức là:or die("Error " . mysqli_error($a));

Ví dụ từ sách hướng dẫn

$link = mysqli_connect("myhost","myuser","mypassw","mydb")
        or die("Error " . mysqli_error($link)); 

Tài liệu tham khảo:

Thêm báo cáo lỗi lên đầu (các) tệp của bạn, điều này sẽ giúp tìm ra lỗi.

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code

Chú thích bên lề: Việc hiển thị lỗi chỉ nên được thực hiện trong giai đoạn và không bao giờ được thực hiện



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. dữ liệu mùa xuân JPA - mysql - findById () trống trừ khi findAll () được gọi trước đó

  2. Phát hiện người gửi thư rác bằng MySQL

  3. Cách kiểm tra kết quả SQL trống trong ASP

  4. Cập nhật nhiều hàng bằng một mảng

  5. CodeIgniter Active Record - Nhóm câu lệnh OR