<?phpprint "post var dump:<br>";var_dump($_POST);print "<br>end post var dump<br>"; //error_reporting(E_ALL & ~E_NOTICE);include("config.php");// I'm assuming that dropdown 1_1 is the first one, 1_2 is the second one and so on.// subcat_1_1_1 is the first checkbox in the first dropdown in the first of the three sections.// subcat_1_1_2 is the second checkbox in that dropdown and so on.$categories = array();$name = $_POST['name'];$green = $_POST['green'];$eco = $_POST['eco'];$dfe = $_POST['dfe'];// While the array-key exists, this loop will run and collect all checkboxes// in the array called categoriesfor($w=1;$w<100;$w++){ if(!array_key_exists('subcat_'.$w.'_1_1', $_POST)) { //$w = -1; break; } for($x=1;$x<100;$x++) { if(!array_key_exists('subcat_'.$w.'_'.$x.'_1', $_POST)) { //$x = -1; break; } for($y=1;$y<100;$y++) { if(!array_key_exists('subcat_'.$w.'_'.$x.'_'.$y, $_POST)) { // $y = -1; break; } $categories[$w][$x][] = $y; } }}print "<br>$categories var dump<br>";var_dump($categories);print "end categories dump<br>";print "<br>";// Now you have an array with all checkboxes, something like// $subcat[1][1][1] = The number of the first checked checkbox in the first category// $subcat[1][1][2] = The number of the second checked checkbox in the first category and so on.// $subcat[1][2][1] = The number of the first checked checkbox in the second category// $subcat[1][2][2] = The number of the second checked checkbox in the second category and so on.// $subcat[2][1][1] = The number of the first checked checkbox in the first category, second section// $subcat[2][1][2] = The number of the second checked checkbox in the first category, second section and so on.$key_exists = true;$subkey_exists = true;$strings = array();// Loops through and turns all categories' arrays into stringsfor($h=1;$h<100;$h++){ if(!array_key_exists($h, $categories)) { break; } if (!array_key_exists(1, $categories[$h])) { break; } for($i=1;$i<100;$i++) { if(!array_key_exists($i, $categories[$h])) { break; } print(sizeof($strings)); // This will turn the array into a string with all subcategories, separated by ;. // For example, 0;3;53 if subcategory 0, 3 and 53 are checked $strings[$h][$i] = implode(';', $categories[$h][$i]); print "<br>"; var_dump($strings[$h][$i]); }}print "<br><br>strings var dump start<br>";var_dump($strings);print "<br>strings end<br><br>"; // Now strings[] contains all the strings (like 1;3;5 and 3;5;7). Loop through the array:echo "size of strings<br>";echo sizeof($strings);echo "<br> end size of strings<br>";$sizeof = sizeof($strings) + 1;for($x=1;$x<sizeof($strings);$x++){ for($y=1;$y<$sizeof;$y++) { // *build a query using the string* // Echoing just for debugging or whatever. print("INSERT into item_new (id, name, green, eco, dfe, section, category, subcategory) VALUES ('','$name','$green','$eco','$dfe','$x','$y','".$strings[$x][$y]."')<br>"); }}// Done.// Store that field in the DB and then when you want them into an array again, do:// $array = explode(';', $string);?>