mysqli_select_db
, khi sử dụng API thủ tục yêu cầu bạn chuyển một kết nối thực tế làm tham số đầu tiên, như được hiển thị trên trang người
. Kết nối hay liên kết này là mysqli_connect
trả về, vì vậy bạn không nên bỏ qua những gì mysqli_connect
trả lại
, nhưng đúng hơn là gán nó cho một biến.
Chữ ký của hàm cho bạn biết rõ ràng tất cả điều này, vì vậy, xin vui lòng, RTM . Dưới đây là một số hoạt động sao chép đã dán:
\/=============================|
bool mysqli_select_db ( mysqli $link , string $dbname ) ||
//returns bool argument 1 argument 2 ||
mysqli mysqli_connect ([...]) ||
//returns type mysqli accepts vast number of arguments ||
// ||
|======== useful here =======================|
Điều này có nghĩa là bạn sẽ phải viết:
$db = mysqli_connect('localhost', 'root', '');
mysqli_select_db($db, 'video_system');
Giống như chương trình hướng dẫn &&chữ ký, mysqli_select_db
này trả về một bool. true
có nghĩa là DB đã được chọn thành công, false
chỉ ra sự thất bại. Tốt nhất bạn nên tập thói quen kiểm tra các giá trị trả về của hàm . Không cần biết nó có vẻ tầm thường đến mức nào. Vì vậy:
$db = mysqli_connect('localhost', 'root', '');
if (!mysqli_select_db($db, 'video_system'))
{//if return value is false, echo error message and exit script
echo 'Failed to select db "video_system": ', mysqli_error($db), PHP_EOL;
$db = null;//optional, but generally safer
exit(1);//stop execution
}
//db selected, get to work here
Nhưng bạn có thể dễ dàng bỏ qua lệnh gọi hàm thứ hai này, bằng cách chuyển tên DB đã chọn cho mysqli_connect
chức năng từ bên ngoài:
$db = mysqli_connect('127.0.0.1', 'root', '', 'video_system');
Điều này giúp bạn tiết kiệm chi phí của một lệnh gọi chức năng bổ sung, giúp cải thiện một chút hiệu suất. Tôi cũng đã thay đổi localhost
chuỗi thành địa chỉ IP 127.0.0.1, điều này cũng có thể hữu ích, bởi vì sử dụng IP có nghĩa là chuỗi không cần được phân giải thành địa chỉ IP tương ứng.
Nói chung, tôi nghĩ tốt nhất là bạn nên dành chút thời gian đọc tài liệu