我有以下php代码打印出SQL表的内容。
$query="select * from TABLE";
$rt=mysql_query($query);
echo mysql_error();
mysql_close();
?>
<i>Name, Message, Type, Lat, Lng, File </i><br/><br/>
<?php
while($nt=mysql_fetch_array($rt)){
if($nt[name] != null){
echo "$nt[id] $nt[name] $nt[message] $nt[type] $nt[lat] $nt[lng] $nt[file]";
}
}
?>
如果按钮被单击该行,我将如何为每个“行”实现一个按钮,它会将该行的信息提交给另一个php文件?
我希望它看起来像......
details details2 details3 BUTTON
details4 details5 details6 BUTTON
details7 details8 details9 BUTTON
details10 details11 details12 BUTTON
如果BUTTON在第1行被点击,则详细信息1,2,3将被发送到php文件,在第2行则将发送4,5,6等等。我将如何执行此操作?
感谢。
答案 0 :(得分:2)
它会是这样的,取决于你需要发送的数据:
while($nt = mysql_fetch_array($rt)) {
if($nt[name] != null){
echo "$nt[id] $nt[name] $nt[message] $nt[type] $nt[lat] $nt[lng] $nt[file] ".'<a href="another_script.php?id='.$nt['id'].'">send request</a><br/>';
}
}
答案 1 :(得分:0)
您可以使用GET方法并将查询字符串发送到第二个php页面并在那里接收变量,例如
next.php?variable1=value1&variable2=value2&...
或使用POST方法为每行创建一个隐藏表单,并为要发送的每个变量分配一个隐藏字段。
<form method="post" action"next.php">
<input type="hidden" name="variable1" value="value1" />
<input type="hidden" name="variable2" value="value2" />
.
.
.
</form>
或者不是发送所有值,只需使用这两种方法中的任何一种发送行ID(如果有的话),然后在next.php中运行另一个查询以从数据库中获取所需的信息。
答案 2 :(得分:0)
只需发送ID并从另一个脚本中获取数据库中的结果,而不是提交整个数据。如果你想要一个输入按钮,你可以做
<form action="/other-script.php" method="GET">
<?php printf('<input type="submit" name="id" value="%s" />', $nt["id"]); ?>
</form>
但您也可以添加一个链接,例如
printf('<a href="/other-script.php?id=%s">Submit ID</a>', $nt["id"]);
如果您确实想要再次发送整个行值,则必须将它们转换为表单输入。在那种情况下,我会通过POST发送它们。