我試圖檢查電子郵件是否已在註冊中使用。它運作良好時,我的工作就可以在學校,但現在卻突然顯示了一個錯誤:致命錯誤調用成員函數prepare()null
Fatal error: Call to a member function prepare() on null
我用這包括
define("dbserver", "localhost");
define("dbuser", "user");
define("dbpass", "");
define("dbname", "user");
$db = new PDO(
"mysql:host=" .dbserver. ";dbname=" .dbname,dbuser,
array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8",
PDO::MYSQL_ATTR_INIT_COMMAND => "SET CHARACTER SET utf8"
));
在這裏
session_start();
include "DBjoin.php";
if(isset($_POST["email"])) {
$_SESSION['email'] = $_POST["email"];
}
if(isset($_POST["nick"])) {
$_SESSION['nick'] = $_POST["nick"];
}
if(isset($_POST["pass"])) {
$_SESSION['pass'] = $_POST["pass"];
$_SESSION['pass'] = base64_encode($_SESSION['pass']);
}
$sthandler = $db->prepare("SELECT Email FROM Registrace WHERE Email = :email");
$sthandler->bindParam(':email', $_SESSION['email']);
$sthandler->execute();
if(filter_var($_SESSION['email'], FILTER_VALIDATE_EMAIL)) {
if($sthandler->rowCount() > 0){
echo "Email is used";}
商店$ DB在一個全局變量,試試吧 –
@KA_lin爲什麼不直接通過他們的功能呢?全球往往被壓低。另外,它不用於一個功能,所以沒有用。 –
連接失敗。查找錯誤消息 –