[英]How to connect php to mysql database?
我正在為網站制作搜索引擎,但以前從未使用過PHP,並且一直在嘗試使用以下代碼將網頁連接到mysql數據庫:
$dbhost = 'hosthere';
$dbuser = 'usernamehere';
$dbpass = 'passwordhere';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
但是我也讀過不要使用mysql_ *函數,因為它們很快將不再可用,但是我在其他任何地方都沒有看到。
我要連接的舊代碼是:
define('DB_SERVER', 'serverhere');
define('DB_SERVER_USERNAME', 'usernamehere');
define('DB_SERVER_PASSWORD', 'passwordhere');
define('DB_DATABASE', 'databasehere');
define('STORE_DB_TRANSACTIONS', 0);
define('DEBUG', 0);
db_connect() or die('Unable to connect to database server!');
我應該堅持使用還是使用頂部的代碼?
在這里,您可以使用PDO。
define("SQLHOST", "127.0.0.1");
define("SQLUSER", "login");
define("SQLPASS", "password");
define("SQLSGBD", "database");
$conn = new PDO('mysql:host=' . SQLHOST . ';dbname=' . SQLSGBD . ';charset=UTF8', SQLUSER, SQLPASS);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql1 = 'SELECT * FROM table where field1=?';
$stmt1 = $conn->prepare($sql1);
$field1="test";
$stmt1->bindParam(1, $field1, PDO::PARAM_STR);
try {
$stmt1->execute();
$result = $stmt1->fetchAll(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
if ($showError === true) {
var_dump("error query 1:" . __LINE__ . "-------" . __FUNCTION__ . "-------" . $e->getMessage());
exit;
}
}
這在http://php.net/manual/en/function.mysql-connect.php中進行了解釋
您應該使用以下擴展名之一:MySQLi或PDO_MySQL
使用MySQLi,您基本上可以在代碼的新版本中添加i(不要使用舊代碼),可以在以下位置找到更多信息: http : //php.net/manual/en/function.mysqli-connect.php 。 否則,請查看http://php.net/manual/en/pdo.construct.php
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.