Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Global variables, Чем они так опасны? 
:(
    Опции темы
VVp
Дата 20.2.2004, 17:31 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Народ, кто может толком объяснить, чем так опасен subj?
Я так понимаю все ведь дело лишь в "кривизне" рук программиста. Если скрипт написан правильно, опасности ведь никакой нет? Или я не прав?
  Вверх
Master
Дата 20.2.2004, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



прав.


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
nicka
Дата 23.2.2004, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 378
Регистрация: 11.6.2003

Репутация: нет
Всего: 1



А что это - subj???
PM MAIL   Вверх
[xoodo]
Дата 23.2.2004, 13:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 9.3.2003

Репутация: 1
Всего: 4



subj == subject == предмет == тема сообщения == ... И. т. д. и т. п.

Чтоб оффтопика не было, скажу, что сам всегда избегаю глобальных переменных где только можно. С локальными проще, чисто по-человечески проще отслеживать, что, куда и откуда ноги растут... Старая привычка: переменная должна быть доступна только там, где она реально нужна, и нигде более.
PM   Вверх
nicka
Дата 23.2.2004, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 378
Регистрация: 11.6.2003

Репутация: нет
Всего: 1



А какая связь между subj и глобальными переменнымиconfused.gif
PM MAIL   Вверх
[xoodo]
Дата 23.2.2004, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 9.3.2003

Репутация: 1
Всего: 4



Потому что тема называется "ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ".
Код
$subj = "ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ";
print $subj;
print "ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ";

Результат одинаковый. Следовательно, когда глазу передается копия переменной $subj, значит, передается строка "ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ".
PM   Вверх
MuToGeN
Дата 24.2.2004, 00:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



Модератор: хватит флеймить


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Master
Дата 24.2.2004, 00:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



Это кому как...
Я никогда не пренебрегал возможностью использовать глобалы....
так писанины меньше и понять потом все проще.

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


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
VVp
Дата 24.2.2004, 14:32 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вот я тоже никогда не пренебрегаю использованием ГП, мне кажется так нагляднее, а все, что связано с безопастностью идет через сессии. Вроде бы проблем никогда не было.
  Вверх
nicka
Дата 26.2.2004, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 378
Регистрация: 11.6.2003

Репутация: нет
Всего: 1



а что переменные сессии и глобальные переменные не одно и тоже?

Цитата

$subj = "ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ";
print $subj;
print "ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ";


И откуда я знала что он эту сою глобальную переменную сохранил в $subj??
PM MAIL   Вверх
Vaulter
Дата 26.2.2004, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



тут скорее не опасность, а не удобство
пишешь на одной системе с глоб переменными, закачиваешь на другой хост. а там, ОПА, и не включены глоб переменные...
облом )


--------------------
PM MAIL WWW ICQ   Вверх
IZ@TOP
Дата 26.2.2004, 18:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Цитата
тут скорее не опасность, а не удобство
пишешь на одной системе с глоб переменными, закачиваешь на другой хост. а там, ОПА, и не включены глоб переменные...
облом )
, что значит не включеныconfused.gif Это регистрация из массивов, переменных, может быть отключена, а все $_GET, $_POST, $_ETC включены всегда smile.gif

nicka, все дело в том, что если ты пишеш в названии темы, суть вопроса целиком, то вместо того что бы писать в самом сообщении то же самое, ты просто ссылаешся на название темы словом subj (можно так же САБЖ, СУБЖ... кому как нравится)...


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Vaulter
Дата 26.2.2004, 21:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



Iz@top
я про register_globals ;)


--------------------
PM MAIL WWW ICQ   Вверх
VVp
Дата 27.2.2004, 14:54 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











>>Vaulter
Собственно вопрос и возник при переносе с одного хоста на другой, конечно несложно в начале скрипта взять все переменные из _POST, но, согласись, не самое приятное занятие, по крайней мере, когда их больше 10.
  Вверх
Vaulter
Дата 27.2.2004, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



VVp
это можн сделать так:
Код

@extract($_POST, EXTR_SKIP);




--------------------
PM MAIL WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0933 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.