[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: текст и бд
Страницы: 1, 2
MatrixGod
всем привет!

кто подскажет как правильней всего запихивать живой текст в бд?

у меня есть живой текст - с кавычками, скобками, процентами и прочими элементами обычного текста.

уже запутался с html_entity_decode и mysql_real_escape_string.
на выходе (на странице) получается бог знает что. то есть кавычки, то нету, то есть но текст между ними пропадает... короче глюки.

в общем, как лучше?

всем спасибо!
Игорь_Vasinsky
в БД mysql_real_escape_string().
из БД htmlspecialchars()

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
MatrixGod
Игорь_Vasinsky,
ок. а если мой текст изначально идет с хтмл энтитями, тоесть так:

"вася" пупкин

то, что вы посоветовали выше, тоже нормально будет?
exotica
да

_____________
[FAQ]Регистрации пользователей, сохранение в БД
---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
Michael
Цитата (MatrixGod @ 21.06.2013 - 10:33)
Игорь_Vasinsky,
ок. а если мой текст изначально идет с хтмл энтитями, тоесть так:

"вася" пупкин

то, что вы посоветовали выше, тоже нормально будет?

нет, это искаженный текст, его надо декодировать (htmlspecialchars_decode ) перед сохранением в базу.

_____________
There never was a struggle in the soul of a good man that was not hard
MatrixGod
в этом и проблема! у меня текст может быть разный и по разному оформленный.

есть ли какой-то универсальный способ это сделать? что я сделал и забыл.
а то если завтра появится какой-то новый "edge case" - мне придется и для него голову ломать.
Michael
Я говорил про формат вывода текста, "как он есть", вывода с помощью htmlspecialchars.

Все зависит откуда ты этот текст берешь, так и обрабатывай. Мало ли что с ним там могло произойти и как тебе его надо вывести.

_____________
There never was a struggle in the soul of a good man that was not hard
exotica
Цитата
"вася"

а как вы это хотите увидеть в браузере?
как "вася" или как "вася"

htmlspecialchars() выведет вам "вася" именно так - "вася"
а если вы просто выведите этот текст в браузер вы получите "вася"

Если в БД все по разному лежит, то приведите все к единообразию допустим так
$streng1 =str_replace('&quot' '/"' $string);


_____________
[FAQ]Регистрации пользователей, сохранение в БД
---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
Игорь_Vasinsky
Цитата
а если мой текст изначально идет с хтмл энтитями


если в в БД хранить & - Это 1 символ
а если как & - 5 символов

нафига тебе такое надо?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
MatrixGod
ребята,

давайте по порядку.

первым делом обрабатываю текст с помощью html_entity_decode - как я понял это конвертирует всевозможные энтити в обычные чары, если таковы имеются (и пофиг есть они в строке или нет). ибо в некоторых строках они могут быть, в некоторых нет. поправьте меня если ошибаюсь.

далее, запихиваю это дело в бд.
тут у меня вопрос. какая разница между mysql_real_escape_string и htmlspecialchars? - как я понимаю обе эти функции мне подходят. поправьте меня если ошибаюсь. так какой же все таки лучше пользоваться?
(все что мне важно что чтоб не испортить исходной текст и конечно же не схавать ошибок).

ну и конечно же, вывод на страницу.
на странице естественно надо чтоб все выглядело как в книге (читабельно и понятно) - тоесть обычные чары а не их энтити.

так?
glock18
laugh.gif Да они одинаковы абсолютно. Я, например, ими обеими быструю сортировку массива делаю и спайдеров пишу в пару строк.

On a serious note though: http://www.php.net/manual/ru/function.mysq...cape-string.php http://www.php.net/manual/ru/function.htmlspecialchars.php
MatrixGod
glock18,
я читал мануалы...
все же, какую юзать?

и правильно ли я собрался действовать чтоб нормально уложить текст в бд, чтоб небыло проблем с его выводом?
Игорь_Vasinsky
В бд текст в оригинале, но после mysql_real_escape_string()
при выводе htmlspecialchar()

мне ещё раз написать это?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
glock18
Цитата (MatrixGod @ 21.06.2013 - 10:27)
glock18,
я читал мануалы...
все же, какую юзать?


то есть, у вас проблемы с пониманием? если английский не понимаете, то там есть селект языка на нужный.
Игорь_Vasinsky
Цитата
то там есть селект языка на нужный.

на венгерском вполне доступно написано.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.