Và hướng dẫn này dành cho các code like,sub,auto,php thuần thôi nha
1.Đầu tiên là file kết nối đến CSDL(Config.php,Connect.php …)
File này chắc trong bộ bot,auto nào cũng có
$host = "localhost";
$username = "root";
$password = "";
$dbname = "test";
$connection = @mysql_connect($host,$username,$password);
if (!$connection){
die('Could not connect: ' . mysql_error());
}
mysql_select_db($dbname) or die(mysql_error());
mysql_query("SET NAMES utf8");
Sửa toàn bộ file này sang code sau:
// Kết Nối DataBase
$host = 'localhost';
$username = 'root';
$password = '';
$db = '';
$mysqli = new mysqli($host,$username,$password,$db);
if($mysqli->connect_error){
die("Failed to connect with MySQL: " . $mysqli->connect_error);
}
$mysqli->set_charset("utf8");
Những hàm có chức năng giống nhau:
PHP:
mysql_error() = $mysqli->connect_error ;
mysql_query("SET NAMES utf8") = $mysqli->set_charset("utf8");
2.Trong các file xử lý,có các truy vấn đến database
Bởi vì mỗi code là khác nhau nên phần này mình sẽ không nói chi tiết.Mình chỉ hướng dẫn 1 cách cơ bản thôi nha ^^
Mình sẽ theo thứ tự code: mysql -> mysqli
a.Chuyển đổi mysql_query();
VD: để thực hiện truy vấn lấy dữ liệu từ 1 bảng nào đó ta dùng
mysql_query(‘SELECT * FROM table’); -> $mysqli->query(‘SELECT * FROM table’);
b.Để đếm số record của 1 bảng thì:
mysql_num_rows(mysql_query('SELECT * FROM ABCD'));
//hoặc là
mysql_result(mysql_query("SELECT COUNT(*) FROM ABCD"), 0);
Chuyển qua mysql thì sẽ là :
$query = $mysqli->query('SELECT * FROM ABCD');
$num = $query->num_rows;
//hoặc
$num = $mysqli->query('SELECT * FROM ABCD')->num_rows;
c.Lấy nhiều record thực hiện trong vòng lặp
Ví dụ ở mysql
$result = mysql_query("SELECT * FROM ABC");
while($row = mysql_fetch_array($result))
{
// Thực hiện 1 điều gì đó
}
Thì sang mysqli sẽ thành
$result = $mysqli->query("SELECT * FROM ABC");
while($row = $result->fetch_assoc)
{
// Thực hiện 1 điều gì đó
}
d.Lấy 1 record
Nếu Trong mysql:
$user = mysql_result(mysql_query("SELECT username FROM User"), 0);
Thì trong mysqli
$query = $mysqli->query("SELECT username FROM User")->fetch_row();
$user = $query[0];
// Nếu select nhiều ví dụ:
$query = $mysqli->query("SELECT username,password FROM User")->fetch_row();
$user = $query[0];
$password= $query[1];
e.Giải phóng bộ nhớ,đóng kết nối CSDL
Trong mysql
Ví dụ giải phóng bộ nhớ
$query = mysql_query('SELECT * FROM Token');
mysql_free_result($query);
Ví dụ đóng kết nối trong mysql
mysql_close($connection);
Còn trong mysqli
Để giải phóng bộ nhớ
$query = $mysqli->query('SELECT * FROM Token');
$query->free_result();
Đóng kết nối CSDL
$mysqli->close();
Chúc Các Bạn Thành Công !!
0 nhận xét:
Đăng nhận xét