Re: Validation problem with array.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Brent, 
Thank you , I can't do an associative because it part
of a user input form.  The values will be dependent on
the users.  I'm going to try and give each form
element a index number skill[0], skill[1] since the
foreach loop is doing that anyway.

The reason I haven't posted the validation is because
it's part of a class, so what exists in the page is
only part of the code. 

Stuart


--- Brent Baisley <brent@xxxxxxxxxxxx> wrote:

> I think I might know what you are trying to do. You
> want to have a 
> "name" associated with the skill (or skys or slus).
> You can use an 
> associative array to "name" your array elements. In
> your form, you can 
> change the array to be something like this:
> skills[cooking]
> skills[flying]
> skills[walking]
> ...
> 
> Notice there are no quotes around the skill names.
> Now each array 
> element has an array key that is a name. The
> computer doesn't really 
> care, but it makes it easier for you to read your
> code. And you now 
> have name/value pairs. You can process the array
> like this:
> 
> $skillNames	= array_keys($skills);
> foreach($skillNames as $skill) {
> 	echo 'Skill: '.$skill.'  Value: '.$skills[$skill].'
> <br />';
> }
> 
> Of course, instead of echoing you would do your
> validation or 
> substitution.
> 
> On Oct 20, 2004, at 8:35 AM, Stuart Felenstein
> wrote:
> 
> > After some back and forth posts here I had finally
> > thought my array issue was over, but!
> >
> > To review I have 30 form elements on a page
> > 10 are skill[]
> > 10 are sky[]
> > 10 are slu[]
> >
> > I pass them as session variables
> >
> > $_SESSION['skills'] = $_POST['skill'];
> > $_SESSION['skys'] = $_POST['sky'];
> > $_SESSION['slus'] = $_POST['slu'];
> >
> > Then when everyting is passed into a database
> > transaction:
> >
> > $skills = $_SESSION['skills'];
> > $skys = $_SESSION['skys'];
> > $slus = $_SESSION['slus'];
> >
> > foreach($_SESSION['skills'] as $key => $skill)
> > {
> > $query = "INSERT INTO Profiles_skills (ProfileID,
> > SkilCerts, NumYear, Lused)
> > VALUES ($LID, '$skill',
> >
>
{$_SESSION['skys'][$key]},{$_SESSION['slus'][$key]})";
> > //$result = mysql_query($query);
> >
> > Here is the problem:
> >
> > Using
> > (((isset($_POST["skill[]"]))?$_POST["skill[]"]:"")
> .
> > "",true,true,true,true,"",false,1);
> >
> > I can't seem to differentiate between the the
> elements
> > because they are all labeled skill[]
> > So basically validation isn't doing anything .
> >
> > I'm thinking of finding a better way to validate ,
> or
> > if i change the elements to skill[1], skill[2] ,
> what
> > would that do to my iteration loop ?
> >
> > Thank you,
> > Stuart
> >
> > -- 
> > PHP General Mailing List (http://www.php.net/)
> > To unsubscribe, visit:
> http://www.php.net/unsub.php
> >
> >
> -- 
> Brent Baisley
> Systems Architect
> Landover Associates, Inc.
> Search & Advisory Services for Advanced Technology
> Environments
> p: 212.759.6400/800.759.0577
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 
> 

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux