2012-01-26 31 views
14

Tôi muốn kiểm tra xem trang web có thể kết nối với mySQL không. Nếu không, tôi muốn hiển thị một thông báo lỗi rằng người dùng nên cố gắng truy cập vào trang một lần nữa trong một vài phút ...Kiểm tra kết nối cơ sở dữ liệu, nếu không hiển thị thông báo

tôi thực sự không biết làm thế nào để làm điều này;)

Bất kỳ trợ giúp sẽ được đánh giá cao!

string mysql_error ([ resource $link_identifier ]) 

Nhưng làm cách nào để sử dụng?

Điều này chỉ cho tôi lỗi, nhưng tôi muốn thông báo hiển thị với bất kỳ lỗi nào.

Cảm ơn

+0

http://php.net/manual/de /function.mysql-error.php – DerVO

+0

cảm ơn cho thông tin nhưng tôi không biết làm thế nào tôi có thể sử dụng này (nó chỉ mang lại cho tôi lỗi) - Chào từ Deutschland – Chriswede

Trả lời

37

Hãy thử điều này:

<?php 
$servername = "localhost"; 
$database = "database"; 
$username = "user"; 
$password = "password"; 

// Create connection 
$conn = new mysqli($servername, $username, $password); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 
    echo "Connected successfully"; 
?> 
+0

Tôi cũng có thể đặt mã php bên trong "{ // lỗi địa điểm tại đây }" vì điều này cho tôi một lỗi – Chriswede

+0

Xem các chỉnh sửa mới của tôi. – psyklopz

+0

vì vậy tôi có thể thay thế 'mã: echo' Vui lòng thử lại sau. " 'với' mã: Chriswede

6

rất cơ bản:

<?php 
$username = 'user'; 
$password = 'password'; 
$server = 'localhost'; 
// Opens a connection to a MySQL server 
$connection = mysql_connect ($server, $username, $password) or die('try again in some minutes, please'); 
//if you want to suppress the error message, substitute the connection line for: 
//$connection = @mysql_connect($server, $username, $password) or die('try again in some minutes, please'); 
?> 

kết quả:

Cảnh báo: mysql_connect() [function.mysql kết nối]: Truy cập bị từ chối cho người dùng sử dụng '@ 'localhost'(sử dụng mật khẩu: CÓ) trong /home/user/public_html/zdel1.php trên dòng 6 thử lại sau vài phút, vui lòng

theo đề xuất của Wrikken bên dưới, hãy kiểm tra o ut một lỗi xử lý hoàn chỉnh cho nhiều giải pháp phức tạp, hiệu quả và thanh lịch: http://www.php.net/manual/en/function.set-error-handler.php

+2

Xin vui lòng, đừng chết ..... Echo một thông báo lỗi, nhưng sử dụng 'trigger_error ('một số thông báo lỗi nội bộ', E_USER_ERROR);', theo cách đó, e rror xuất hiện trong nhật ký của bạn, vì bạn không chắc là người sẽ tự mình bắt gặp nó trên một trang web bận rộn. Tất nhiên, điều này cũng giả định 'log_errors' được bật, và' display_errors' bị tắt, nó sẽ là mặc định cho bất kỳ môi trường sản xuất nào. – Wrikken

+0

TUYỆT ĐỐI TUYỆT ĐỐI! :> –

0

Vui lòng kiểm tra này:

$servername='localhost'; 
$username='root'; 
$password=''; 
$databasename='MyDb'; 

$connection = mysqli_connect($servername,$username,$password); 

if (!$connection) { 
die("Connection failed: " . $conn->connect_error); 
} 

/*mysqli_query($connection, "DROP DATABASE if exists MyDb;"); 

if(!mysqli_query($connection, "CREATE DATABASE MyDb;")){ 
echo "Error creating database: " . $connection->error; 
} 

mysqli_query($connection, "use MyDb;"); 
mysqli_query($connection, "DROP TABLE if exists employee;"); 

$table="CREATE TABLE employee (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
firstname VARCHAR(30) NOT NULL, 
lastname VARCHAR(30) NOT NULL, 
email VARCHAR(50), 
reg_date TIMESTAMP 
)"; 
$value="INSERT INTO employee (firstname,lastname,email) VALUES ('john', 'steve', '[email protected]')"; 
if(!mysqli_query($connection, $table)){echo "Error creating table: " . $connection->error;} 
if(!mysqli_query($connection, $value)){echo "Error inserting values: " . $connection->error;}*/ 
Các vấn đề liên quan