當我調用一個mysql存儲過程參數時,會拋出標題中提到的錯誤。您的SQL語法;檢查與您的MySQL服務器版本相對應的手冊,在第1行',)'處使用正確的語法
<?php
error_reporting(E_ALL);
ini_set('desplay_errors','1');
//Connect to the database
$host = "127.0.0.1";
$user = "root"; //Your Cloud 9 username
$pass = ""; //Remember, there is NO password by default!
$db = "mydata_db"; //Your database name you want to connect to
$connection = mysql_connect($host,$user,$pass)or die(mysql_error());
mysql_select_db("mydata_db",$connection);
if(isset($_POST["Login"]))
{
$user= mysql_real_escape_string($_post['user']);
$emailid= mysql_real_escape_string($_post['emailid']);
$password= mysql_real_escape_string($_post['password']);
insertinfo($user,$emailid,$password);
}
function insertinfo($user,$emailid,$password)
{
//$retval=mysql_query("call sp_login('testing','[email protected]','testing');"); //it is working
$retval=mysql_query("call sp_login($user,$emailid,$password)"); //it is not working giving error
if(! $retval) {
die('Could not enter data:'. mysql_error());
}
echo "Entered data successfully\n";
}
?>
<form method="post" action="connect.php" >
<div style="text-align:center;right:20%; margin-top:2cm; background-color: yellow; color:red;" >
<h7><b> <u>Login</u></b></h7> <br/>
User: <input type="text" name="user"><br/><br/>
Emailid: <input type="text" name="emailid"> <br/><br/>
Password:<input TYPE="text" name="password"> <br/><br/>
<input type="submit" name="Login" value="Login">
<input type="submit" name="Home" value="Home">
</div>
</form>
調用存儲過程和傳遞參數有什麼問題?
的錯誤信息是:
無法輸入數據:你有你的SQL語法錯誤;檢查對應於你的MySQL服務器版本使用附近的正確語法手冊「)」在行1
我會建議尋找[PDO](http://php.net/manual/fr/book.pdo.php)或[MySqli](http://php.net/manual/fr/book。 mysqli.php)而不是棄用的mysql_query。而不是試圖調試這... –
我看到的唯一...是*可能*你正在測試你的腳本沒有密碼...測試快捷方式通常會導致怪異的錯誤;)。如果'$ password'爲空,這可能會導致查詢中出現',)'。 –