spires Posted September 1, 2006 Share Posted September 1, 2006 Help please. No one can so far can come up with a solution. All i'm trying to do is have a list of categories and sub cats. (they can be add to and deleted)That are taken from the database, with a checkbox next to each one.(This is as far as i've got)http://theeventorganiser.com/reg_more_cats.php?id=6Then insert into the database the checked checkboxs. (This is the problem)The problem is i need to loop through the sub cats from the database which also means each checkbox is within the loop. So, i need to find a way of renaming the checkbox to the value of the sub cat for each loop. at the moment i only have 1 as the value.I now i'm doing something very wrong, just dont know what.Any help please.Here is my messy code. Head[code]<?php$user_id = $_GET['id'];if (!empty($_POST['mcsubmit'])) { if(isset($_POST['1'])) { $id = $_POST['id']; $sub = $_POST['sub']; $ssql2 = "SELECT * FROM categories"; $sresult2 = mysql_query($ssql2) or die ('could not connect'); $scount2 = mysql_num_rows($sresult2); $srow2 = mysql_fetch_array($sresult2) ; $category = $srow2['cat_id']; echo $category; $doquery = mysql_query("INSERT INTO users_sub (user_id, user_sub) VALUES ('$user_id', '$checked')") or die ("could not insert"); $doquery1 = mysql_query("INSERT INTO users_cat (user_id, user_cat) VALUES ('$user_id', '$category')") or die ("could not insert1"); $doquery2 = mysql_query("INSERT INTO users_categories (user_id, user_cats, user_subs) VALUES ('$user_id', '$category', '$checked')") or die ("could not insert2"); }}?>[/code]Form[code] <form name="more_cats" method="post" action="<?php $_SERVER['PHP_SELF']; ?>"> <?php $csql = "SELECT * FROM category"; $cresult = mysql_query($csql) or die ('could not connect'); $ccount = mysql_num_rows($cresult); echo '<center> <table cellpadding="5" cellspacing="5" border="0" width="600">'; for ($j = 0; $j < $ccount; $j++) { echo '<tr>'; for ($i = 0; $i < 4; $i++) { $crow = mysql_fetch_array($cresult); $cat = $crow['cat']; $id = $crow['id']; if ($crow) { echo '<td valign="top"> <table cellpadding="0" cellspacing="0" border="0" width="150" class="TLRB_border" bgcolor="#FFFFFF" valign="top"> <tr> <td align="center" bgcolor="#EEEEEE" colspan="2"> '.$cat.' </td> </tr> </table> <table cellpadding="0" cellspacing="0" border="0" width="150" class="TLRB_border" bgcolor="#FFFFFF" valign="top">'; $ssql = "SELECT * FROM cats_sub INNER JOIN categories ON cats_sub.id = categories.id WHERE categories.cat_id = '$id'"; $sresult = mysql_query($ssql) or die ('could not connect'); $scount = mysql_num_rows($sresult); while ($srow = mysql_fetch_array($sresult)) { $currentsub = $srow['sub']; echo '<tr> <td> '.$currentsub.' </td> <td> <input name="1" type="checkbox" id="1"><br> </td> </tr>'; echo '<INPUT type="hidden" name="id" value="'.$srow['id'].'"> <INPUT type="hidden" name="sub" value="'.$srow['sub'].'">'; } echo '</table><br><br> </td>'; } else { break; } } echo'</tr>'; } echo '</table>'; ?> <input type="submit" name="mcsubmit" value="submit"> </form>[/code] Link to comment https://forums.phpfreaks.com/topic/19343-can-anyone-solve-my-problem-checkbox-hell/ Share on other sites More sharing options...
sasa Posted September 1, 2006 Share Posted September 1, 2006 try[code]while ($srow = mysql_fetch_array($sresult)) { $currentsub = $srow['sub']; echo '<tr> <td> '.$currentsub.'</td> <td> <input name="catsub[]" type="checkbox" id="1" value="' .$cat.'$$$'.$currentsub. // or use $crow['id].'$$$'.$srov['id'] '"><br> </td> </tr>';//echo '<INPUT type="hidden" name="id" value="'.$srow['id'].'">//<INPUT type="hidden" name="sub" value="'.$srow['sub'].'">';}[/code]an i head [code]$user_id = $_GET['id'];if (!empty($_POST['mcsubmit'])) { if(isset($_POST['catsub'])) { foreach($_POST['catsub'] as $catsub) { $cs = explode('$$$',$catsub); $category = $cs[0]; $checked = $cs[1]; $ssql2 = "SELECT * FROM categories"; $sresult2 = mysql_query($ssql2) or die ('could not connect'); $scount2 = mysql_num_rows($sresult2); $srow2 = mysql_fetch_array($sresult2) ; $category = $srow2['cat_id']; echo $category; $doquery = mysql_query("INSERT INTO users_sub (user_id, user_sub) VALUES ('$user_id', '$checked')") or die ("could not insert"); $doquery1 = mysql_query("INSERT INTO users_cat (user_id, user_cat) VALUES ('$user_id', '$category')") or die ("could not insert1"); $doquery2 = mysql_query("INSERT INTO users_categories (user_id, user_cats, user_subs) VALUES ('$user_id', '$category', '$checked')") or die ("could not insert2"); } }}?>[/code] Link to comment https://forums.phpfreaks.com/topic/19343-can-anyone-solve-my-problem-checkbox-hell/#findComment-84239 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.