LINUX.ORG.RU

Ответ на: комментарий от heisenberg

Я уже сотню раз встречал такое, у меня при установке веб-сервиса спрашивают e-mail для уведомлений, я пишу root@localhost, а мне говорят, что этот емайл НЕПРАВИЛЬНЫЙ? С какого это вдруг перепою он неправильный?

movietrouble ()

Я понимаю, что большинство писак на php сидят в windows, думают, что linux существует только на хостингах и заливается только через ftp, но когда и на питоне такое...

movietrouble ()
Ответ на: комментарий от movietrouble

дело не в пхп или питоне, дело в разрабе. вот регулярка, парсящая емайл согласно rfc822: http://www.ex-parrot.com/pdw/Mail-RFC822-Address.html думаешь, кто-то будет так заморачиваться? гораздо проще проверить, что в емайле есть @ и домен оканчивается на \.[[:alnum:]]{2,3}

heisenberg ★★ ()
Ответ на: комментарий от movietrouble

>Я понимаю, что большинство писак на php сидят в windows
а эта толстая попытка троллинга вызывает лишь снисходительную улыбку

heisenberg ★★ ()
Ответ на: комментарий от heisenberg

Так почему так не делают? Ну и проверяй, есть собака или нет, и всё. В чём смысл проверять все эти точки-крючочки, всё равно, действительный ли это адрес, ты не проверишь?

movietrouble ()
Ответ на: комментарий от movietrouble

>ак почему так не делают? Ну и проверяй, есть собака или нет, и всё.

и что надо нажать, чтобы вбить им в голову вот это http://tools.ietf.org/html/rfc822

все понятно с тобой. я ухожу из этого треда. все свободны, всем спасибо

heisenberg ★★ ()
Ответ на: комментарий от helios

Смысл таинства можно объяснить? Помнится, при появлении домена .museum многие такие скрипты перестали работать. И так они не пускают много валидных адресов. С какой целью они применяются, если они валидные адреса не пропускают?

movietrouble ()

думаю в этой теме ещё можно развести горячую полемеку про тех PHP-программистов которые пишут:

...
$return_html .= "<a href=\"${link}\">${label}</a>";
...

а не:

...
$return_html .= sprintf('<a href="%s">%s</a>', htmlspecialchars($link), htmlspecialchars($label));
...

всеголишь по той простой причине — что первый вариант быстрее.. и пофигу что он в результате нарушает спецификацию HTML-кода (если внутри переменных возникают определённые символы... такие как «&»)

(а если какойто отрывок кода приводит в конечном итоге к XSS-атаке — то PHP-программист найдёт кусок кода который связан с внешним аргументом.. и ТОЛЬКО ЕГО исправит (вместо того чтобы занова переписать всю PHP-программу но на этот раз правильно)

----------

или ещё можно обсудить проблему что некоторые PHP-программисты когда извлекают аргументы из GET/POST-запроса .. то пишут так:

...
      $arg_value = $_GET['имя_аргумента'];
// вместо того чтобы написать так:
//    $arg_value = stripslashes($_GET['имя_аргумента']);
...

и в результате чего пользователь Www-приложения уже не может нормально использовать ковычки когда заполняяет форму

---------

...блин.. всех этих вещщей просто дофигищща, которые просто раздражают!! но тем не менее большенство Www-поделок просто изобилует подобными ляпами :-)

mkfifo ()
Ответ на: комментарий от mkfifo

Вы, я смотрю, просто спец по php. Менее ресураозатнатно и не менее безопасно будет произвести простую конкатенацию строк, с теми же почищенными переменными, хотя вами верно замечено, что двойные кавычки стоит применять только в крайнем случае.
Стрипслешес вообще не нужен - никто адекватный уже давно магикквотез не использует.

Ну а выброс автора по поводу php неадекватен так же, как и прочее его брызганье слюной в этой теме. Да и не только в этой - не зря его уже банили за толстоту.

avol ()
Ответ на: комментарий от avol

> Ну а выброс автора по поводу php неадекватен так же, как и прочее его брызганье слюной в этой теме.

«Вброс» и «брызганье слюной» - это не ко мне.

Но разумеется, это проще ответить, чем разумно объяснить, какой смысл проверять таким фильтром, который не может сам решить, а существующий ли это ящик, зато отсекает многие корректные адреса - что и кому это даёт.

И причём тут PHP вообще, или Python? Почему это написано на PHP так, я понимаю, потому что на php многие начинают писать тогда, когда «пацаны за семками посоветовали», то есть без малейшего опыта и понимания, что именно делается. Но почему это делается ВЕЗДЕ? Ты можешь без своей дежурной тупизны ответить?

movietrouble ()
Ответ на: комментарий от mkfifo

Да, это делают, потому что проще.

Но ведь проверить на точку - это же нифига не проще, чем просто проверить, есть 'эт' или нет. Я же говорю, когда со всякими .museum хохма выходила, когда в куче таких скриптов было жёстко забито 2-4 символа в конце. Вот мне и интересно, зачем вообще так заморачиваться?

movietrouble ()

Нажать надо на кнопку включения бензопилы, а потом голову-то и отпилить.

Большинство товарищей про RFC ваще не слахали, а проверку мыла копипастали из учебника по регэкпам, гарантирую!
Причем значительная часть так и не поняла зачем это нужно, кроме того что нужно.

stevejobs ★★★★☆ ()
Ответ на: комментарий от mkfifo

> $return_html .= sprintf('<a href=«%s»>%s</a>', htmlspecialchars($link), htmlspecialchars($label));

и пофигу что он в результате нарушает спецификацию HTML-кода


нах вообще в генерации представления (html) работать с данными? А если там еще больше проверок понадобится кроме special chars, или какие-то дополнительные данные?

имхо правильнее иметь что-нибудь типа метода getResourceAsString(String resourcePath), которая будет возвращать валидную строку. Плюс это хорошо расширяется на локализацию, и всегда можно поменять источник строк.

stevejobs ★★★★☆ ()
Ответ на: комментарий от avol

> Стрипслешес вообще не нужен - никто адекватный уже давно магикквотез не использует.

«магикквотез» в конфигурации PHP по умолчанию

и если он не используется — то почемуже стоит мне только на какомнить форуме в разделе «о себе» написать ковычку <«> так она сразу превращается в какоето гавно?

mkfifo ()
Ответ на: комментарий от stevejobs

> нах вообще в генерации представления (html) работать с данными? ...

я согласен — это отстой и тупо..

например, шаблонизатор Django сам занимается экранированием HTML-фигнющек (если его не попросили НЕ делать экранирование)

mkfifo ()
Ответ на: комментарий от movietrouble

> Да, это делают, потому что проще.



Но ведь проверить на точку - это же нифига не проще, чем просто проверить, есть 'эт' или нет.



дауж :-) .. про проверку на валидность мыла — это просто верх дибилизма

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

mkfifo ()
Ответ на: комментарий от mkfifo

> «магикквотез» в конфигурации PHP по умолчанию

4.2 уже давно нет.

и если он не используется — то почемуже стоит мне только на какомнить форуме в разделе «о себе» написать ковычку <«> так она сразу превращается в какоето гавно?


Потому что многие форумы написаны под древнюю версию и быдлокодерами и требуют древние ошибочные настройки.
Но php тут не виноват — с 5-й версии это вполне приличный язык. Да и 4-й был тоже вполне вменяем.

avol ()

(=

Лечил-то как?

Прописывал

127.0.0.1 localhost.net

или

127.0.0.1 mydomain.net

?)

Или просто левый прописывал? А если root@гоги.рф ?

Это напоминает ещё проверку на валидность телефонных номеров. Чёрточки там, скобочки ))))

Присоединяюсь к ТС и трансформирую потоки и лучи ненависти в письма счастья с пожеланиями долгой и мучительной смерти всем быдло-скрипто-кодерам =).

m4n71k0r ()
Ответ на: (= от m4n71k0r

Тут не лечить нужно, а венки плести и музыку заказывать.

movietrouble ()
Ответ на: комментарий от avol

> 4.2 уже давно нет.

извеняюсь.. :-) действительно [щаз проверил] — поумолчанию теперь это убрали. АЛИЛУЯ!!! С РАЗМОРОЗКОЙ МЕНЯ! :-) :-D

..хотя головной боли для PHP-программистов — это только добавляет — так как теперь приходиться перед тем как извеч GET/POST — ещё и проверять каким способом извлекасть (в зависимости от «get_magic_quotes_gpc()» ...)

(ну тоесть делать очередную функцию-обёртку.. в данном случае: для извлечения $_GET и $_POST . ведь неизвестно какая очередная конйигурация на очередном говно-хостинге)

с 5-й версии это вполне приличный язык ..


ну начиная с версии 5.3 (но не 5.2 и ранее) — какоето подобие приличности в языке действительно появляется :-) ...
теперь можно не срать классами/функциями в глобалььное пространство имён, а ауукратно всё делрать в разных пространствах имён .. +замыкания (а значить теперь казатели на функции, оформленные ввиде замыкания — теперь уже не выглядят как чтото-мега-уродское-запускаемое-через-«call_user_func(..)»)

...но так как все говно-хостеры (кроме localhost ;)) предлагают PHP-5.2 или ранее — то делая PHP-говно-www-программу — приходиться как забыть о том что такое приличность....

..ну и сёравно даже в 5.3-виде PHP всё ещё остаётся средой способствующей и поощряющей генерацию ошибок и дыр :-)

mkfifo ()
Ответ на: комментарий от heisenberg

>вот регулярка, парсящая емайл согласно rfc822:

Заржал в голос перед монитором.

YogSagot ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.