You are here: Re: Validating form input data « PHP Programming Language « IT news, forums, messages
Re: Validating form input data

Posted by David Haynes on 11/19/64 11:46

stathis gotsis wrote:
> "David Haynes" <david.haynes2@sympatico.ca> wrote in message
> news:Mp25g.739$jE6.350@fe17.usenetserver.com...
>> stathis gotsis wrote:
>>> Hello everyone,
>>>
>>> I am tying to come up with an elegant way to process some input data
> that
>>> come from a form. When the user hits the 'Submit' button, i want the
> form to
>>> appear again with the already entered valid data filled in and prompt
> the
>>> user to re-enter the non-valid data. If all data is valid, i will
> forward to
>>> an other .php page which enters the data into a database.
>>>
>>> I tried to do this in the following way: the form always hits back on
>>> itself, but when all data is valid i use the PHP:header() to redirect to
> the
>>> data.php that performs the database insertion. The problem is that the
> data
>>> is not available to data.php in the $_POST variable. How can i overcome
> this
>>> problem? Any other subtle way to handle the whole thing? Any help
>>> appreciated.
>>>
>>>
>> I would break the function a little differently.
>>
>> 1. Have a form (view) that is sensitive to $SESSSION. That is, it will
>> use the values in SESSION to populate any dynamic values to be displayed
>> in the form.
>> 2. Have another process (controller) that:
>> a) processes $_POST or $_GET
>> b) if all is valid, does the insert/update and redirects to another
>> page (Your data has been saved.)
>> c) if all is not valid, populates the $SESSION with good values and
>> then redirects to the view form.
>>
>> The whole thing is started by calling the controller. Since no data is
>> valid, it will redirect to the view.
>> The view then presents a form for filling in.
>> The user fills in the form and submits which then calls the controller.
>> The controller processes the form data and either updates/inserts it or
>> calls the view again.
>>
>> If you encapsulate your database accesses into a class or set of classes
>> which are called from the controller, you will have a light-weight
>> implementation of a classic Model-View-Controller (MVC2) architecture.
>
> Thank you for your quick answer, i am heading towards the implementation you
> suggested. Just another minor question: can i add an array variable to
> SESSION? How can this be done?
>
>

$my_array = array('one' => 1, 'two' => 2);
$_SESSION['my_array'] = $my_array;

or

$_SESSION['my_array'] = array('one' => 1, 'two' => 2);

-david-

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация