Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Help with trivial validation function

Posted on 2009-07-06
4
Medium Priority
?
268 Views
Last Modified: 2013-12-13
Hi everyone,
can anyone please help me do this right? I am trying to validate a form with category id, of which list I pull out of the DB to make sure the id is valid. But seem to get errors of invalid argument for "foreach". I am attaching the function below. I am a sort of beginner, so I am sure that everyone will have much better solution, but I am trying to do it myself (with this exception) and just need to find an error in my script.. not an entire new solution. that will be next :-)
$category_id_errors = check_cagegory_id(array('category')); 
 
 
function check_cagegory_id($check_category_id) {  //this is the funtion referred to in the code above
	$form_errors = array();
	
	$subject_set = get_all_subjects();
	if(mysql_num_rows($subject_set)>=1) {
		$subjects = array();
		while($subject = mysql_fetch_array($subject_set)) {
			$subjects[] = $subject['id'];
		}
		foreach($check_cagegory_id as $fieldname) {
			if((!isset($_POST[$fieldname]))||(!in_array($_POST[$fieldname], $subjects))) {
				$form_errors[] = $fieldname ."doesn't exist";
			}
		}
	} else {
		$form_errors[] = $fieldname." - no category to associate a new page with";
	}
	return $form_errors;

Open in new window

0
Comment
Question by:czechmate1976
  • 2
  • 2
4 Comments
 
LVL 12

Expert Comment

by:kevin_u
ID: 24786760
In the foreach,

$check_cagegory_id

is spelled wrong

It should be:

$check_category_id

0
 

Author Comment

by:czechmate1976
ID: 24787260
Thanks, I corrected it but still get "Warning: Invalid argument supplied for foreach() in C:\xampplite\htdocs\FGEnew\siteadmin\includes\functions.inc.php on line 218"

which is the following:
foreach($check_category_id as $fieldname) {
                  if((!isset($_POST[$fieldname]))||(!in_array($_POST[$fieldname], $subjects))) {
                        $form_errors[] = $fieldname ."doesn't exist";
                  }
0
 
LVL 12

Accepted Solution

by:
kevin_u earned 1000 total points
ID: 24787336
The underlying issue is that $check_category_id is not an array.  Thats the cause of the error message.   In your short example, it is surely an array.  But is it called the same way in the full script?
0
 

Author Comment

by:czechmate1976
ID: 24787404
resolved. Sorry, after days staring at the code I can hardly see.. Thanks for your help
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When crafting your “Why Us” page, there are a plethora of pitfalls to avoid. Follow these five tips, and you’ll be well on your way to creating an effective page.
Dramatic changes are revolutionizing how we build and use technology. Every company is automating, digitizing, and modernizing operations. We need a better, more connected way to work together as teams so we can harness the insights from our system…
Any person in technology especially those working for big companies should at least know about the basics of web accessibility. Believe it or not there are even laws in place that require businesses to provide such means for the disabled and aging p…
The is a quite short video tutorial. In this video, I'm going to show you how to create self-host WordPress blog with free hosting service.
Suggested Courses
Course of the Month9 days, 21 hours left to enroll

927 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question