php - IF statement inside FOR Loop returns false results -
i have few days started studying php , have following code, makes 3 check-boxes , 3 drop-down lists accordingly(could more, that's not issue).
the idea custom mysql query string created more 1 conditions. drop-down lists contain db fields. user decide how many custom conditions add clicking these check-boxes , setting value in drop-down list.
after clicking submit button every checkbox checked , if value according drop-down box set, value drop-down list read. code works , returns correct results (values drop-down lists) if or first checkbox are/is checked. example if second or third checkbox check , value drop-down list set, if statement ignores it. there wrong if statement (in specific && condition) inside loop can can fix it?. additionally, if have 1 condition in if statement results correct!.
<?php echo <<<_query <form action="check_array.php" method="post"> query1<input type="checkbox" name="query[]" value="query0"> query2<input type="checkbox" name="query[]" value="query1"> query3<input type="checkbox" name="query[]" value="query2"> fields0 <select name="fields[]"> <option selected value="null">select field</option> <option value="author">author</option> <option value="title">title</option> <option value="category">category</option> </select> fields1 <select name="fields[]"> <option selected value="null">select field</option> <option value="author">author</option> <option value="title">title</option> <option value="category">category</option> </select> fields2 <select name="fields[]"> <option selected value="null">select field</option> <option value="author">author</option> <option value="title">title</option> <option value="category">category</option></form> </select> <input type="submit" name="submit" value="check"></form> _query; ($i=0;$i<3;++$i) { if (isset($_post["query"][$i]) && $_post["fields"][$i] !="null") { echo $_post["query"][$i] ."<br>".$_post["fields"][$i]."<br>"; } } ?>
the browser doesn't submit checkboxes unchecked , array indexes query[]
being thrown off time there gap in sequence of selected checkboxes. can fix specifying array indexes checkboxes.
change
query1<input type="checkbox" name="query[]" value="query0"> query2<input type="checkbox" name="query[]" value="query1"> query3<input type="checkbox" name="query[]" value="query2">
to
query1<input type="checkbox" name="query[0]" value="query0"> query2<input type="checkbox" name="query[1]" value="query1"> query3<input type="checkbox" name="query[2]" value="query2">
Comments
Post a Comment