2013-07-22 4 views
0

У меня есть файл журнала, который был создан в пользовательском двоичном формате. Этот файл журнала загружается на сервер и PHP вставляет его в базу данных MySQL, например, такВставка пользовательского двоичного формата blob в SQL

$tmpName = $_FILES['file']['tmp_name']; 
$fp = fopen($tmpName, 'r'); 
$content = fread($fp, filesize($tmpName)); 
$query = "INSERT INTO device_log (dID, deviceLog) VALUES ('$res1', '$content')"; 

Но это не всегда работает, потому что SQL имеет проблемы с ее содержимым, иногда дает ошибку You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '««»»Qì™úX' at line 1.

Я читал, что вам нужно избежать данных с чем-то вроде mysql_real_escape_string, но это разрушит исходные данные, то есть я не смогу его прочитать. Каков правильный способ вставки такого блоба?

ответ

1

Возможно, вы захотите, чтобы base64 закодировал данные перед вставкой в ​​вашу базу данных, что может облегчить проблему для вас (вам необходимо, чтобы base64 декодировал ваши данные при чтении).

Смежные вопросы