Jump to content


Photo

Can anyone solve my problem? checkbox hell!


  • Please log in to reply
1 reply to this topic

#1 spires

spires
  • Members
  • PipPipPip
  • Advanced Member
  • 492 posts

Posted 01 September 2006 - 09:54 AM

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://theeventorgan...e_cats.php?id=6

Then 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
<?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");
		
		}
}
?>

Form
		<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>
						&nbsp;&nbsp;'.$currentsub.'
					</td>
					<td>
						&nbsp;&nbsp;&nbsp;<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>

How to make over $600 a day from AdSense? Discover EXACTLY how he does it in these videos:
http://www.adsense-online.com

#2 sasa

sasa
  • Staff Alumni
  • Advanced Member
  • 2,804 posts
  • LocationHrvatska

Posted 01 September 2006 - 08:23 PM

try
while ($srow = mysql_fetch_array($sresult)) {
	$currentsub = $srow['sub'];
	echo '<tr>
	<td>&nbsp;&nbsp;'.$currentsub.'</td>
	<td>&nbsp;&nbsp;&nbsp;<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'].'">';
}
an i head
$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");
		}
		}
}
?>





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users