апостроф в mysql / php - PullRequest
       46

апостроф в mysql / php

1 голос
/ 05 апреля 2010

я пытаюсь выучить 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";

...

что я делаю не так?

Ответы [ 2 ]

8 голосов
/ 05 апреля 2010

Ваши значения являются строками, они все еще нуждаются в разделителях в операторе SQL, даже после того, как вы их экранировали.

//inserting data
$sql="INSERT INTO Quotes (vauthor, cquotes)
VALUES ('$author', '$quote')";
3 голосов
/ 05 апреля 2010

Строки должны быть заключены в кавычки в SQL:

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