SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 13.02.2012 08:58:02

Adel1ne
Участник
Зарегистрирован: 13.02.2012
Сообщений: 6

Не могу внести теги в поле типа text через mysql_query (PHP)

Все в названии. Не могу внести теги <a></a>, <table></table> запросом:
mysql_query("INSERT INTO table1 (field1) VALUES ('$text')");
В переменной $text - таблица или ссылка

Неактивен

 

#2 13.02.2012 09:30:50

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

Что значит "не могу"? Ошибка, результат отличный от ожидаемого, ... ?

mysql_query("INSERT INTO table1 (field1) VALUES ('".$text."')") or die(mysql_error());

Неактивен

 

#3 13.02.2012 10:01:57

Adel1ne
Участник
Зарегистрирован: 13.02.2012
Сообщений: 6

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

vasya написал:

Что значит "не могу"? Ошибка, результат отличный от ожидаемого, ... ?

mysql_query("INSERT INTO table1 (field1) VALUES ('".$text."')") or die(mysql_error());

Да, коряво выразился. У меня проблема следующая, я беру информацию из тега <textarea>Какой то текст</textarea> и заношу его в переменную, а затем и в БД. Немного по-тестировал и пришел к выводу, что проблема вот в этих символах &nbsp;, &lt;. Если копировать информацию из другого документа или писать теги руками в поле textarea, то добавляются вот эти символы. И все что после них не вносится в базу. Мне надо это как-то победить.

Неактивен

 

#4 13.02.2012 10:09:47

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

mysql_query("INSERT INTO table1 (field1) VALUES ('".addslashes($text)."')") or die(mysql_error());


http://docs.php.net/manual/en/function.addslashes.php

Неактивен

 

#5 13.02.2012 10:14:53

Adel1ne
Участник
Зарегистрирован: 13.02.2012
Сообщений: 6

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

vasya написал:

mysql_query("INSERT INTO table1 (field1) VALUES ('".addslashes($text)."')") or die(mysql_error());


http://docs.php.net/manual/en/function.addslashes.php

к сожалению не помогло, все так же

Неактивен

 

#6 13.02.2012 10:33:41

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

А внимательно прочитать ссылку на документацию?
mysql_query("INSERT INTO table1 (field1) VALUES ('".mysql_real_escape_string($text)."')") or die(mysql_error());

Неактивен

 

#7 13.02.2012 10:50:07

Adel1ne
Участник
Зарегистрирован: 13.02.2012
Сообщений: 6

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

vasya написал:

А внимательно прочитать ссылку на документацию?
mysql_query("INSERT INTO table1 (field1) VALUES ('".mysql_real_escape_string($text)."')") or die(mysql_error());

Я внимательно почитал, ничто из предложенного не решает мою проблему. Символы &nbsp; и &lt; никуда деваться не хотят. И все что после них, не выводится на экран (уже даже в базу не вношу, а делаю просто вывод)
P.S.: На всякий случай проверил оба ваших предложенных варианта. Не помогло.

Неактивен

 

#8 13.02.2012 11:13:52

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

Не внимательно, собственно как и я wink

попробуйте
mysql_escape_string($text)

Неактивен

 

#9 13.02.2012 11:38:51

Adel1ne
Участник
Зарегистрирован: 13.02.2012
Сообщений: 6

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

vasya написал:

Не внимательно, собственно как и я wink

попробуйте
mysql_escape_string($text)

Да мне не это надо smile
Я ввожу в поле textarea строку, например:
<table></table>

Потом смотрю alert'ом че вообще передается.
Вижу следующее:
&lt;table&gt;&lt/table&gt;

И вот это все улетает в php обработчик. А там, чем бы я это все не преобразовывал, оно все равно в базу не хочет вноситься. Беда прям sad

Неактивен

 

#10 13.02.2012 12:23:04

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

Мне сложно вам что-то посоветовать ещё так как у меня вносится.

Рекомендую вопросы по php задавать на соответствующем форуме, например http://webew.ru/php/
Там вы скорее получите грамотный ответ по вопросам связанным с php.

Неактивен

 

#11 13.02.2012 12:43:58

Adel1ne
Участник
Зарегистрирован: 13.02.2012
Сообщений: 6

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

vasya написал:

Мне сложно вам что-то посоветовать ещё так как у меня вносится.

Рекомендую вопросы по php задавать на соответствующем форуме, например http://webew.ru/php/
Там вы скорее получите грамотный ответ по вопросам связанным с php.

Спасибо за помощь, тут дело в Ajax. Потому что я сейчас проверил, если просто через форму передавать данные, то действительно все вносится и без всяких там специальных функций...

Неактивен

 

#12 13.02.2012 12:52:22

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: Не могу внести теги в поле типа text через mysql_query (PHP)

Без спец ф-ий нормально будет вносится, то того как в строке не появится кавычка, которая '$text' превратит в конструкцию 'что-то'что-то', т.е. приведет к ошибке синтаксиса при попытке добавить.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson