我仍然主要从我买的书中学习,但今天我知道我的书已经老了,即使我今年买了关于PHP编程的书.现在我知道PHP中的mysql_*命令已被弃用,应该用更安全和稳定的预处理语句和PDO替换.所以我根据它自己重写了我的所有网页,也许我需要你的一些建议如何正确地做到这一点,并为你工作所有更有经验的人:)
所以我将在这里开始我的重写只有主要部分(连接数据库并选择数据库)(其余的我可以自己用google和手册).我会在这里写下我的旧剧本,并问你我是否正在做一切正确而且没有遗漏任何东西,我希望这也可以成为其他人的好手册/答案.让我们开始吧.
所以在配置中我有这样的东西:
$db = new dbConn('127.0.0.1', 'root', 'pass', 'people', 'animals');
Run Code Online (Sandbox Code Playgroud)
这应该是这样的:
$db = new PDO('mysql:host=127.0.0.1;dbname=people;charset=UTF-8', 'root', 'pass');
Run Code Online (Sandbox Code Playgroud)
对?但是当我需要选择数据库以后我应该没有dbname=people;?但是如何选择数据库呢?
这是我唯一的重写脚本,这是大多数Web项目的基础,我希望它不仅能让我理解新的PDO系统是如何工作的:
class dbConn
{
public function __construct($server, $user, $pass, $db_people, $db_animals)
{
if (!empty($server) && !empty($user) && !empty($pass) && !empty($db_people) && !empty($db_animals))
{
$this->server = $server;
$this->user = $user;
$this->pass = $pass;
$this->db_people = $db_people;
$this->db_animals = $db_animals;
$this->connect();
}
else
{
die("Set up connection to db");
}
}
public function connect()
{
$this->conn = mysql_connect($this->server, $this->user, $this->pass) or …Run Code Online (Sandbox Code Playgroud)