Hướng dẫn php mssql connection test script - tập lệnh kiểm tra kết nối php mssql

Tập lệnh cho thử nghiệm kết nối DB DB PHP nhanh chóng.

Tệp này chứa văn bản unicode hai chiều có thể được giải thích hoặc biên dịch khác với những gì xuất hiện dưới đây. Để xem xét, hãy mở tệp trong một trình soạn thảo cho thấy các ký tự Unicode ẩn. Tìm hiểu thêm về các ký tự unicode hai chiều

# Điền vào vars của chúng tôi và chạy trên CLI
# $ PHP -f db-kết nối-test.php
$ dbname = 'tên';dbname = 'name';
$ dbuser = 'người dùng';dbuser = 'user';
$ dbpass = 'pass';dbpass = 'pass';
$ dbhost = 'máy chủ';dbhost = 'host';
$ Connect = mysql_connect ($ dbhost, $ dbuser, $ dbpass) hoặc die ("không thể kết nối với '$ dbhost'");connect = mysql_connect($dbhost, $dbuser, $dbpass) or die("Unable to Connect to '$dbhost'");
mysql_select_db ($ dbname) hoặc chết ("không thể mở db '$ dbname'");$dbname) or die("Could not open the db '$dbname'");
$ test_query = "Hiển thị bảng từ $ dbname";test_query = "SHOW TABLES FROM $dbname";
$ result = mysql_query ($ test_query);result = mysql_query($test_query);
$ tblcnt = 0;tblCnt = 0;
while ($ tbl = mysql_fetch_array ($ result)) {($tbl = mysql_fetch_array($result)) {
$ tblcnt ++;tblCnt++;
#echo $ tbl [0]. "\ n";
}
if (! $ tblcnt) { (!$tblCnt) {
echo "không có bảng \ n"; "There are no tables
\n";
} khác {else {
echo "có $ tblcnt bảng \ n"; "There are $tblCnt tables
\n";
}


Php 5 trở lên có thể làm việc với cơ sở dữ liệu MySQL bằng cách sử dụng:

  • Mở rộng mysqli ("i" là viết tắt của cải tiến) (the "i" stands for improved)
  • PDO (Đối tượng dữ liệu PHP)

Các phiên bản trước của PHP đã sử dụng tiện ích mở rộng MySQL. Tuy nhiên, phần mở rộng này đã bị phản đối trong năm 2012.


Tôi nên sử dụng mysqli hay pdo?

Nếu bạn cần một câu trả lời ngắn, đó sẽ là "bất cứ điều gì bạn thích".

Cả MySQLI và PDO đều có lợi thế của họ:

PDO sẽ hoạt động trên 12 hệ thống cơ sở dữ liệu khác nhau, trong khi MySQLI sẽ chỉ hoạt động với cơ sở dữ liệu MySQL.

Vì vậy, nếu bạn phải chuyển đổi dự án của mình để sử dụng cơ sở dữ liệu khác, PDO sẽ làm cho quá trình trở nên dễ dàng. Bạn chỉ phải thay đổi chuỗi kết nối và một vài truy vấn. Với MySQLI, bạn sẽ cần viết lại toàn bộ mã - các truy vấn bao gồm.

Cả hai đều theo định hướng đối tượng, nhưng MySQLI cũng cung cấp API thủ tục.

Cả hai hỗ trợ các tuyên bố đã chuẩn bị. Các tuyên bố được chuẩn bị bảo vệ khỏi SQL Injection và rất quan trọng đối với bảo mật ứng dụng web.


Ví dụ MySQL trong cả cú pháp MySQLI và PDO

Trong đó, và trong các chương sau, chúng tôi đã chứng minh ba cách làm việc với PHP và MySQL:

  • Mysqli (hướng đối tượng)
  • Mysqli (thủ tục)
  • PDO

Cài đặt MySQLI

Đối với Linux và Windows: Phần mở rộng MySQLI được tự động cài đặt trong hầu hết các trường hợp, khi gói HYSQL PHP5 được cài đặt.

Để biết chi tiết cài đặt, hãy truy cập: http://php.net/manual/en/mysqli.installation.php


Cài đặt PDO

Để biết chi tiết cài đặt, hãy truy cập: http://php.net/manual/en/pdo.installation.php



Mở kết nối với MySQL

Trước khi chúng tôi có thể truy cập dữ liệu trong cơ sở dữ liệu MySQL, chúng tôi cần có thể kết nối với máy chủ:

Ví dụ (hướng đối tượng mysqli) theo định hướng đối tượng)

$servername = "localhost";
$username = "username";
$password = "password";

// Tạo kết nối $ Conn = new mysqli ($ servername, $ username, $ password);
$conn = new mysqli($servername, $username, $password);

// kiểm tra kết nối nếu ($ Conn-> Connect_error) & nbsp; {& nbsp; & nbsp; die ("kết nối không thành công:". $ Conn-> Connect_error);} echo "kết nối thành công"; ?>
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>


Lưu ý trên ví dụ hướng đối tượng ở trên:

$ Connect_error đã bị hỏng cho đến khi Php 5.2.9 và 5.3.0. Nếu bạn cần đảm bảo khả năng tương thích với các phiên bản PHP trước 5.2.9 và 5.3.0, hãy sử dụng mã sau thay thế:

// Kiểm tra Connectionif (mysqli_connect_error ()) {& nbsp; & nbsp; die ("Kết nối cơ sở dữ liệu không thành công:".
if (mysqli_connect_error()) {
  die("Database connection failed: " . mysqli_connect_error());
}

Ví dụ (thủ tục MySQLI)

$servername = "localhost";
$username = "username";
$password = "password";

// Tạo kết nối $ Conn = new mysqli ($ servername, $ username, $ password);
$conn = mysqli_connect($servername, $username, $password);

// kiểm tra kết nối nếu ($ Conn-> Connect_error) & nbsp; {& nbsp; & nbsp; die ("kết nối không thành công:". $ Conn-> Connect_error);} echo "kết nối thành công"; ?>
if (!$conn) {
  die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>


Lưu ý trên ví dụ hướng đối tượng ở trên:

$servername = "localhost";
$username = "username";
$password = "password";

// Tạo kết nối $ Conn = new mysqli ($ servername, $ username, $ password);
  $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
  // set the PDO error mode to exception
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  echo "Connected successfully";
} catch(PDOException $e) {
  echo "Connection failed: " . $e->getMessage();
}
?>


// kiểm tra kết nối nếu ($ Conn-> Connect_error) & nbsp; {& nbsp; & nbsp; die ("kết nối không thành công:". $ Conn-> Connect_error);} echo "kết nối thành công"; ?> In the PDO example above we have also specified a database (myDB). PDO require a valid database to connect to. If no database is specified, an exception is thrown.

Lưu ý trên ví dụ hướng đối tượng ở trên: A great benefit of PDO is that it has an exception class to handle any problems that may occur in our database queries. If an exception is thrown within the try{ } block, the script stops executing and flows directly to the first catch(){ } block.


Đóng kết nối

Kết nối sẽ được đóng tự động khi tập lệnh kết thúc. Để đóng kết nối trước, sử dụng các mục sau:

Mysqli hướng đối tượng:

$ Conn-> đóng ();


Thủ tục MySQLI:

mysqli_close ($ Conn);




Làm thế nào chúng tôi có thể kết nối với cơ sở dữ liệu SQL của tôi từ tập lệnh PHP?

Tạo nên cơ sở dữ liệu..
Tạo một thư mục trong htdocs ..
Tạo tệp kết nối cơ sở dữ liệu trong PHP ..
Tạo tệp PHP mới để kiểm tra kết nối cơ sở dữ liệu của bạn ..
Chạy nó ..

Làm cách nào để kiểm tra kết nối SQL của tôi?

Để kiểm tra kết nối với cơ sở dữ liệu của bạn, hãy chạy cổng máy chủ telnet trên máy chủ Looker của bạn. Ví dụ: nếu bạn đang chạy MySQL trên cổng mặc định và tên cơ sở dữ liệu của bạn là MYDB, thì lệnh sẽ là Telnet MyDB 3306. Nếu kết nối đang hoạt động, bạn sẽ thấy một cái gì đó tương tự như thế này: cố gắng 10.10.run the telnet hostname port on your Looker server. For example, if you are running MySQL on the default port and your database name is mydb, the command would be telnet mydb 3306 . If the connection is working, you will see something similar to this: Trying 10.10.

Làm thế nào chúng ta có thể kết nối với cơ sở dữ liệu MySQL từ tập lệnh PHP trong PHP?

PHP $ servername = "localhost";$ database = "cơ sở dữ liệu";$ username = "tên người dùng";$ password = "Mật khẩu";// Tạo kết nối $ Conn = mysqli_connect ($ servername, $ username, $ password, $ cơ sở dữ liệu);// Kiểm tra kết nối nếu ($ Conn-> Connect_error) {die ("Kết nối không thành công:".

Làm thế nào tôi có thể biết nếu cơ sở dữ liệu của tôi được kết nối trong PHP?

Đó là khái niệm rất đơn giản, trước tiên, đối số MySQL_Connect, sẽ kiểm tra tên máy chủ, tên người dùng và mật khẩu cơ sở dữ liệu.Nếu đối số đầu tiên là đúng, thì PHP sẽ thực hiện dòng thứ hai để thực thi khác, tập lệnh sẽ chết với đầu ra được đưa ra trong phần Die.Tương tự, mysql_select_db kiểm tra cơ sở dữ liệu trên máy chủ.first the “mysql_connect” argument will check the database hostname, username and password. If the first argument is true, then PHP take the second line to execute else the script will die with an output given in the Die section. Similarly, mysql_select_db check the database on the server.