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

Грешка в SQL синтаксиса при опит за качване на изображение в BLOB поле

Трябва да избегнете съдържанието на изображението.

Има различни начини да постигнете това:

1) Ако PHP версията, която използвате, е по-малка от PHP 5.5, можете да използвате функцията "mysql_real_escape_string".

$query="INSERT INTO records VALUES('','$name','$pname','$email','$phone','$cost','$des','$category','$date','" . mysql_real_escape_string($imagedata) ."');";

2) Кодирайте съдържанието на изображението с помощта на функцията „base64_encode“, като кодирането на съдържанието в base64 ще увеличи размера на файла, но е много безопасно за използване.

 $query="INSERT INTO records VALUES('','$name','$pname','$email','$phone','$cost','$des','$category','$date','" . base64_encode($imagedata) ."');";

Не забравяйте да декодирате съдържанието с функцията "base64_decode", когато искате да прочетете или изтеглите файла.

3) Избягайте от двойните и единичните кавички с помощта на функцията "addslashes"

 $query="INSERT INTO records VALUES('','$name','$pname','$email','$phone','$cost','$des','$category','$date','" . addslashes($imagedata) ."');";

Не забравяйте да премахнете наклонените черти, когато изображението се чете или изтегля с функцията "stripslashes".




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Може ли ReadUncommitted да знае всички ПО-НИСКИ идентификатори с автоматично нарастване, които ще съществуват?

  2. Как да изтриете рекурсивно елементи от таблицата?

  3. Премахнете напълно MySQL Ubuntu 14.04 LTS

  4. MySQL - как да групирате час, компенсиран с 30 минути

  5. MySQL в Python:UnicodeEncodeError:'ascii'