首先,如果您想从更改mysql_*
为PDO
您将需要更改脚本中的所有代码,而不仅仅是一个不起作用的代码
如果您要将代码从 mysql_* 更改为 PDO
您将不得不使用 PDO 更改与数据库的连接
这是一个示例:
// here we set the variables
$dbhost = "localhost";
$dbname = "testcreate";
$dbuser = "root";
$dbpass = "mysql";
// here we are using ( try {} ) to catch the errors that will shows up and handle it in a nicer way
try {
$db = new PDO('mysql:host='.$dbhost.';dbname='.$dbname.';charset=utf-8', ''.$dbuser.'', ''.$dbpass.'');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo 'Error : <br>' . $e->getMessage();
}
// here we set the varible for the connection = then starting the cennction with new POD();
$db = new PDO('mysql:host='.$dbhost.';dbname='.$dbname.';charset=utf-8', ''.$dbuser.'', ''.$dbpass.'');
// here we set an Attribute to handle the errors
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// you dont need to use it in our case because we already catching the error and handling it in out way
// here we catch the error then handling it by echo a msg and then we used
// $e->getMessage(); to get the error msg that should be throwing in the page
catch (PDOException $e) {
echo 'Error : <br>' . $e->getMessage();
}
------------------------------------------
现在我们完成了连接,我将向您展示如何查询和获取表
// this is how we will use query
$qr = $db->query()
// and this is how to fetch it by taking the query variable and use the arrow then fetch
$ro = $qr->fetch()
我将向您展示您的代码示例
$querytemp = mysql_query("select * from main_setting") or die (mysql_error());
$row = mysql_fetch_object($querytemp);
我们将其更改为
$querytemp = $db->query("select * from main_setting");
$row = $querytemp->fetch(PDO::FETCH_OBJ);
所以现在你可以使用$row->news
PDO
现在您可以轻松地将代码更改为 PDO