看板 PHP 關於我們 聯絡資訊
我用for迴圈把陣列的內容,一筆一筆匯到mysql中 $sql= "INSERT INTO `wp_data` (`id`) VALUES ('".$i."')"; 可是有一筆資料是 father's day 所以會出現這樣的狀況: $sql= ...(略)..................... VALUES ('father's day')" 多一個單引號,以致於匯入資料庫不成功。 我要怎麼解決呀? 前提是陣列裡的資料都是外部取的,根本不知道哪一筆有單引號。 所以也不知道怎麼去插入跳脫字元。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 36.232.150.161
rickysu:addslashes, mysql_escape_string, prepare/execute 03/24 17:35
thisisbird:replace(',\',$i) 03/24 17:40
you7:THANKS 03/24 18:07
Jerr:大家好壞 這是資安基本題啊 http://goo.gl/GLKqcd 03/24 18:12
MOONRAKER:mysql_"REAL"_escape_string. 03/24 18:47
MOONRAKER:最近發現pdo->prepare()沒有escape單引號功能,要用 03/24 18:49
MOONRAKER:pdo->quote(),不確定是不是只有mysql driver這樣 03/24 18:51
johnny1972:pdo應該要用bindParam跟bindValue 吧 03/24 21:24