こんにちは、私の問題は、ユーザー入力に基づいてテーブルの行を動的に作成したことです。各行にはテキストボックス、comboxbox が含まれ、最初の 3 列からテキストボックスに値を入力すると、結果が表示されます。これらの選択された n 個の入力値を次のページに渡すと、最後の行の値のみが次のページに移動します。次のページの JavaScript コードへのすべてのループ値
<script>
function getText3(row){
var in1=document.getElementById('in1-' + row).value;
var in2=document.getElementById('in2-' + row).value;
var in4=document.getElementById('in4-' + row).value;
var in3=(in1*in2*in4*30)/1000;
document.getElementById('in3-' + row).value=in3.toFixed(2 );
}
</script>
テーブルコード
<?php
$de=$_POST['text123'];
echo $de;
?>
<body>
<form action="kl2.php" method="post" >
<table border="1" align="center" id="wr123">
<tr>
<th>WAS</th>
<th>NO.</th>
<th>AVERAGE</th>
<th>APPROX</th>
</tr>
<?php
for ($i = 1; $i <= $de; $i++) {
?>
<tr>
<td>Tube</td>
<td>
<select id="in4-<?php echo $i; ?>" name="t1" onclick="getText3(<?php echo $i; ?>)" >
<option value="0">0</option>
<option value="12">12</option>
<option value="18">18</option>
<option value="24">24</option>
<option value="75">75</option>
</select>
</td>
<td>
<input type="text" name="t2" id="in1-<?php echo $i; ?>" onblur="getText3(<?php echo $i; ?>)" />
</td>
<td>
<select name="a1" id="in2-<?php echo $i; ?>" onclick="getText3(<?php echo $i; ?>)" >
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
</select>
</td>
<td>
<input type="text" id="in3-<?php echo $i; ?>" name="username" readonly="readonly" />
</td>
<td>
</tr>
<?php } ?>
<input type="submit" name="submit" />
</table>
</form>
kl2.php
<?php
@$a=$_POST['t1'];
echo @$a;
$sl = $_POST['t2'];
echo $sl;
$b=$_POST['a1'];
echo $b;
$c=$_POST['username'];
echo $c;
?>
送信をクリックすると、最後の行の値のみが表示されます。つまり、ユーザーが3、3行を入力すると、送信をクリックした後に最後の行のデータのみが表示されます