За последние 24 часа нас посетили 22042 программиста и 988 роботов. Сейчас ищут 711 программистов ...

Потральная система в одном файле.

Тема в разделе "Решения, алгоритмы", создана пользователем mpak, 19 сен 2010.

Статус темы:
Закрыта.
  1. iliavlad

    iliavlad Активный пользователь

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    это хорошо. может только стоит немного изменить фразу "Для меня лично не имеет значение будет одна большая строка, написанная мной, или четыре маленьких."

    кстати, а где делается проверка, что $_GET['id'] не пустой или не содержит DROP TABLES students --?
     
  2. admyx

    admyx Активный пользователь

    С нами с:
    14 мар 2008
    Сообщения:
    2.159
    Симпатии:
    1
    lexa
    Да я вроде не маленький обижаться)))
    С иссетом там я затупил, не спорю. Надо поспать.

    Ну вот смотри. Тесты же проводились.
    Вот же ссылка: http://www.php.ru/forum/viewtopic.php?p=162482#162482

    Да и сам сейчас ради интереса чисто текстовый скриптик написал.
    Незначительно, но увеличивается. С одним notice.
    А если их несколько?
    И каждый пишется в лог?

    p.s. notice таки ошибка, только своего "уровня"
     
  3. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.553
    Симпатии:
    631
    Короче
    http://php.net/manual/en/errorfunc.constants.html
    Код (Text):
    1. E_NOTICE (integer)  Run-time notices. Indicate that the script encountered something that could indicate an error, but could also happen in the normal course of running a script.  
    Нотис - сообщение о потенциальной ошибке.
     
  4. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Fatal Error, это когда пых говорит нам - я ваще не понимаю что тут делать, идите в попу, я отключаюсь!
    А Notice - чо за хня? я в принципе могу продолжить, но не факт, что так как тебе хотелось бы.
    Так что Notice нужно гнать ссаными тряпками.
     
  5. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    $_GET['id'] перед установкой значения в запрос он приводит к интовому значенияю (int)$_GET['id'];
    Считаю это действие достаточно безопасным для установки в запрос. Сразу видно тип знаения. Просто и красиво.

    Вообще я думал кто нибудь хоть один вопрос по файлу системы задась. Может попробует. А тут снова разговор зашел про нотайсы и плюсыминусы ООП. Как большая часть предыдущих тем. Предлагаю Нотайсы и ООП объявить словами паразитами которые убивают любую тему.
     
  6. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    mpak

    Сорри, за оффтоп.

    Если ты не понимаешь для чего нужна абстакция и ООП не используй их. Но и не надо доказывать, что они вообще не нужны.
     
  7. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    Прочитай сообщения выше. Пишите на чем угодно. Но и мне предоставьте возможность писать на том на чем мне удобно. Не пихайте его везде во все и всем по поводу и без. А то что он не удобный это утверждаю не только я. Много хороших разработчиков считают его неудобным. Насколько помню сам разработчик ООП призначался что делал это на заказ для какой то фирм. И реальной выгоды от него не видит. Если понадобится я могу найти это утверждение. Слова создателя линукса про то что С++ не удобен относительно С я привел выше. Соглашаться с этими утверждениями или считать себя умнее тех кто это утверждает уже ваше дело.

    Я не используею его не потому что считаю его не правильным а потому что он мне не удобен и некомфортен. Выбор на чем писать должен делать сам разработчик исходя из своих
     
  8. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    mpak
    хорошо держишься. действительно стало интересно, что там за система :-D

    хоть я за то, чтобы писать код с использованием error_reporting (E_ALL);
     
  9. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    http://mpak.su/news/611 Это новость. и http://mpak.su/pages/pid:526 описание того для чего нужна и как устанавливать.

    ТОлько я не журналист и моя манера изложения вопроса оставляет желать лучшего.
    В настроящий момент на системе уже созданы десятки сайтов в том числе несколько госучредждений.

    Возможность использования системы в одном файле лично для меня очень удобна. Так как оставляет возможность менять функционал не затрагивая базовой системы. Это просто трансформер. Позволяет конструировать с системы все что угодно.

    Несколько сайтов сделанных на системе можно посмотреть здесь http://shop.mpak.su/portfolio но это далеко не весь список. На сервере расположено более 200 сайтов.
     
  10. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Ссылки в студию
     
  11. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Приведите слова линукса, про то, что Notic'ы рулят.

    СПЕРВА ДОБЕЙСЯ!

    Вы вольны использовать что хотите и как хотите. Но если проповедуете свои богомерзкие идеи в этом рассаднике неокрепших умов, будьте готовы к тому, что встретите неприятие.
     
  12. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    А про нотайсы. У меня есть свои причины на то чтобы не ставить их в дальнейшем и почему не исправляю сейчас. Сложно сформулировать но я попробую.

    Считаю что подстраиваться под особенности реализации какого то продукта порочной практикой. Использование дополнительных как я считаю конструкций это излишние нагромождения плохо отражающиеся на чистоте кода. У меня как бы расставлены другие приоритеты. Часто нужно делать более чистый код возможно даже в ущерб быстродействию. В данном случае нотайсы это проблема пхп которую допускаю что через пару версия либо совсем испрвят или сведут на к совсем несущественным пределам. А использование в коде ненужных конструкций и функция таких как обьявление пустых массивов и empty($_POST) как собственно и сама привычка их использовать останется. По быстродействию 100000 таких нотайсов выполняется за сотые доли секунды. И если я знаю что подобная конструкция используется в коде один раз а не в цикле то затратами можно принебречь простоте и наглядности. Есть еще пару моментов которые стоит освятить такие как наследственность. Код с дополнительными функциями и проверками более подвержен особенностям реализации и ошибкам в связи с усановкой новых версий продука. Не думали о том что будет если завтра обьявят функцию empty() - Deprecated: Function оп. Подозреваю что вам легче будет смыть весь предыдущий код в унитаз чем исправить все эти нагромождения.

    В общем мое мнение не сформировано одним фактом быстродействием. Оно сформировано множеством других факторов. Возможно в дальнейшем мнение и изменится. Но в настоящий момент оно такое и я не вижу причин его менять.
     
  13. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Noticы, кстати, на быстродействии сказываются весьма пагубно.

    Лишняя проверка также выполняется за микросекунды, но именно она является путём к чистому коду.

    Это не проблема PHP и её не исправят. Это проблема проверки данных, приходящих из неконтролируемого источника.
     
  14. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    Отсутствие лишних и ненужных частей является путем к чистому коду. А по пагубности считаю ООП более вредным нотайсам так как нотайсы для мозгов не вредны а ООП ломает его напрочь.
     
  15. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Путём к чистому коду является чистый экран без кода. Вот там точно никаких лишних частей нет, раз для вас проверка данных является лишней.

    Либо ваш мозг не приспособлен конкретно к этому, либо просто вам не повезло в изучении.
     
  16. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.553
    Симпатии:
    631
    mpak
    А как же мнение разработчиков php ввиде пары мегабайт ооп-кода в ZF?
     
  17. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    Отличае вас от меня является в том что я не навязываю вам свою позицию.
    Оставляя выбор в средствах работы за каждым кто с ними работает.
    Вы ставите свою позицию как единcтвенно правильную насаждая другим свое мнение и не принимая во внимания мнения других достаточно авторитетных людей.
     
  18. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Я вам не навязываю ничего, я просто флеймлю.
    Когда я выкладываю какую-нибудь свою чепуху, я всегда готов, что набегут флудерасты, да ещё мр.Мит подтянется с ведром какашек. Будьте готовы и вы.
     
  19. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    И, кстати, хватит писать чепуху про авторитетных людей, снабжая текст вырванными из контекста фразами.
     
  20. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Да, и я тоже участвовал когда-то в потральной системе, на которой так же были созданы сотни сайтов, сайтов госучереждений и тра-ла-ла.
    Но ни это количество, ни моё участие, не мешаю мне понимать, что эта система была ср.ным говн.м.
     
  21. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Мой пост про ссылки тоже проигнорирован, так что очень похоже - товарищ mpak обычный пиздобол
     
  22. admyx

    admyx Активный пользователь

    С нами с:
    14 мар 2008
    Сообщения:
    2.159
    Симпатии:
    1
    mpak
    Вы, конечно, вольны писать так, как считаете нужным.
    Хорошо, Вы можете не использовать ООП, в конце концов, php это не руби.

    Но, я считаю, что стоит принимать во внимание такие обыденные вещи, как "проверка данных, приходящих из неконтролируемого источника" и "отсутствие ошибок, даже уровня notice, в коде".
    Аргументация и факты приведены выше.
     
  23. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    "проверка данных, приходящих из неконтролируемого источника"

    Приведите пример в котором они у меня остаются безконтрольными.
    Если это делается без использования трехэтажных классов и функция это не значит что они совсем не контролируются. Все данные поступившие от пользователя приводятся к нужными типам. И этого более чем достаточно для безопасной работы. Я часто даже перестраховываюсь приводя к нужному типу данные полученные из бд поля id это не параноя. Это перестраховка на случае каких то преобразований данного значения внутри кода и неверной работы функций. Опять же выполнение общего подхода в ущерб быстродействию. Хотя думаю что любая другая используемая функция на порядок медленнее банального (int)

    А про нотайсы я написал выше. Опять же кто то может согласится а кто то нет. Это право каждого.
     
  24. admyx

    admyx Активный пользователь

    С нами с:
    14 мар 2008
    Сообщения:
    2.159
    Симпатии:
    1
    Я умываю руки.
     
  25. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    Было бы интереснее обсудить формат архива phar Возможно кто то уже использовал его для своих продуктов. Какие впечатления?

    В процессе настроки возникла проблема может кто то поможет.

    .htaccess

    Код (Text):
    1. <IfModule mod_rewrite.c>
    2.     RewriteEngine On
    3.     RewriteCond mpak.phar/%{REQUEST_FILENAME} !-f
    4.     RewriteRule ^(.*)$ /mpak.phar [QSA,L]
    5. </IfModule>
    Вызывает ошибку. Не получается подставить перенаправление запросов на ресурсы внутрь архива. Как можно решить эту траблу? Пришлось делать модуль который динамикой отдает ресурсы. Решение подобной проблемы пока не нашел. Вызов index.php внутри архива работает нормально а перенаправить запрос на картинку внутри архива не получается.
     
Статус темы:
Закрыта.