Forum Webscript.Ru

Программирование => PHP => Тема начата: )ender от 22 Октября 2002, 20:09:18

Название: register_globals "ЗА" и "Против"!!!
Отправлено: )ender от 22 Октября 2002, 20:09:18
у моего провы параметр в ини файле
register_globals установлен в значении Off,
версия PHP Version 4.2.3,
я ему значит говорю поставь в On мне будет удобней код писать.
Он мне говорит что читал статью, и там написано, что это не безопасно.
правда ли это? и почему?
Название: register_globals "ЗА" и "Против"!!!
Отправлено: Гаррилл от 22 Октября 2002, 21:15:13
)ender
Однозначно против. И против все.
Цитировать
я ему значит говорю поставь в On мне будет удобней код писать.

Каким образом тебе удобнее??? Что лень ставить _POST[] OR _GET[]??
А если они включены, то тебе в &new_id напишут какую-нибудь херню и если скрипт дурной, то хана.
Название: register_globals "ЗА" и "Против"!!!
Отправлено: Макс от 22 Октября 2002, 21:38:45
Цитировать
Каким образом тебе удобнее??? Что лень ставить _POST[] OR _GET[]??
А если они включены, то тебе в &new_id напишут какую-нибудь херню и если скрипт дурной, то хана.

А какая разница, что $id что $_GET[\'id\'] все равно проверять надо одинаково. И в $_GET[\'id\'] точно также могут написать всякую фигню.
Главное - не забывать, что иногда нужно unset()-ы делать и инициализацию переменных.
Название: register_globals "ЗА" и "Против"!!!
Отправлено: new от 22 Октября 2002, 21:40:55
)ender
Цитировать
ему значит говорю поставь в On мне будет удобней код писать.
Он мне говорит что читал статью, и там написано, что это не безопасно.
правда ли это? и почему?


Твой провайдер прав, но поступает он не верно и безграмотно.

Вопросы безопасности твоих программ это твоё дело, а не провайдера.

По умолчанию действительно стоит off (по умолчанию означает не обязанность, а при отсутствии php.ini).

Однако и ежу понятно, что для клиентов необходимо включить глобальные переменные.

Если я, например новичок и не уверен в корректности своих сценариев на моём личном сервере, то (хотя это всё ерунда)  при отсутствии клиентов я может быть и оставил инсталляционное значение.
Ты сам понимаешь, что это бред.

Можешь скопировать это сообщение и отправь своему провайдеру.

Если там мало мальски грамотные люди, а не "... читал статью, и там написано", то исправят свою ошибку.

В противном случае - убегай оттуда.

Если говорить о безопасности, то дырки оставляемые безграмотным провайдером более вероятны, чем твой register_globals
Название: register_globals "ЗА" и "Против"!!!
Отправлено: Tronyx от 22 Октября 2002, 21:41:07
Я тоже против "on", так безопасней.

[OFF]PS эндер не надо создавать несколько одинаковых тем в разных разделах, большинство людей просматривает их все, и тебе обязательно ответят. Я не об этой теме, а о других[/OFF]
Название: register_globals "ЗА" и "Против"!!!
Отправлено: Меняздесьдавнонет от 22 Октября 2002, 21:43:09
Гаррилл
если скрипт дурной, то регистер глобалс не спасут.

Я - за.
РНР - это простой язык простой разработки простых сайтов.
А из него хотят сделать какое-то чудовище.

Безотносительно к спору о регистер глобалс, провайдер все равно не прав. Не его дело. Его собственной безопасности это не касается, а твоя его не должна волновать.

В общем, не провайдер это, а частная лавочка.
Название: register_globals "ЗА" и "Против"!!!
Отправлено: new от 22 Октября 2002, 21:47:19
Tronyx
Цитировать
Я тоже против "on", так безопасней.


Для кого безопасней ?

Речь идёт о клиентах, и это их право решать.

Представь, что я (например фирма) за 50000 $ купил скрипт, и провайдер без предварительного уведомления изменил параметры настройки, в результате чего он просто не работает.
А это к примеру Shop или служба поддержки.

Так что речь идёт не о безопасности, а о подходе провайдера к своим клиентам. Предупреди за год- полгода и клиенты решат сами  - остаться или уйти к подходящему провайдеру.
Название: register_globals "ЗА" и "Против"!!!
Отправлено: rembo от 23 Октября 2002, 03:38:07
И еще я всегда говорил и буду говорить что возможность использования в ПХП не инициализированных переменных вовсе не означает что так надо делать. А если как и во всех нормальных языках правильно инициализировать и использовать переменные то нет совершенно никакой разницы он или оф.
И вообще как можно наделать какие-то страшные вещи путем ввода &kakixtoperemennyx=daimneparolroota незная исходного кода скрипта?
Название: register_globals "ЗА" и "Против"!!!
Отправлено: Maniac от 23 Октября 2002, 20:50:41
Однозначно за "on". Попытки сделать из элегантности PHP нечто жабоподобное (когда все где-то инкапсулировано) вообще навевают тоску. Если хакер задумает ломать сайт, то уж скорее всего будет делать это не через переменные
Название: register_globals "ЗА" и "Против"!!!
Отправлено: cat-x от 25 Октября 2002, 13:44:31
Хм. а почему не воспользоваться .htaccess
#
php_flag register_globals on
#
У меня всё что нужно работает и не надо с кодом мучиться..
Название: register_globals "ЗА" и "Против"!!!
Отправлено: 3D-Dragon от 26 Октября 2002, 06:07:17
cat-x
Правильно :)
А можно еще в начале кода вставить две строчки:

foreach($HTTP_GET_VARS as $k=>$v)
  $$k=$v;
Название: register_globals "ЗА" и "Против"!!!
Отправлено: Макс от 26 Октября 2002, 14:40:48
cat-x
не все хостеры разрешаеют это


3D-Dragon
extract($_GET);
Название: register_globals "ЗА" и "Против"!!!
Отправлено: )ender от 26 Октября 2002, 15:16:15
У меня хостер не разрешает юзать .htaccess