Одна страница && control'ы && submit

x-yuri

Новичок
Вы до сих пор принимаете переданные Вам данные на веру? Тогда мы идем к Вам.
я не говорил, что проверять поступающие данные от пользователя не надо. Но возможность принимать все через GET менее безопасна, хотя возможно ненамного. В общем не считаю это обязательным, но если не сложно, то можно воспользоваться.

IsPostBack на пхп обычно не реализовывают

Почему? Или подход одна страница сама action себя нетривиален для PHP? Вот представьте себе обычную страницу-калькулятор. В ней пользовоталь чегой-то вводит и чегой-то рассчитывает. Грубо говоря играется всякими различными параметрами, решая, к примеру, какую-нить оптимизационную задачу. Т.е.: установил значения параметров и нажал кнопоцку "Рассчитать". Посмотрел результат. Он его не удовлетворил. Он поменял один параметр (остальные должны же остаться как и были) и - снова. При первой ее загрузке нуна установить default'овые параметры, ну, а далее - то что уже введено. Как бы Вы на уровне PHP и одной страницы сама в себя сие реализовали?
было выше по поводу значений по умолчанию
PHP:
$page = isset($_GET['page']) ? $_GET['page'] : <default page>;
а по поводу isPostBack: не знаю, есть наверное какие-то естественные для языка способы решения задач, а причин копировать из ASP эту функциональность причин не вижу

-~{}~ 26.12.08 19:42:

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

-~{}~ 26.12.08 19:45:

намного рагьше, я кстати писал, как выглядит isPostBack на пхп
PHP:
if( isset($_POST['submit']) )
где submit - name кнопки submit
или действительно можно
PHP:
if (! empty($_POST))
-~{}~ 26.12.08 19:46:

если конечно только отправка формы подразумевает передачу параметров через POST
 

fixxxer

К.О.
Партнер клуба
строго говоря, isPostBack -- это
PHP:
if ($_SERVER['REQUEST_METHOD'] === 'POST')
хотя не суть важно, просто занудствую :)

P.S. протокол HTTP и язык разметки HTML не зависят от языка программирования :)
 

x-yuri

Новичок
строго говоря, isPostBack -- это

if ($_SERVER['REQUEST_METHOD'] === 'POST')
а разве нельзя для формы указать method="get"?

кстати в === одно равно лишнее ;-) в серьез просьба не воспринимать, это тоже занудство

-~{}~ 26.12.08 20:06:

Иван 76
а можно узнать про достоинства/недостатки опробованных тобой фреймворков?
 

fixxxer

К.О.
Партнер клуба
>кстати в === одно равно лишнее ;-)

почему это

и что по твоему в asp такое "постбэк" ?

p.s. вот щас и выясним кто нифига не знает ни http ни php
 

x-yuri

Новичок
>кстати в === одно равно лишнее ;-)

почему это
REQUEST_METHOD = method
method = "GET" | "POST" | "HEAD" | extension-method
extension-method = "PUT" | "DELETE" | token
вопрос, зачем нужно строгое сравнение?

и что по твоему в asp такое "постбэк" ?
по-моему, IsPostBack == true, если страничка отображается в результате отправки данных формы. Что, кто-то запрещал отправлять формы методом GET?

-~{}~ 26.12.08 20:31:

причем, скорее всего, если запрос идет с другой странички (хоть и методом POST), то IsPostBack == false (иначе бы это был IsPostTo)
хотя возможно IsPostBack смотрит только на метод POST
но в ASP у меня опыта значительного нет, чтобы знать такие вещи
 

fixxxer

К.О.
Партнер клуба
1)а чем оно мешает?

2)очень интересно, а как определить с какой "странички"?
 

x-yuri

Новичок
1) я же сразу сказал, что это тоже занудство
2) средствами ASP - не знаю

-~{}~ 26.12.08 21:49:

т.е. судя по названию свойства, IsPostBack == true только когда отправка данных формы происходит с той же страницы, по поводу Post - непонятно, то ли имеется в виду метод HTTP, то ли просто отправка данных

описание этих вопросов в описании свойства отсутствует

-~{}~ 26.12.08 21:50:

видимо с целью скрыть происходящие за кулисами процессы
 

Иван 76

Новичок
x-yuri,
а можно узнать про достоинства/недостатки опробованных тобой фреймворков?
Идеального фреймворка все-рано нет.

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

Даже для того же ЗФ можно найти в инете разнообразные "надстройки", расширяющие его функционал.

Многое зависит от постановки задачи. В некоторых случаях целесообразней применять Симфони, а не ЗФ. Эта тема на Хабре обсуждалась сильно. Играет роль наличие готовых компонентов (например форум, фотоальбом и пр.), которые можно взять и использовать, генератор админки.

В ряде случаев, я бы вообще использовал Дажнго, хоть это и не РНР, (играет роль показатели производительности, и наличие готовых компонентов).

А есть случаи, когда наиболее приемлемым будет ЗФ. ЗФ - не идеал. Иногда требуется доработка. Иногда - существенная доработка.

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

Еще один важный момент для программных продуктов, - это "порог вхождения". Часто это играет против сложных фреймворков в пользу простых.
 

x-yuri

Новичок
Идеального фреймворка все-рано нет.
поэтому я спросил не про лучший, а про плюсы/минусы. А какие фреймфорки ты можешь посоветовать и чем они отличаются (кратко или что-то, что поможет с выбором)
 

Иван 76

Новичок
Автор оригинала: x-yuri
поэтому я спросил не про лучший, а про плюсы/минусы. А какие фреймфорки ты можешь посоветовать и чем они отличаются (кратко или что-то, что поможет с выбором)
Не знаю. Нет однозначного ответа. Все зависит от обстоятельств и поставленной задачи. В данном случае, я бы человеку посоветовал именно ЗФ, как наименее критикуемый с точки зрения архитектуры, и покрывающий максимально полно спектр его возможных его запросов.

Но здесь играет роль "момент чести", - предлагать то, что имеет наибольшие шансы ему понравиться.
Это для того, чтоб человек после .NET не разочаровался в PHP, а наоборот, - нашел весь свой привычный функционал, и даже больше.
Ведь одна из причин, по которой сегодня критикуется РНР, - это не объективные особенности языка, а субъективные мнения человека к нему, ввиду того, что человек не нашел в нем то, что искал, или не смог разобраться.
 

x-yuri

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

Иван 76

Новичок
x-yuri
Еще раз:
Ведь одна из причин, по которой сегодня критикуется РНР, - это не объективные особенности языка, а субъективные мнения человека к нему, ввиду того, что человек не нашел в нем то, что искал, или не смог разобраться.
 

x-yuri

Новичок
а зачем защищать пхп? Те кто знают, те действительно знают. А кто не знает, тот либо узнает, либо ... будет продолжать критиковать пхп ;-)
 

dr-sm

Новичок
о!
вот как раз вопрос возник по мего Zend_From сходный.

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

пока сладывается ощущение, что без Zend_From
это легче сделать значительно.
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Автор оригинала: Иван 76
Просто это единственный фреймверк от разработчиков PHP.
Даже само его название Zend (как и название движка PHP) - это аббревиатура Zeev Suraski и Andi Gutmans создателей PHP.
Не надо идиотских сказок, пишут-то фреймворк другие люди, вовсе даже не Zeev и Andi. Там дофига бывших разработчиков PEAR, например. А так можно назвать его хоть ChuckNorrisFramework.

Да не в том суть. Зенд поражает своей продуманностью, архитектурой и серьезностью. Можно назвать даже образцом того, как надо писать.
Да-да-да, я почитывал там обсуждение "как нам писать компонент для работы с формами". Ключевым архитектурным требованием было "оно не должно быть похоже на QuickForm".

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

И обосрались они знатно, когда при анонсе ZF "демонстрировали код", который на PHP на тот момент работать просто не мог.

-~{}~ 27.12.08 12:14:

Автор оригинала: dr-sm
приходит пост запрос с формой1,
происходит, валидация и обработка данных.
если в процессе возникли ошибки,
то мне необходимо отдать туже форму,
с ошибками и введенными данными,
если все ок, то необходимо отдать другую форму.
формы необходимо отдавать гетом,
те после обработки запроса, происходит редирект
Визард чтоле? HTML_QuickForm_Controller, пример.
 
Сверху