3356

Умница растет⁠⁠

Давно обещал детям, что куплю новую игру \"Монополия\". Папа сказал, папа долго делал, в результате игру купила мама и подкинула им как подарок. Радостные детки бегут целовать папу, папа кисло, но честно кивает на маму, вот — ей все поцелуйчики. И вот, в разгар проявления благодарности, младшая (8 лет) зависает на долю секунды, смотрит на меня и говорит задумчиво: \"... но ведь это значит, что у папы остались непотраченные деньги! \"
Вы смотрите срез комментариев. Показать все
245
Автор поста оценил этот комментарий

Малая соображает, в "Монополию" уделает всех

раскрыть ветку (25)
75
Автор поста оценил этот комментарий

Неправильно ты пишешь - палки забыл. \"Монополия\" же.

раскрыть ветку (24)
77
DELETED
Автор поста оценил этот комментарий
Когда отец \"Программист\"
раскрыть ветку (23)
88
Автор поста оценил этот комментарий

И любит этим \"Выебыватся\"

раскрыть ветку (8)
48
Автор поста оценил этот комментарий

Я тоже люблю выёбыватЬся

раскрыть ветку (7)
34
Автор поста оценил этот комментарий

Прошу прощения за "Ь", бес попутал.

раскрыть ветку (6)
27
Автор поста оценил этот комментарий
Автор поста оценил этот комментарий

На первый раз простим, но смотри, отныне мы следим за тобой.

ещё комментарии
Автор поста оценил этот комментарий
\"Ь"\
9
DELETED
Автор поста оценил этот комментарий

когда это копипаста с сайта, сделанного криворуким прыщавым кодером, где кавычки экранируются лишний раз при добавлении поста в базу данных.

раскрыть ветку (13)
0
DELETED
Автор поста оценил этот комментарий
А зачем экранировать кавычки в БД? Хтмл сущности не нужны?
раскрыть ветку (12)
17
DELETED
Автор поста оценил этот комментарий

тут какое дело. к примеру, сайт написан на php, база данных - mySQL. к примеру, мы заполнили текстовую форму, к примеру, как эта, в которой я сейчас пишу комментарий, и на сервер отправляются данные из этой формы. и эта информация должна быть добавлена в БД, используя запрос к БД. в коде он будет выглядеть вот так:

$db->query('INSERT INTO `comments` (`comment`) VALUES("Это текст нашего комментария";');


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

INSERT INTO `comments` (`comment`) VALUES("Это текст нашего \"комментария\"";'. поставив перед кавычками косую черту \ - мы получим запись в базе данных Это текст нашего "комментария". забудем это сделать - получим ошибку при добавлении записи в базу, и у нас будет отличная дыра в безопасности. если же мы по какой-то причине дважды обработаем переменную с текстом - то получим то, что видим - лишнюю косую черту.


насчет html - тут немного другая ситуация. к примеру, мы оставили комментарий вида Это наш комментарий с гадостью внутри <script>window.alert("!");</script> - и на странице, где отображается этот комментарий, получим исполнение js-скрипта - а это очередная уязвимость - кому нужно на его сайте, чтобы выполнялись левые js-скрипты, или пользователь мог корёжить html как ему вздумается?. но если мы экранируем теги перед выводом этого текста - преобразовав < и > в &gt; &lt; - то ничего страшного не случится, и комментарий отобразится именно то, что пользователь ввёл.


я не очень хорошо умею объяснять, простите, но надеюсь, что написал более-менее понятно

раскрыть ветку (11)
1
Автор поста оценил этот комментарий
Здорово объяснил, спасибо)
раскрыть ветку (2)
0
Автор поста оценил этот комментарий

но лучше использовать placeholder!

0
DELETED
Автор поста оценил этот комментарий
пожалуйста. рад, что кому-то это интересно :)
1
DELETED
Автор поста оценил этот комментарий

хз, то-ли я очепятался, то-ли еще какая фигня - там, "Это текст нашего \"комментария\"" должны стоять \ а не |

1
Автор поста оценил этот комментарий

Спасибо.

раскрыть ветку (3)
1
DELETED
Автор поста оценил этот комментарий

всегда пожалуйста.

раскрыть ветку (2)
0
Автор поста оценил этот комментарий

Есть советы с какой литературы начать в освоении SQL?

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий

ничего бумажного, к сожалению, посоветовать не могу. попробуйте поискать по рутрекеру, http://rutracker.org/forum/tracker.php?nm=mysql


есть классные онлайн-курсы https://www.codecademy.com/ https://www.codeschool.com/ - для начинающих самое оно.


отличный портал - http://www.sql.ru/

хороший справочник, который может оказаться крайне полезным - http://phpclub.ru/mysql/doc/reference.html


полезнейший toster.ru и незаменимый для любого разработчика stackoverflow.com - всегда можно задать интересующий вопрос или найти уже готовый ответ. к примеру -
http://ru.stackoverflow.com/questions/54424/%D0%A1-%D1%87%D0...

DELETED
Автор поста оценил этот комментарий

Вы наверное думаете, что на пикабу сидят ваши родители и их друзья, бесит просто когда тебе разжёвывают на пальцах простые истины как дурачку из диспансера.) Я почему про сущности сказал, в случае js'а да, экранируем, в случае html используем сущности, так можно и так нужно, а не экранировать текст. На php есть такая функция как htmlentities - полезная вещь.

раскрыть ветку (2)
DELETED
Автор поста оценил этот комментарий
1) нет, я так не думаю.


2) Вы задали вопрос - зачем экранировать кавычки, перед записью в бд - я дал ответ. здесь у Вас небольшое недопонимание - когда стоит использовать экранирование переменной для её вставки в SQL-запрос (mysqli::real_escape_string), а когда использовать преобразование мнемоник (сущностей) (htmlentities, htmlspecialchars).


первое - когда мы хотим добавить в SQL-базу запись в том виде, в котором она есть. второе - когда мы хотим преобразовать строку для отображения в браузере, преобразовывая, к примеру, " в &quot;, скобки в &lt; &gt; и так далее.


т.е. первое относится к вопросам баз данных, второе - к вопросам шаблонизации

раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Не хочу ничего объяснять, просто хочу обратиться с читателям данной ветки: ребят, прочтите мануалы самостоятельно об экранировании и о html сущностях, как, когда и зачем и не вводите себя в заблуждение.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества