За последние 24 часа нас посетили 35499 программистов и 1819 роботов. Сейчас ищут 832 программиста ...

Пишу приложение на Phalcon

Тема в разделе "PHP для новичков", создана пользователем abler98, 12 окт 2014.

  1. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    Это мое первое приложение на framework'е, и мне почему-то кажется, что я пишу г. код) Вот даю исходники одного файла, можно кто-то что-то подскажет :)
    https://github.com/abler98/work1
     
  2. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
  3. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    До GIT я еще не дошел))
     
  4. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    Поднимаю
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Ты уже дошел до гита? :D
     
  6. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    Нет, только разглядел его вдали)
     
  7. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    тут юзера придирчивые, подними репозиторий на гит и выложи
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Из IDE можно закинуть и без репы. Gist называется. Как раз чтобы друзьям показывать.
     
  9. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    Ладно, может до завтра смогу выполнить вашу просьбу) Потом и подниму тему!
     
  10. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    1. Ставишь GIT http://git-scm.com/book/ru/%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D ... %D0%B0-Git
    2. Открываешь консольку, добираешься до каталога с проектом, пишешь там:
    Код (Text):
    1.  
    2. git init
    3. git add .
    4. git commit -m "init"
    3. Идешь на гитхаб, заводишь там аккаунт, создаешь репозиторий, пишешь команды какие скажут, типа:
    Код (Text):
    1.  
    2. git remote add origin https://github.com/user/repo.git
    3. git push origin master
    Далее начинаешь читать справку )
     
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ставишь шторм, нажимаешь "create gist" и файл улетает. =)
     
  12. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    Держите, таблицы там есть, настройки в файле public/index.php
    https://github.com/abler98/work1

    У скрипта очень много багов, это все я конечно доработаю! Если хотите протестировать форум, тогда НАСТОЯТЕЛЬНО РЕКОМЕНДУЮ сначала пройти там авторизацию - abler98:12345678
    Просто я еще с правами не разобрался, там столько лишнего намудрил :D
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    пароли к бд, адреса серверов кеша, криптовая солька и че там еще - всё в коде прописано. вытащи в конфиг.

    Зачем ограничивать время жизни кеша? Не надо это, он в конфиге определенным размером оперативки ограничен и хватит этого. Если хочешь, чтобы данные были свежими - их надо обновлять когда надо, а не раз в сутки херить.
     
  14. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    Понял, все что настраивается - выносить в конфиги, а кэш я пока просто опробовал, потом почитаю доки и буду применять кэширование в нужных местах :)
     
  15. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Код (Text):
    1. {{ form('diaries/create') }}
    не знаю синтаксиса всей этой фигни, но предполагаю, что пути лучше задавать от корня.
     
  16. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    Нет, там автоматом добавляется base uri, который настраивается в public/index.php :)
    Код (PHP):
    1. $di->set('url', function () {
    2.     $url = new Phalcon\Mvc\Url();
    3.     $url->setBaseUri('/');
    4.     return $url;
    5. });
    Добавлено спустя 3 минуты 36 секунд:
    Меня больше всего интересует критика по файлу app/controllers/ForumsController.php :)
     
  17. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Код (Text):
    1. '<a href="/comm/'.$comm->id.'">'.$comm->name.'</a>
    где экранирование хтмл сущностей? оно есть там? если нету - надо защищать.

    Добавлено спустя 31 секунду:
    Код (Text):
    1. $this->flash->error('Данная тема не найдена!');
    другой язык кроме русского не планируется?

    Добавлено спустя 33 секунды:
    Код (Text):
    1. $this->flash->success('Ваш комментарий успешно добавлен!');
    может аяксом? нафига это всё древнее тащить в XXI век?

    Добавлено спустя 56 секунд:
    Код (Text):
    1. $this->flash->error('Вы не можете комментировать эту запись!');
    Не надо кричать на человеков. Восклицательные знаки нужно использовать только тогда, когда нужно!

    Добавлено спустя 21 секунду:
    Код (Text):
    1. $this->flash->error('Категория не найдена!');
    боже мой! мы все умрём! чтожи делать!

    Добавлено спустя 1 минуту:
    косяков не углядел.
     
  18. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    - Точно, забыл экранировать)) Огромное спасибо, это очень важно :)
    - А как можно сделать подобное? Просто такие сообщения хранятся между запросами (в основном) и я не знаю как такое сделать на js :)
     
  19. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ну не обязательно на js. Можно на php, просто надо в какие-то языковые файлы это выносить. но пока можно не торопиться конечно. а потом если хотите популярности, то придётся.
     
  20. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    - Будет только русский язык
    - С восклицательным знаком лучше смотрится, но если без него правильней - уберу их везде :)

    Добавлено спустя 3 минуты 16 секунд:
    Сайт будет больше предназначен для мобильных устройств, в WAP'e не принято на сайте использовать JS (шутка) :D Что-то с этим придумаю :)
     
  21. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    Как по ощущениям, сильно быстрее чистого пыха пашет?

    Добавлено спустя 3 минуты 8 секунд:
    Автолоадера там нет никакого чтоль? почему каждый класс через new?

    Код (PHP):
    1.             new PresenceOf(array(
    2.                 'message' => 'Вы не ввели заголовок!',
    3.                 'cancelOnFail' => true
    4.             )),
    5.             new StringLength(array(
    6.                 'max' => 50,
    7.                 'messageMaximum' => 'Превышена максимальная длина заголовка!',
    8.                 'cancelOnFail' => true
    9.             )),
    10.  
     
  22. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    На локалке заметить разницу нельзя, у меня если подключиться к БД и выполнить один запрос, то генерация будет где-то 0.5 и больше (даже на процедурке), потом проверю на сервере :) И я почему-то думал, что быстрее процедурки ничего нет))

    Добавлено спустя 2 минуты 23 секунды:
    Как нет? Он есть, просто так задумано, каждый валидатор - новый экземпляр класса, ну или как-то так :) Это не очень удобно, но зато можно легко создавать свои валидаторы :)
     
  23. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    abler98 очень прошу, как будут какие то результаты на реальном сервере, пожалуйста отпишитесь.

    у меня не праздный интерес, есть достаточно нагруженный проект, и стоит дилема, написать самому на фальконе, или же отдать кому то чтоб написать кусок серверной части на "сях"

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

    Заранее благодарен!
     
  24. abler98

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

    С нами с:
    31 авг 2014
    Сообщения:
    43
    Симпатии:
    0
    В ближайшее время ставить на сервер не собираюсь, работы еще очень много, думаю еще не раз буду переписывать код, если не забуду, то я сообщу :)
     
  25. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ты очень многого ждёшь от кода, который занимает лишь часть проекта. Даже если этот код будет занимать у тебя 20% нагрузки, и увеличить его производительность в два раза (а пхп сам по себе весьма шустрый язык), то прирост будет 10%...

    Можно на ноду переползти попробовать, в силу иного механизма работы, она позволяет лучше расходовать ресурсы проца.

    А сколько у тебя каких запросов на хайлоаде, что ты думаешь апнуть пхп-часть? там бд не слабое место?