以下のコードでは、ユーザーは普通の英語でフレーズを入力することができ、その後、データベースに "$ site"として追加されます。ユーザーがアポストロフィを入力すると、フレーズはアポストロフィの前にバックスラッシュを付けて保存されます。アポストロフィの前にバックスラッシュを付けずに、変数 "$ site"をデータベースに追加するにはどうすればよいですか?PHP - アポストロフィからバックスラッシュを削除する
事前のおかげで、
ジョン
print "<div class=\"siteadd\">
<form action='process.php?find=$find1' method='post'>
Add a book to this topic: <input name='site' type='text' size='50'>
<input type='submit' value='Submit'>
</form>
</div>";
その後、process.php上:
$site = str_replace($remove_array, "", $_POST['site']);
$site = strtolower($site);
$site = mysql_real_escape_string($site);
$illegal = array("/", "\"");
$site = str_replace($illegal, '', $site);
mysql_query("INSERT INTO `$find` VALUES (NULL, '$site',1,0)");
ありがとう...これは動作します。そして私は "mysql_real_escape_string"を$ findに追加しました。 –
$ findがあなたのホワイトリストにあるかどうか確認してください。誰もあなたのデータベースの*テーブルにデータを追加させたくないのですか? –