Mysql
 sql >> база данни >  >> RDS >> Mysql

PHP/MySQL - Синтактична грешка на SQL?

Трябва да избягвате низовете, които изпращате във вашите 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_* или PDO -- но не е възможно със стария mysql_* разширение.


Редактиране : ако това не работи, можете ли да редактирате въпроса си, за да ни дадете повече информация? Харесва ли ви частта от кода, която причинява грешката?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да избера между 1-вия ден на текущия месец и текущия ден в MySQL?

  2. SQLite в Android:очакват се външни ключове и <table constraint>

  3. Представете време без дата в рубин

  4. Съхраняване на изображение в базата данни директно или като base64 данни?

  5. Намерете подобни изображения в (чист) PHP / MySQL