我有一個SQL插入腳本,當用戶在文本區域鍵入文本時更新數據庫中的sql表,但如果用戶在文本中使用撇號,則不會將信息插入表中。這是因爲sql讀撇號作爲結束語或其他什麼。但是有沒有一種方法可以使用一個允許用戶輸入撇號的語句,例如告訴sql使用'%s%'或其他來表示撇號?在sql文本表中插入撇號?
繼承人的SQL更新代碼我使用:
<?php
session_start();
include '_config/connection.php';
$status = $_POST['status'];
$result = mysql_query("SELECT status FROM ptb_profiles WHERE id=".$_SESSION['user_id']."");
if(!$result)
{
echo "The username you entered does not exist";
}
else
if($status!= mysql_result($result, 0))
{
echo "";
$sql=mysql_query("UPDATE ptb_profiles SET status ='$status' WHERE id=".$_SESSION['user_id']."");
}
if($sql)
{
}
header('Location: http://localhost/ptb1/profile.php?id=' . $_SESSION['user_id']);
?>
輝煌的這解決了我的問題。非常感謝你。 :) –
'addslashes' _must not_用於轉義SQL輸入。它沒有達到這個目的。 –
這不是一個好的答案addslashes沒有正確審查狀態變量。使用mysql_real_escape_string()的其他答案是正確的。 – Codeguy007