所以我真的只想讓東西更容易閱讀,只是創建一個函數,我可以調用數據庫連接,下面是我試圖做的遠。在php中使用函數來創建數據庫連接?
到目前爲止,它不起作用,它根本沒有帶來任何消息,因此推測它不會進入嘗試。
的functions.php
function getDBConnection()
{
try
{
$db = new PDO('mysql:host=localhost;dbname=name;charset=utf8', 'username', 'password');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //Set error mode
}
catch(PDOException $e)
{
echo 'An error occured talking to the DB';
}
return $db;
}
然後做
submittest.php
require('functions.php');
getDBConnection(); //return $db
$username = 'donkey';
$password = 'donkey';
$email = 'donkey';
$county = 'donkey';
try
{
//Prepare and execute an insert into DB
$st = $db->prepare("INSERT INTO users(login,pass,email,county) VALUES(:username,:password,:email,:county)");
$st->execute(array(':username' => $username, ':password' => $password, ':email' => $email, ':county' => $county));
echo 'Success';
}
catch (PDOException $e)
{
echo 'An error occurred talking to the DB';
}
?>
有什麼問題嗎?這不工作?你測試過了嗎? – 2014-10-01 20:17:00
是的,它只是帶來了一個空白頁面,所以它似乎甚至不想進入看起來的嘗試。還檢查了它是否在數據庫中,什麼都沒有。 – 2014-10-01 20:19:06
你是否硬編碼用戶並通過函數?爲什麼不把它們作爲@params傳遞給函數?我知道它可能與你的問題無關,但它會更容易。 – tfrascaroli 2014-10-01 20:19:55