2012-10-12 82 views
1
<?php 
include("../scripts/createconnect.php"); 

if(isset($_POST['submitted'])) { 

    $username = mysql_real_escape_string ($_POST['username']); 
    $password = mysql_real_escape_string ($_POST['password']); 


    $sqlinsert = "INSERT INTO Testing (User_Id, username, password) 
     VALUES (NULL,'$username', '$password');"; 

    if (!mysqli_query($dbcon, $sqlinsert)) { 
     die('error inserting into database'); 
     } // end of nested if statement 

     $newrecord ="Congratulations!"; 

} 
?> 

我有一個工作表單輸入到數據庫。我正在學習MySql注射預防。MySql mysql_real_escape_string錯誤

我想使用mysql_real_escape_string方法開始,但似乎遇到格式錯誤。

我已確認我的數據庫已連接。當我將mysql_real_escape_string添加到我的表單輸入時,我現在遇到一個錯誤。

我的遠程文件「createconnect.php」通過mysqli_connect成功連接。

我按照教程中的詳細說明添加了ysql_real_escape_string,現在無法將數據輸入到我的MYSQL數據庫。有人能告訴我我錯過了什麼嗎?

+0

如果您詳細介紹該錯誤消息,這可能會有幫助。還有更簡單的數據庫接口(PDO),準備好的語句使繁瑣的手動轉義冗餘。 – mario

+0

您可以將代碼粘貼到您的SQL字符串中嗎?您如何使用mysql_real_escapestring? – aleation

+0

你使用的是mysql還是mysqli?從代碼中不清楚。選擇一個和相關功能 –

回答

0

存在對的mysqli類似的函數調用mysqli_real_escape_string

嘗試

$link = new mysqli("localhost", "my_user", "my_password", "dbaname"); 
$username = mysqli_real_escape_string ($link,$_POST['username']); 
$password = mysqli_real_escape_string ($link,$_POST['password']); 
相關問題