ФорумПрограммированиеJavaScript → Разыскивается валидатор формы с правилами server+client

Разыскивается валидатор формы с правилами server+client

  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 7:32

    Поделитесь пожалуйста, если есть опыт валидации данных формы по _единым правилам_ для PJP и JavaScript. Чтобы писать правила в одном месте, а использовать в обоих.

    В идеале чтобы PHP мог использовать правила jQuery Validation Plugin или чтобы PHP по своим правилам генерировал для клиента полный аналог своих правил.

    Пока нашел только Pajama, ничего плохого не скажу про нее, кроме подозрительно малого числа "звездочек" github.

    Спустя 86 сек.

    кстати, почему местный парсер MD не справляется с Italic для нескольких слов?

    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 10:28, спустя 2 часа 55 минут 27 секунд

    не проще ли форму асинхронно проверять на сервере?) это я просто, у меня всегда в голове крутится мысль эта - что лучше. фактически

    $('form').submit(function () {var $t = $(this); $.post($t.attr("action"), $t.serialize(), function(result) {$t.html(result);})
    

    и нет больше никаикх проблем. Единсвтенное - надо отслеживать location ну или резалтать в json.

    Спустя 35 сек.

    код условный.

    зы: вешаться конечно нужно на onkeyup, onchange.

    Сапожник без сапог
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 10:42, спустя 14 минут 41 секунду

    да, это наверное проще _организовать_. только как-то неловко плодить запросы ради элементарных проверок типа "от трех до десяти символов латиницы". а такие правила это 99.9% всех случаев.

    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 10:44, спустя 1 минуту 43 секунды

    @artoodetoo, сервер думаешь упадет?))

    можно же делать валидацию на основе json input/output. ну или urlencoded post / json output. ну или возвращать html только если он не совпал с текущим ))

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

    Сапожник без сапог
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 10:54, спустя 9 минут 52 секунды

    упасть то врядли, просто как-то некузяво ))) моё чувство прекрасного страдает.

    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 10:56, спустя 2 минуты 13 секунд

    @artoodetoo, ну хз в общем. я вообще последнее время за это не парюсь )) это все пиксель дрочь.

    Сапожник без сапог
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 11:49, спустя 53 минуты 17 секунд

    А интернет хуевый? Лаги? Нее я с r2d2 согласен, элементарные проверки надо на клиенте сначала отрабатывать.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 11:52, спустя 2 минуты 23 секунды

    А интернет хуевый? Лаги? Нее я с r2d2 согласен, элементарные проверки надо на
    клиенте сначала отрабатывать.

    @AlexB, какой гениальный совет!

    При хуевом интернете, человек конечно дальше сможет форму сабмитнуть и все пойдет как надо. Хвала богам!

    чо за бред конченый?

    Сапожник без сапог
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 11:54, спустя 2 минуты 9 секунд

    Другой вопрос, как эти правила валидации хранить. С ордной стороны в json/xml или еще чем-то таком, что легко распарсится и на серевере и на клиенте.
    Но это типа неудобно. А хочется по ангуляр-js-ному в атрибутах, но тогда на сервере парсить неудобно. Что думаете?

    Спустя 92 сек.


    **@AlexB**, какой гениальный совет!

    При хуевом интернете, человек конечно дальше сможет форму сабмитнуть и все пойдет как надо. Хвала богам!

    чо за бред конченый?

    @phpdude, Слушай ну одно дело сабмитнуть форму и подождать минуту, другое дело десять раз ее сабмитить и каждый раз получать ошибки через минуту или получать провисы в момент потери фокусов контролами. Вдруг форма большая и сложная?
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 12:08, спустя 14 минут 31 секунду

    @AlexB, ну спорно в общем. Тут от проекта очень сильно зависит. Если у тебя там textarea на 64кбайта - провис будет, в остальных случаях форма помещается в 1-5(1500-7кб) tcp пакетов. Нигде ничего виснуть не будет, не надо сказок ))

    Если textarea - уже частный случай.

    Сапожник без сапог
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 12:09, спустя 13 секунд

    IMHO, хранить и отдавать один и тот же json было бы самое то. Или на сервере хранить пофиг в чем, но клиенту на его основе генерить таки json.

    Парсить сервером атрибуты html это как-то 1) дополнительная нагрузка, 2) вынуждает нас вклиниваться где-то между шаблонизатором и отдачей ответа.
    Короче ненужные сложности.

    ιιlllιlllι унц-унц
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 12:12, спустя 3 минуты 9 секунд

    IMHO, хранить и отдавать один и тот же json было бы самое то. Или на сервере хранить пофиг в чем, но клиенту на его основе генерить таки json.

    видимо, самое простое

    только нет у меня по опыту случаев, когда форма тупила при проверке на бэкэнде, так что согласен с дудом, это пиксельдроч

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 12:18, спустя 6 минут 28 секунд

    IMHO, хранить и отдавать один и тот же json было бы самое то. Или на сервере хранить пофиг в чем, но клиенту на его основе генерить таки json.

    видимо, самое простое

    только нет у меня по опыту случаев, когда форма тупила при проверке на бэкэнде, так что согласен с дудом, это пиксельдроч

    @Sinkler, дуд всегда прав. пора привыкнуть :)

    Спустя 126 сек.

    все дело в размере формы. Форма весит мало, учитывя скорости интернета, развитие CDN, проверка "средне крупной" формы занимает в плане доставки трафика не больше 200мсекунд. Ответ - 30-50мсек. Что может тут тупить? Ради пиксельдроча в 200мсек => 20мсек на js не вижу смысла костылять. Тем более что решение все равно будет не оконечное, учитывая что стилевые составляющие придется дублировать. Серверные проверки на вещи типа "такой email уже занят хуйлом №100500" и "введите пароль который вы не использовали последние полгода" все равно придется делать. Так нахуя городить огородище?

    Сапожник без сапог
  • lekafe

    Сообщения: 149 Репутация: N Группа: Адекваты

    Spritz 24 ноября 2014 г. 14:19, спустя 2 часа 14 секунд

    думаю, самый разумны подход делать простую валидацию на клиенте, html 5 кстати в помощь. А на сервере уже что то сложное.

    Кстати меня интересовал всегда вопрос, а как быть с файлами, если используем способ, который предлагает дуд?
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 ноября 2014 г. 14:20, спустя 1 минуту 48 секунд

    @lekafe, а тут надо понимать что серебряной пули какбы не бывает. вот в чем вся соль.

    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!