複数のチェックボックスを選択してMySQLデータベースに保存できるフォームを作成しています。ただし、ユーザーがjavascriptを使用して選択できるチェックボックスの数を制限したいので、問題が発生しました。
インポート機能は引き続き機能するようです。各チェックボックスは、識別して内包できるように互いに同じ名前である必要がありますが、Javascript関数が機能するには、区別できるようにそれぞれの名前が異なる必要があります。
どんな提案でもありがたいです!
これが私が遊んでいるコードです。
Javascript関数:
<?php $calc = mysql_query($query) or die(mysql_error()); ?>
<SCRIPT LANGUAGE="javascript">
function KeepCount()
{
var NewCount = 0
<?php while($count_row = mysql_fetch_array($calc)){
echo "
if (document.import1.checkbox".$count_row['id'].".checked)
{NewCount = NewCount + 1}
";
} ?>
if (NewCount == 6)
{
alert('You can select up to 5 competitors. If you wish to import more you will need to add more judges.')
document.import1; return false;
}
}
</SCRIPT>
形:
<form action="import_process.php" method="post" name="import1" id="import1">
<input name="import" type="submit" id="import" value="Import">
<table>
<tr>
<td> </td>
<td>Name</td>
<td>Gender</td>
</tr>
<?php $counter = 1;
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)){
echo "<tr bgcolor=white>";
echo "<td align=\"center\">
<input name=\"checkbox".$row['id']."\" type=\"checkbox\" id=\"checkbox[]\" value=\"".$row['id']."\" onClick=\"return KeepCount()\"></td>";
}
echo "<td>".$row['name']."</td>";
echo "<td>".$row['gender']."</td>";
echo "</tr>";
$counter++;
}
?>
</table>
</form>
import_process.php:
if(isset($_POST['checkbox'])){
$checkbox = $_POST['checkbox'];
$id = "('" . implode( "','", $checkbox ) . "');" ;
$sql="
INSERT INTO..."