我剛剛實現了mysql_real_escape_string(),現在我的腳本不會寫入數據庫。在添加mysql_real_escape_string()之前一切正常:PHP表單不會發布
任何想法??
$name = mysql_real_escape_string($_POST['name']);
$description = mysql_real_escape_string($_POST['description']);
$custid = mysql_real_escape_string($_SESSION['customerid']);
mysql_send("INSERT INTO list
SET id = '',
name = '$name',
description = '$description',
custid = '$custid' ");
什麼是mysql_send? 是否有任何錯誤報告?查詢在發送到mysql之前是什麼樣的(嘗試將它回顯出來)? – blockhead 2010-08-30 16:25:40
調試提示:將SQL語句放在一個變量中,即'$ sql =「INSERT INTO list SET id ='',name ='$ name'」'etc ... then'echo $ sql'(或'die ($ SQL)')。這可能會對導致問題的原因有所瞭解。另外,你怎麼連接到數據庫,你自己或通過某種第三方API?如果是後者,也許有api建議轉義數據的方法。 – webbiedave 2010-08-30 16:26:57