Devdit
 

Fatal error: Uncaught TypeError: mysqli_query(): Argument #1 ($mysql) must be of type mysqli null given in PHP คือ แก้ไขยังไง

5.3K

เขียนโปรแกรมภาษา PHP เชื่อมต่อฐานข้อมูล MySQL แบบด้านบน พอรันแล้วขึ้นข้อผิดพลาดว่า Fatal error: Uncaught TypeError: mysqli_query(): Argument #1 ($mysql) must be of type mysqli, null given in ส่งผลทำให้โปรแกรมไม่สามารถทำงานได้ โค้ดการเชื่อมต่อฐานข้อมูลเป็นแบบนี้

mysqli_connect("localhost", "root", "XXXXX", "database");
mysqli_query( $conn, "SET NAMES UTF8" );

 

วิธีแก้ไข

ปัญหาเกิดจากคำสั่ง mysqli_query ต้องรับค่าพารามิเตอร์ตัวแรกเป็นตัวแปรที่เก็บสถานะการเชื่อมต่อฐานข้อมูล ให้ทำการแก้ไขโปรแกรมดังนี้

$conn = mysqli_connect("localhost", "root", "XXXXX", "database");
mysqli_query( $conn, "SET NAMES UTF8" );

เพิ่มตัวแปร $conn รับค่าการเชื่อมต่อฐานข้อมูลของคำสั่ง mysqli_connect จากนั้นนำตัวแปรดังกล่าวมาเป็นค่าพารามิเตอร์ตัวแรกของคำสั่ง mysqli_query

แก้ไข 3 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ