質問

私はPHP/MySQLを学ぼうとしています。

MySQLにデータを挿入することは正常に機能しますが、アポストロフィを持っている人を挿入するとエラーが生成されます。 mysql_real_escape_stringを使用してみましたが、これは機能しません。

どんな助けにも感謝します。


<?php
include 'config.php';

echo "Connected <br />";



$auth = $_POST['author'];
$quo = $_POST['quote'];

$author = mysql_real_escape_string($auth); 
$quote = mysql_real_escape_string($quo); 


//**************************



//inserting data
$sql="INSERT INTO Quotes (vauthor, cquotes)
VALUES ($author, $quote)";

if (!mysql_query($sql,$conn))
  {
  die('Error: ' . mysql_error());
  }
echo "1 record added";

...

私は何が間違っているのですか?

役に立ちましたか?

解決

あなたの価値は文字列ですが、あなたがそれらを逃れた後でも、彼らはまだSQLステートメントに区切り文字を必要とします。

//inserting data
$sql="INSERT INTO Quotes (vauthor, cquotes)
VALUES ('$author', '$quote')";

他のヒント

文字列は、SQLで引用符で包む必要があります。

$sql="INSERT INTO Quotes (vauthor, cquotes)
VALUES ('$author', '$quote')";
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top