SQLクエリで送信する文字列をエスケープする必要があります。
そのためには、 mysql_real_escape_string
を使用できます。
機能。
たとえば、コードは次のようになります(テストされていませんが、このようなものでうまくいくはずです) :
$str = "abcd'efh";
$sql_query = "insert into my_table (my_field) values ('"
. mysql_real_escape_string($str)
. "')";
$result = mysql_query($sql_query);
別の解決策(ただし、より多くのコードを変更する必要があるため、より多くの作業が必要になります) プリペアドステートメントを使用することになるでしょう; mysqli_*
のいずれかを使用します
またはmysql_*
では不可能です 拡張機能。
編集: これがうまくいかない場合は、質問を編集して、より多くの情報を提供していただけますか?エラーの原因となるコードのように?