Сообщений: 3
Тем: 1
Зарегистрирован: Nov 2010
Репутация:
0
Владею как ООП(В данный момент разбираю работу роутера+контроллеров), так и процедурным видом написания.
Красивый и понятный стиль написания кода, практикуюсь каждый день.
А также:
* Правим ошибки
* Переписываем быдло код
Контакты:
* SITE: http://asuma.ru/
* ICQ: 473364
* MAIL: 473364@gmail.com
Сообщений: 123
Тем: 2
Зарегистрирован: Sep 2008
Репутация:
1,861
11-14-2010, 04:10 PM
(Сообщение последний раз редактировалось: 11-14-2010, 05:21 PM Blakkky.)
1. Зачем нужны интерфейсы в PHP?
2. Чем PDO лучше mysqli и чем хуже?
3. Зачем в PHP нужен ReflectionClass?
4. Что такое MVC и в чем опасность его применения?
5. В чем и при каких условиях могут быть проблемы у данного кода, как их исправить:
PHP код: <?php
$sql = "SELECT `field1`, `field2` FROM `my_table` WHERE `id` = '" . addslashes($_GET['id']) . "'";
$result = mysql_query($sql);
..........
Если ответы меня устроят, нам будет о чем поговорить
Сообщений: 430
Тем: 7
Зарегистрирован: Dec 2009
Репутация:
5,551
Оффтоп
Blakkky Написал:Если ответы меня устроят, нам будет о чем поговорить
Такие вопросы лучьше лично задавать. В ICQ например Google рулит... 10-15 минут поиска и все, ответы в кармане...
Сообщений: 3
Тем: 1
Зарегистрирован: Nov 2010
Репутация:
0
Blakkky Написал:1. Зачем нужны интерфейсы в PHP?
2. Чем PDO лучше mysqli и чем хуже?
3. Зачем в PHP нужен ReflectionClass?
4. Что такое MVC и в чем опасность его применения?
5. В чем и при каких условиях могут быть проблемы у данного кода, как их исправить:
PHP код: <?php
$sql = "SELECT `field1`, `field2` FROM `my_table` WHERE `id` = '" . addslashes($_GET['id']) . "'";
$result = mysql_query($sql);
..........
Если ответы меня устроят, нам будет о чем поговорить
Эх, специфичные вопросы задал, как раз с тем, с чем я не работаю.
Ну ладно, попробую ответить.
1.В PHP можно обойтись и без них, в других языках, таких как допустим C# они нужны для типизации данных.
2.PDO автоматический фильтрует запросы, + он более свежий, и поддерживает большинство баз данных.
3.Позволяет получить всю информацию о объекте.
4.Model-View-Controller, в данный момент я только знакомлюсь с этой системой.
5.Если magic_quotes_gpc = on, то addslashes не нужны.
Сообщений: 430
Тем: 7
Зарегистрирован: Dec 2009
Репутация:
5,551
Asuma Написал:5.Если magic_quotes_gpc = on, то addslashes не нужны.
А как на счет sql injection?
Сообщений: 187
Тем: 12
Зарегистрирован: Mar 2010
Репутация:
111
11-14-2010, 05:39 PM
(Сообщение последний раз редактировалось: 11-14-2010, 05:40 PM noith.)
Asuma Написал:Эх, специфичные вопросы задал, как раз с тем, с чем я не работаю.
Ну ладно, попробую ответить.
1.В PHP можно обойтись и без них, в других языках, таких как допустим C# они нужны для типизации данных.
2.PDO автоматический фильтрует запросы, + он более свежий, и поддерживает большинство баз данных.
3.Позволяет получить всю информацию о объекте.
4.Model-View-Controller, в данный момент я только знакомлюсь с этой системой.
5.Если magic_quotes_gpc = on, то addslashes не нужны.
1) даже больше, в пхп они бесполезные, ведь есть абстрактные классы
2)при всех этих +, mysqli одним своим перечеркивает их все (скоростью)
3)в пхп по факту бесполезен
4) на сколько я понял это паттерн програмирования (модель, отображение, контроллер). модель обрабатывает данные внутри приложения, контроллер обрабатывает запросы пользователя, отображение выдает результат. работает по схеме контролер->модель->отображение
5)addslashes пропускает некоторые символы, помоему % например
Blakkky поговори со мной плз
Добавлено через 48 секунд
Navvy Написал:А как на счет sql injection?
а magic_quotes автоматом экранирует все входящие данные
Сообщений: 3
Тем: 1
Зарегистрирован: Nov 2010
Репутация:
0
Вообщем, контакты я оставил, если что - могу помочь новичкам за бесплатно.
Всем пока!
Сообщений: 123
Тем: 2
Зарегистрирован: Sep 2008
Репутация:
1,861
Asuma Написал:1.В PHP можно обойтись и без них, в других языках, таких как допустим C# они нужны для типизации данных. На самом деле для меня самого загадка, зачем в скриптовом, интерпретируемом языке без жесткой типизации они нужны, очень похоже, что когда в php сливали ООП с явы их перенесли "чтобы было". На практике не используются и только понижают производительность.
Asuma Написал:2.PDO автоматический фильтрует запросы, + он более свежий, и поддерживает большинство баз данных. PDO почти в два раз медленнее чем mysqli, единственный плюс PDO - это относительная переносимость между базами (да и то, только при схожем синтаксисе SQLя, если надо перенести сложное приложение (с автогенерацией временных бтаблиц, отображений и большим количеством сложных join-ов и условий) с mysql на oracle все-равно придется переписывать запросы). Кстати, prepared statement-ы есть и в mysqli.
Asuma Написал:3.Позволяет получить всю информацию о объекте. Опять же, по факту, бесполезен. Ведь типизации, как таковой, как не было в php, так и нет, а объект по имени класса можно и с помощью $class = "MyClass"; $obj = new $class; создать.
Asuma Написал:4.Model-View-Controller, в данный момент я только знакомлюсь с этой системой. Аббревиатуру отгуглить не проблема Основная проблема данного паттерна в чем?
Asuma Написал:5.Если magic_quotes_gpc = on, то addslashes не нужны. Ну совсем уж банальные варианты рассматривать не надо, естественно, что где-то выше проверено на наличие $_GET['id'] и на выключенность magic_quotes. Вопрос именно к инъектонеустойчивости этой функции при определенном стечение обстоятельств был.
2Navvy: Ну как видишь, не все сумели отгуглить
2noith: А с тобой мы и так общаемся постоянно
Сообщений: 187
Тем: 12
Зарегистрирован: Mar 2010
Репутация:
111
блин, а я думал шифранулся
Сообщений: 58
Тем: 9
Зарегистрирован: May 2010
Blakkky
понт засчитан, молодец!
|