[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Флуд от темы "Реабилитация после курсов Попова"
Страницы: 1, 2, 3, 4, 5, 6, 7, 8
twin
Это старая история. Сначала были три вида дескрипторов. Такой - <?php, попроще: <? и еще так называемый шорт-тег <?= . Он служит немного не для того, однако попал в этот заамес. Но дело в том, что XML тоже использует такой значек <? и получилась неоднозначность. Всвязи с чем разработчики PHP одно время заявили, что в дальнейших версиях короткие теги не будут реализованы. И все стали предупреждать, что пользоваться ими чревато, так как при переходе на новую версию PHP скрипты могут тупо полечь.

Но через некоторое время они одумались и вытащили шорт-тег <?= из под опалы, ибо это оказалось действительно удобно и ни чему не противоречило.

Так вот статью я писал как раз тогда, когда шорт-тег был гоним. Вот от того MiksIr и настучал себе кувалдометром по голове: user posted image

Убрал я это с сайта, это действительно сейчас неуместно. А насчет остального... Фиг знает чего ему не понравилось. История умалчивает.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
zvezda_t
twin, значит всё таки можно, ну Слава Богу)))
Благодарю, за пояснение! rolleyes.gif


_____________

Что ты сделал сегодня - для завтра?
"Приидите ко Мне вси труждающиеся и обремененнии и Аз упокою вы, возмите иго Мое на себе и научитеся от Мене яко кроток есмь и смирен сердцем и обрящете покой душам вашим, иго бо Мое благо и бремя Мое легко есть."(Мф. 11:28-30)
GET
zvezda_t

Начиная с PHP 5.4 короткие теги <?=$a?> — это стандарт (включены по умолчанию), они всегда доступны и пользоваться ими — хорошо.

_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
killer8080
Цитата (twin @ 31.01.2014 - 06:58)
Сначала были три вида дескрипторов. Такой - <?php, попроще: <?  и еще так называемый шорт-тег <?=

не совсем, есть еще одна бесполезная конструкция
<script language="php"></script>
эквивалентно
<?php ?>
причем допускаются разные комбинации, например
<script language="php"> ?>
<?php </script>

Зачем разрабы добавляли эту конструкцию, для меня до сих пор загадка, реально бесполезная вещь, ни разу не видел чтоб кто то её использовал на практике. Хотя одно вредоносное применение у неё есть... rolleyes.gif

Вообще проблема коротких тегов возникла на ровном месте. Вся проблема в том, что после <? парсер не требует наличие пробельного символа, в отличии от <?php. Отсюда и коллизии с <?xml. Сами создали проблему, а потом героически с ней боролись. Хорошо хоть хватило здравого смысла, и наконец с<?= сняли табу smile.gif
twin
Цитата
Ну например то, что постоянно смешиваете глобальные переменные и проблемы register_globals.
Что за ересь... Причем тут register_globals? Я имел ввиду функцию session_register(), которая, следуя мануалу регистрирует глобальную переменную:
Цитата
For each name, session_register() registers the global variable with that name in the current session.
А это плохо, или станете возражать?

Ровно как я до сих пор не понял вашей претензии к определению IP.

Ваш бледный вид не от того, что вы не особо разобрались. А от того, что преподнесли это в ключе Бугага. Причем обвинив меня же в ПМС. Кто это начал то... У кого давление повысилось...

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
twin
Да, я сказал дырка. Именно в этом скрипте это дырка и есть.
Там элемент сессии регистрируется в массиве $GLOBALS с помощью session_register(), а потом используется глобальная переменная. Это ясно видно из скрипта, на что я и указал. И хотя явного включения register_globals в скрипте нет (о чем я позже тоже написал), скрипт может работать только в его положении ON. А это дырка, самая что нинаесть.

Да, может быть я не на столь подробно это расписал, что можно попытаться придраться к словам. Но по сути тут нет ошибки. По сути все верно.

Что касается IP.

Я не зря попросил вникнуть в логику. Не просто сделать поверхностный вывод. Я уже как то приводил пример поверхностной логики. Кого проще победить, боксера или бегуна? Поверхностная логика - бегуна конечно. А если вникнуть, то пулучается наоборот. Если бегун сильнее - от него не убежишь. А если слабее - хрен догонишь.

Так и тут.

Я ничего не подменял. Нужно просто вникнуть. Если HTTP_X_FORWARDED_FOR не пуст, то имеем налицо криворукого админа или прокси. Соответственно там и есть искомый IP. REMOTE_ADDR на пустоту проверять нельзя, так как там обязательно что-то есть. В случае криворукости там может быть либо 127.0.0.1, либо IP сервера. Либо еще чего, зависит от степени криворукости. Но если там IP пользователя, как и положено, HTTP_X_FORWARDED_FOR наверняка будет пустым. И в выражении
Цитата
Или хотя бы сделать так:
ключевое слово хотя бы.

Я бы не акцентировался на этом, если бы сам несколько раз не попался.

Что касается безопасности - в этом скрипте это неактуально. А там, где актуально, я приводил примеры проверок.

Ну и контрольный в голову. Это метод определения IP из ZEND-фреймворка
    public function getClientIp($checkProxy = true)
{
if ($checkProxy && $this->getServer('HTTP_CLIENT_IP') != null) {
$ip = $this->getServer('HTTP_CLIENT_IP');
} else if ($checkProxy && $this->getServer('HTTP_X_FORWARDED_FOR') != null) {
$ip = $this->getServer('HTTP_X_FORWARDED_FOR');
} else {
$ip = $this->getServer('REMOTE_ADDR');
}

return $ip;
}
Ничего не напоминает? Или им тоже нужно смайлик впендюрить?

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.