I have the following checkboxes (excerpt from a form):
<input type="checkbox" name="Cat_Ref_Array[]" value="2" />
<label for="Cat_Ref_Array[]">Category 2</label>
<input type="checkbox" name="Cat_Ref_Array[]" value="3" />
<label for="Cat_Ref_Array[]">Category 3</label>
<input type="checkbox" name="Cat_Ref_Array[]" value="5" />
<label for="Cat_Ref_Array[]">Category 5</label>
<input type="checkbox" name="Cat_Ref_Array[]" value="7" />
<label for="Cat_Ref_Array[]">Category 7</label>
<input type="checkbox" name="Cat_Ref_Array[]" value="13" />
<label for="Cat_Ref_Array[]">Category 13</label>
And the following PHP to insert it to a table:
<?php
$chkbox = $_POST['Cat_Ref_Array'];
$i = 0;
while ($i < sizeof($chkbox)) {
$insertSQL = sprintf(
"INSERT INTO table (Data, `Call`, Cat_Ref) VALUES (%s, %s, %s)",
GetSQLValueString($_POST['Data'], "text"),
GetSQLValueString($_POST['Call'], "text"),
GetSQLValueString($chkbox[$i], "int")
);
$result = mysql_query($insertSQL, $site) or die(mysql_error());
$i++;
}
But it only inserts one record each time, no matter how many checkboxes are ticked?
How come?