这是我的connection.php文件
<?php
class Connection {
public $db_host = 'localhost';
public $db_user = 'root';
public $db_pass = '';
public $db_name = 'lybri';
public function connect() {
$this->connect_db = new mysqli($this->db_host, $this->db_user, $this->db_pass, $this->db_name);
if (mysqli_connect_errno()) {
printf("Connection failed: %s\n", mysqli_connect_error());
exit();
}
return true;
}
public function get_connection() {
return $this->connect_db;
}
}
$db = new Connection('localhost', 'user', 'pass', 'name');
$db->connect();
$connection = $db->get_connection();
此脚本正常运行,没有任何错误。
当我需要在另一个文件中运行mysql查询时,我只需将此connection.php文件包含在该文件中并执行此操作。
mysqli_query($connection, "SELECT * FROM users WHERE username = '$username' AND password = '$hashedPassword' ");
我只需要知道,这是最好的做法。
谢谢。
答案 0 :(得分:2)
是的,这是最好的做法,我相信很多人只包括connection.php(我也是)。
但我要说的就是使用mysqli_real_escape_string来阻止mysql injection attack。 (不推荐)或使用PDO/mysqli
在查询之前使用它mysqli_real_escape_string($db,$id)
:
$username=mysqli_real_escape_string($db,$username);
$password=mysqli_real_escape_string($db,$password);