这个php代码创建了一个表格,每个行都有一个“book”按钮。
我想从“book”被点击到另一个表单(在“restricted.php”中)的行中获取“阶段”和“站点”的值来预订站点。 (目前所有行都是通过点击书籍提交的)
<?php
$phase=$_GET["q"];
$sql ="select id, phase,size, facing, sply, status from plot where status='avail' and phase='$phase'";
$ret=mysql_query($sql, $connect);
echo "<form action='restricted.php' method='get'>";
echo"<div style='overflow-y:scroll;height:200px;float:left;' ><table border=1 >
<tr>
<td>select </td><td>phase</td> <td>site no.</td> <td>plot-size</td> <td>face</td> <td>sply</td> <td>status</td>
</tr>" ;
while($row = mysql_fetch_array($ret, MYSQL_ASSOC))
{
echo "<tr>".
"<td><input type='submit' name='book' value='book' onClick=\"whichForm('send_to_one');\" /></td>".
"<td><input type='text' value=\"{$row['phase']}\" name='phase' size='3' readonly /> </td>".
"<td><input type='text' value=\"{$row['id']}\" name='site' size='4' readonly /></td>".
"<td> {$row['size']} </td>".
"<td> {$row['facing']} </td>".
"<td>{$row['sply']} </td> ".
"<td>{$row['status']} </td> ".
"</tr>";
}
echo "</table></div>";
mysql_close($connect);
?>
答案 0 :(得分:2)
您必须在while循环中移动表单标记并在循环中将其关闭,以便您可以为不同的行和提交按钮使用不同的表单,它将仅提交相关表单。
答案 1 :(得分:1)
单击按钮时执行函数whichForm()。在该功能中,您可以添加变量阶段和站点。
这样的事情:
echo "<td><input type='submit' name='book' value='book' onClick=\"whichForm('send_to_one', '{$row['phase']}', '{$row['site']}');\" /></td>";
/ edit:将您的代码更改为类似的内容。它不是最美观的可读性解决方案,但它应该可行。
<?php
$phase=$_GET["q"];
$sql ="select id, phase,size, facing, sply, status from plot where status='avail' and phase='$phase'";
$ret=mysql_query($sql, $connect);
echo"<div style='overflow-y:scroll;height:200px;float:left;' ><table border=1 >
<tr>
<td>select </td><td>phase</td> <td>site no.</td> <td>plot-size</td> <td>face</td> <td>sply</td> <td>status</td>
</tr>" ;
while($row = mysql_fetch_array($ret, MYSQL_ASSOC))
{
echo "<tr>".
"<form action='restricted.php' method='post'>".
"<td><input type='submit' name='book' value='book' onClick=\"whichForm('send_to_one');\" /></td>".
"<td><input type='text' value=\"{$row['phase']}\" name='phase' size='3' readonly /> </td>".
"<td><input type='text' value=\"{$row['id']}\" name='site' size='4' readonly /></td>".
"<td> {$row['size']} </td>".
"<td> {$row['facing']} </td>".
"<td>{$row['sply']} </td> ".
"<td>{$row['status']} </td> ".
"<input type='hidden' name='phase' value='{$row['phase']}'>".
"<input type='hidden' name='site' value='{$row['site']}'>".
"</form>".
"</tr>";
}
echo "</table></div>";
mysql_close($connect);
?>
在您的restricted.php中,您可以使用以下命令访问值:
$_POST['site'];
$_POST['phase'];