我是PHP OOP的新手,所以這個問題一定很愚蠢。 我無法通過PHP創建SQL查詢。我已經多次閱讀代碼,但是我無法找到任何差異,甚至編輯也沒有顯示任何錯誤。我使用PHP 5.5.13,MYSQL 5.5.24和APCHE Server 2.2.22。可捕捉的致命錯誤:類mysqli_stmt的對象無法轉換爲字符串
以下是代碼:
Test_signup.php
<!DOCTYPE HTML>
<html>
<head>
<title>
Test Sign Up
</title>
</head>
<body>
<form action = "Signup.php" method = "POST" name = "test_signup">
Full Name: <input type = "text" name = 'full_name'>
User Name: <input type = 'text' name = 'user_name'>
Email: <input type = 'text' name = 'email_add'>
<input type = "submit" name = "submit">
</form>
</body>
</html>
現在來到Signup.php
<?php
$con = new mysqli('localhost', 'root', '', 'my_database');
if ($con->connect_error)
{
echo 'Failed to connect' . $con->connect_error;
}
else
{
echo 'Connected';
$stmt_chk_email = $con->prepare('SELECT * FROM `user_information` WHERE `Email` = ?');
$stmt_chk_email->bind_param('s', $_POST['email_add']);
echo $stmt_chk_email;
?>
當嘗試運行這段代碼,我m收到錯誤:
Object of class mysqli_stmt could not be converted to string
當然,原始查詢比這裏發佈的要大得多。我已經編輯了查詢的後面部分,因爲我發現問題存在於SQL「SELECT」語句中,但我無法弄清楚。請幫助我。 謝謝。
你好像缺少一個右括號'}''後回聲$ stmt_chk_email;'一兩件事。 –
你確定你可以'回聲'類似的東西嗎? – tadman
你還缺少'execute()' - 你可能打算使用'$ stmt_chk_email-> execute();'而不是'echo $ stmt_chk_email;' –