首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP提交表单不起作用

PHP提交表单不起作用
EN

Stack Overflow用户
提问于 2014-03-31 02:52:26
回答 4查看 1.3K关注 0票数 0

下面是一段将查询结果输入单选按钮的代码。然后,当用户按下表单中的一个按钮时,它会移动到页面test.php。但是,我遇到了一个问题,即第二段代码(在test.php上)似乎无法工作,尽管我看不出有什么理由不应该这样做。谢谢。

代码语言:javascript
复制
<?php while($row = mysql_fetch_assoc($result)): ?>
<tr>
    <td><input type="radio" name="server" value="<?php echo $row['serverId']; ?>" /></td>
    <td><?php echo $row['userName']; ?></td>
    <td><?php echo $row['dateCreated']; ?></td>
    <td><?php echo $row['serverName']; ?></td>
    <td><?php echo $row['serverId']; ?></td>
    <td><?php echo $row['publicDNS'] ?></td>
    <td><?php echo $row['isRunning']; ?></td>
</tr>
<?php endwhile; ?>
</table>
<br>
<?php endif; ?>

<form method="post" name="server_information" id="server_information" action="test.php">
<input type="submit" name="server_stop" value="Stop Server"/>
<input type="submit" name="server_terminate" value="Terminate Server"/>
</form>

</body>
</html>  

第二部法典:

代码语言:javascript
复制
<?php
if (isset($_POST['server_stop'])) {
    echo "Server Stopped";
}

if (isset($_POST['server_terminate'])) {
    echo "Server Terminated"
}

?>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-03-31 02:54:26

$_POST['submit']必须是$_POST['server_stop']

代码语言:javascript
复制
<?php
if (isset($_POST['server_stop'])) {
    echo "Server Stopped";
}

if (isset($_POST['server_terminate'])) {
    echo "Server Terminated";
}

?>
票数 1
EN

Stack Overflow用户

发布于 2014-03-31 03:36:18

你的代码:

代码语言:javascript
复制
<?php
if (isset($_POST['server_stop'])) {
    echo "Server Stopped";
}

if (isset($_POST['server_terminate'])) {
    echo "Server Terminated"
}

?>

这两种条件在表单提交时都是正确的。如果要区分按下了哪个提交按钮,则需要进行隐藏输入并使用一些javascript:

代码语言:javascript
复制
<form method="post" name="server_information" id="server_information" action="test.php">
<input type="submit" name="server_stop" value="Stop Server" onclick="whatwasclicked(this);" />
<input type="submit" name="server_terminate" value="Terminate Server" onclick="whatwasclicked(this);" />
<input type="hidden" name="clicked" id="clicked" />
</form>

您的javascript将是:

代码语言:javascript
复制
function whatwasclicked(c) {
$("#clicked").val() = c.value;
}

现在,在PHP方面,您将检查$_POST['clicked']并查看按下了哪个按钮。

编辑:请注意这里正在使用Jquery .所以一定要加载那个库。

票数 0
EN

Stack Overflow用户

发布于 2014-03-31 03:51:33

如果您根本不想使用javascript,并且只有表单中的提交按钮,您也可以这样做:

代码语言:javascript
复制
<form method="post" name="server_information" id="server_information" action="test.php">
<input type="submit" name="clicked" value="Stop Server"/>
</form>
<form method="post" name="server_information" id="server_information" action="test.php">
<input type="submit" name="clicked" value="Terminate Server"/>
</form>

现在,只要检查一下$_POST['clicked'],就可以看到按下了哪个按钮。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22752893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档