Работа плейсхолдеров PDO Mysql - Visavi.net https://visavi.net/ RSS - Visavi.net https://visavi.net/assets/img/images/logo_small.png RSS - Visavi.net https://visavi.net/ [email protected] (admin) [email protected] (admin) Thu, 23 May 2024 17:41:41 +0300 8. <strong>Кевин Митник_HHTeam</strong>, doctrine 2 правда она сложновата для новичков https://visavi.net/topics/36560/618812 Работа плейсхолдеров PDO Mysql Вантуз-мен Tue, 05 Feb 2013 22:57:12 +0400 Сообщения https://visavi.net/topics/36560/618812 9. <strong>Башка</strong>, я знаю. Запрос не ломает, SQL-inj исключена, но XSS возможна. https://visavi.net/topics/36560/618808 Работа плейсхолдеров PDO Mysql Кевин Митник Tue, 05 Feb 2013 22:28:37 +0400 Сообщения https://visavi.net/topics/36560/618808 6. <strong>Wapruks</strong>, оно само компилит и возвращает специальную ссылку, которая затем используется для передачи запросов. Не помню как именно, не использовал в пыхе<br> <br> <em><span style="font-size:x-small">Добавлено через 00:57 сек.</span></em><br> 8. <strong>Кевин Митник_HHTeam</strong>, оно само преобразовывает экранируя все ненужные символы, а если точнее там исчезает необходимость в экранировании в принципе, так как спец символы просто не интерпретируются как часть запроса<br> <br> <em><span style="font-size:x-small">Добавлено через 01:30 сек.</span></em><br> 7. <strong>Vantuz</strong>, ORM не достаточно гибок как правило, лучше смотреть в сторону подобий jpql https://visavi.net/topics/36560/618801 Работа плейсхолдеров PDO Mysql Артур Tue, 05 Feb 2013 22:11:29 +0400 Сообщения https://visavi.net/topics/36560/618801 #5, вот это понял. Только не пойму, почему нигде не призывают все таки преобразовывать данные перед INSERT, UPDATE, когда они заносяться в базу. <br> <br> #7, спасибо. А какими готовыми пользуешься? Я вот в сторону Kohana ORM. https://visavi.net/topics/36560/618757 Работа плейсхолдеров PDO Mysql Кевин Митник Tue, 05 Feb 2013 19:11:43 +0400 Сообщения https://visavi.net/topics/36560/618757 сейчас уже не модно изобретать велосипеды, по возможности необходимо использовать готовые ORM https://visavi.net/topics/36560/618727 Работа плейсхолдеров PDO Mysql Вантуз-мен Tue, 05 Feb 2013 17:46:11 +0400 Сообщения https://visavi.net/topics/36560/618727 5. <strong>Башка</strong>, На сколько быстрее? Как компилировать? https://visavi.net/topics/36560/618725 Работа плейсхолдеров PDO Mysql Андрюха Tue, 05 Feb 2013 17:39:03 +0400 Сообщения https://visavi.net/topics/36560/618725 Тип данных определяется исходя из типа поля таблицы, в которую эти данные заносятся. Можно даже скомпилировать запрос так, чтобы потом СУБД не интерпретировало его, а использовало скомпиленный вариант, это ускоряет работу с СУБД https://visavi.net/topics/36560/618723 Работа плейсхолдеров PDO Mysql Артур Tue, 05 Feb 2013 17:30:21 +0400 Сообщения https://visavi.net/topics/36560/618723 да. пропускает, но запрос не ломается при использовании PS, когда я передаю спец-символы. То есть никаких там приколов с таким */, *, 1=1 не проходит. Но js код в целости и сохранности сохряняется и дальше выводиться. https://visavi.net/topics/36560/618339 Работа плейсхолдеров PDO Mysql Кевин Митник Mon, 04 Feb 2013 05:32:54 +0400 Сообщения https://visavi.net/topics/36560/618339 А ты пробовал? https://visavi.net/topics/36560/618337 Работа плейсхолдеров PDO Mysql Андрюха Mon, 04 Feb 2013 05:25:43 +0400 Сообщения https://visavi.net/topics/36560/618337 <a href="http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers" target="_blank" rel="nofollow">http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers</a> тут говориться, что обработанные данные XSS атакам не подвержены. Что же тогда пропускает js??? https://visavi.net/topics/36560/618336 Работа плейсхолдеров PDO Mysql Кевин Митник Mon, 04 Feb 2013 05:17:58 +0400 Сообщения https://visavi.net/topics/36560/618336 Доброго времени суток! Не подскажете механизм работы плейсхолдеров PDO? Гуглил, много чего нашел, вроде как даже понял, но все равно такое чувство что не до конца. <br> Что я понял:<br> 1. Подготовка выражений(prepared statements). Есть выражение, в котором нет данных, а только SQL выражение.<br> 2. Есть переменные(плейсхолдеры), которые по сути и есть данными для будущего запроса.<br> 3. PDO отправляет запрос mysql, но без данных, проверяя правильность запроса и отправляет уже данные, но в двоичном формате. Тут вообще не понятно, как проверяется? Все равно для коректности нужно отослать хотя бы тип данных и длину плейсхолдеров, для проверки. Тут вот непонятки.<br> 4. Возврат результата. Для fetch() - результат, для запроса логическое TRUE; <br> И да, многие пишут что подготовка запроса - это лишь профилактика из соображений целесности запроса.<br> Пишем, рассказываем, думаем.<br> <br> UPD Мне кажеться, или где-то читал, что плейсхолдеры не пропускают данные, которые не проходят проверку разрешенного типа, но запросто пишут уязвимый js(xss, к примеру), который запросто пишеться в text или varchar. https://visavi.net/topics/36560/618331 Работа плейсхолдеров PDO Mysql Кевин Митник Mon, 04 Feb 2013 04:23:28 +0400 Сообщения https://visavi.net/topics/36560/618331