2014-02-06 4 views
0

, когда я пытаюсь вставить значение переменной в базах данных, он принимает как новую строку.Вставить значение переменной взять новую строку вставить mysql-запрос

вот мой MySQL запросов:

$query4 = "insert into $table (create_date, COMMAND, File_name, parent_id, ack, status, response, response_time, cloud_file_size, download_file_size) values('".date("Y-m-d H:i:s")."','wget' , 'abhi.tar.gz','','1', 'success', ' ".$str." ', '".date("Y-m-d H:i:s")."', '".$tar_size."', '".$size."')"; 
        mysql_query($query4); 

я думаю, что моя переменная взять \ п, но я также использовать $str=str_replace("\r\n","",$str);

ниже вставки запроса в журнале MySQL:

insert into service_logs_2014_02 (create_date, COMMAND, File_name, parent_id, ack, status, response, response_time, cloud_file_size, download_file_size) values('2014-02-06 19:08:19','wget' , '123.tar.gz','','1', 'success', ' 

2014-02-0619:08:19(7.63MB/s)-`/var/www/html/123/SRC/123.tar.gz'saved[1074190/1074190] 

', '2014-02-06 19:08:19', '1.1M  ', '1.1M  ') 

просьба представить решение ,

+0

Решение для WHICH вопроса? –

+0

из-за строки прерывания в запросе вставки, это не обновление таблицы. – codemania

+0

Если вы хотите обновить свою линию, вы должны сделать «ОБНОВЛЕНИЕ», а не «INSERT». Или я не понял вашу проблему: o – Nanis

ответ

0

я получил решение.

проблема с grave accent и Apostrophe (') символ ведьмы приходит на моем значении

см ниже:

2014-02-0619:08:19(7.63MB/s)-`/var/www/html/123/SRC/123.tar.gz'saved[1074190/1074190] 

я извлекал как символ и проблема решена.

спасибо за поддержку.

1

Я не уверен на 100%, каков ваш вопрос, но если вы правильно поняли, вы хотите удалить строки из строки, которую вы пытаетесь поместить в запрос?

Если это так:

Предполагая, что новые строки будут происходить только в начале и в конце строки:

Вы хотите использовать функцию trim(). Функция обрезки удалит любые ведущие или завершающие символы новой строки и пробела. (Который, глядя на ваш запрос, вы можете использовать на других областях)

Если символы новой строки может произойти в пределах строки:

Простое решение будет использовать функцию str_replace(), чтобы удалить все символы перевода строки, а затем, опять же, функция trim(), чтобы удалить leadng/замыкающие пробелы, например:

$str = str_replace(array("\r", "\n"), array('', ''), $str); 
$str = trim($str); 
0

это потому, что значение, которое вы вкладыш проблемная

2014-02-0619:08:19(7.63MB/s)-`/var/www/html/123/SRC/123.tar.gz'saved[1074190/1074190] 

у вас есть «перед« 123.tar.gz », когда вставляете значение. попробуйте использовать mysql_real_escape_string в запросе

Пример:

insert into service_logs_2014_02 (create_date, COMMAND, File_name, parent_id, ack, status, response, response_time, cloud_file_size, download_file_size) values('2014-02-06 19:08:19','wget' , '123.tar.gz','','1', 'success', mysql_real_escape_string(' 

2014-02-0619:08:19(7.63MB/s)-`/var/www/html/123/SRC/123.tar.gz'saved[1074190/1074190] 

'), '2014-02-06 19:08:19', '1.1M  ', '1.1M  ') 
Смежные вопросы