ユーザーがフォームを送信する前にテーブル内の情報を並べ替えることができるシステムを実行しています。ユーザーは、各テーブルの列見出しをクリックして、情報を並べ替えることができます。問題は、ユーザーがテーブルをソートすると、データを送信できないことです。post メソッドを使用してフォームを送信しています。
これは、テーブルをソートするための js スクリプトです。
$(document).ready(function()
{
$("#tbl").tablesorter();
}
);
テーブルのスクリプト:
<form method="post">
<table width="80%" border="1" style="border-collapse:collapse; border: #ccc;" class="tablesorter" id="tbl">
<thead>
<tr height="25">
<th width="4%">NO</th>
<th width="10%">PRODUCT CODE</th>
<th width="30%">PRODUCT NAME</th>
<td bgcolor="#FFCC99" style="font-weight:bold; text-align:center" width="4%">APPROVE</td>
</tr>
</thead>
<tbody>
<?php
while($prow = mysql_fetch_assoc($getprods)){
$pcode = $prow['prod_id'];
$getdetails = ibase_query("select * from STOCK where STOCKCODE = '".$pcode."' and INACTIVED = 'F'");
while($srow = ibase_fetch_assoc($getdetails)){
$itemcode = $srow['STOCKCODE'];
$itemname = $srow['STOCKNAME'];
$ctr++;
?>
<tr class="row">
<td><center><?php echo $ctr.'.'; ?></center></td>
<td width="149"> <?php echo $itemcode; ?> </td>
<input type="hidden" name="code<?php echo $ctr; ?>" id="code<?php echo $ctr; ?>" value="<?php echo $itemcode; ?>">
<td width="373">
<a href="po_itemdetails.php?itemcode=<?php echo $itemcode; ?>" class="nyroModal" target="_blank"><?php echo $itemname; ?></a>
</td>
<td>
<center>
<input type="hidden" name="prod_id<?php echo $ctr; ?>" id="prod_id<?php echo $ctr; ?>" value="<?php echo $prow['id']; ?>">
<input type="checkbox" name="appr<?php echo $ctr; ?>" id="appr<?php echo $ctr; ?>" value="<?php echo $itemcode; ?>">
</center>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
<input type="text" name="total" value="<?php echo $ctr; ?>">
</form>
送信されたデータを取得するスクリプト:
<?php
for($i = 1; $i <= $_POST['total']; $i++)
{
echo $_POST["code$i"];
}
?>
ユーザーがテーブルの列見出しをクリックしてデータを並べ替えなかった場合、情報はエラーなしで送信されます。ユーザーがテーブルの列見出しをクリックしても、データは送信されません。