配列のチェックボックスに問題があります。ゴールスコアラーやカード (緑または赤) などのその他の情報を追跡するために、サッカー ゲーム (屋内) で実行されるスクリプトに取り組んでいます。
アウェイ チーム テーブルのコードは次のとおりです。問題はチェックボックスにあります。チェックを外すと、値は送信されません。チェックされていない場合は値として「0」を送信し、チェックされている場合は「30」を送信する必要があります。
$sql1="SELECT dbo_doelpunten.TeamRelatieNummer, dbo_doelpunten.aantaldoelpunten, dbo_doelpunten.Deelnemer, dbo_doelpunten.aantalstrafminuten, dbo_Deelnemers.Deelnemer, dbo_Deelnemers.MinutenStrafVerwerkt, dbo_Deelnemers.Doelpunten, dbo_Deelnemers.NaamCombi
FROM dbo_doelpunten
LEFT JOIN dbo_Deelnemers
ON dbo_doelpunten.Deelnemer=dbo_Deelnemers.Deelnemer
WHERE dbo_doelpunten.TeamRelatieNummer='436'
ORDER BY dbo_doelpunten.Deelnemer
";
// $sql1="SELECT * FROM dbo_doelpunten WHERE TeamRelatienummer='436'";
$result1=mysql_query($sql1);
// Count table rows
$count=mysql_num_rows($result1);
$Deelnemer = array();
?>
<td>
<table id="table" class="table" width="400">
<thead>
<tr>
<th data-sort="int">Nr</th>
<th data-sort="string">Naam</th>
<th data-sort="int">Doelpunten</th>
<th data-sort="int">Tijdstraf</th>
<th data-sort="int">Rood?</th>
</tr>
</thead>
<tbody>
<?php
while($rowuit=mysql_fetch_array($result1)){
$e=$rowuit['MinutenStrafVerwerkt'];
if ($e>='10')
{
echo "<tr bgcolor='red'>";
}
else
{
echo "<tr>";
}
?>
<td width="50" class="tdata"><input name="Deelnemeruit[]" type="hidden" id="Deelnemeruit" size="10" value="<? echo $rowuit['Deelnemer']; ?>" readonly><? echo $rowuit['Deelnemer']; ?></td>
<td width="250" class="tdata"><input name="NaamCombiuit[]" type="hidden" id="NaamCombiuit" size="20" value="<? echo $rowuit['NaamCombi']; ?>" readonly><? echo $rowuit['NaamCombi']; ?></td>
<td width="50" class="tdata"><input name="doelpuntuit[]" type="number" min="0" max="100" size="3" id="doelpuntuit" value="<? echo $rowuit['aantaldoelpunten'] ?>"></td>
<td width="50" class="tdata"><input name="strafuit[]" type="number" min="0" max="100" size="3" id="strafuit" value="<? echo $rowuit['aantalstrafminuten'] ?>"></td>
<td width="50" class="tdata"><input name="rooduit[]" type="checkbox" value="30" id="rooduit"></td>
</tr>
<?php
}
?>
配列の作成はうまく機能し、テーブルは適切に作成されます。チェックボックスである赤いカードを除いて、スコア、ゴールスコアラー、タイム ペナルティ (グリーン カード) の更新はうまく機能します。DBを更新するためのコードの下
$Deelnemerthuis = $_POST['Deelnemerthuis'];
$NaamCombithuis = $_POST['NaamCombithuis'];
$doelpuntthuis = $_POST['doelpuntthuis'];
$strafthuis = $_POST['strafthuis'];
$vlaggerthuis = $_POST['vlaggerthuis'];
$teamthuis = $_POST['teamthuis'];
$roodthuis = $_POST['roodthuis'];
$Deelnemeruit = $_POST['Deelnemeruit'];
$NaamCombiuit = $_POST['NaamCombiuit'];
$doelpuntuit = $_POST['doelpuntuit'];
$strafuit = $_POST['strafuit'];
$vlaggeruit = $_POST['vlaggeruit'];
$teamuit = $_POST['teamuit'];
$rooduit = $_POST['roodtuit'];
// Check if button name "Submit" is active, do this
if(isset($_POST['Submit'])){
$i=0;
while($i<$count){
$sql3= "UPDATE dbo_doelpunten SET aantaldoelpunten = '" . $doelpuntthuis[$i] . "', aantalstrafminuten = '" . $strafthuis[$i] . "' WHERE wedstrijdid='300' AND Deelnemer = '" . $Deelnemerthuis[$i] . "'";
$result3=mysql_query($sql3);
$sql7= "UPDATE dbo_Deelnemers SET MinutenStrafVerwerkt = MinutenStrafVerwerkt+'" . $roodthuis[$i] . "' WHERE Deelnemer = '" . $Deelnemerthuis[$i] . "'";
$result7=mysql_query($sql7);
$sql4= "UPDATE dbo_doelpunten SET aantaldoelpunten = '" . $doelpuntuit[$i] . "', aantalstrafminuten = '" . $strafuit[$i] . "' WHERE wedstrijdid = '300' AND Deelnemer = '" . $Deelnemeruit[$i] . "' ";
$result4=mysql_query($sql4);
$sql8= "UPDATE dbo_Deelnemers SET MinutenStrafVerwerkt = MinutenStrafVerwerkt+'" . $rooduit[$i] . "' WHERE Deelnemer = '" . $Deelnemeruit[$i] . "'";
$result8=mysql_query($sql8);
$i++;
}
チェックボックスがチェックされていないときは値0、チェックされているときは30になるようにするにはどうすればよいですか?
ここにページの完全なコードを投稿しました: http://pastebin.com/u6xVMmrr