为什么在页面加载时将提交按钮设置为true?

时间:2015-04-17 21:16:29

标签: php button submit pageload

我试图理解为什么这个示例表单正在起作用,尽管当页面最初加载时,提交按钮设置为true。这是一个示例,但潜在的问题是我在单击提交按钮时尝试执行某些操作,但是当页面加载时,代码就像按钮已被单击一样运行。

<?php
   $GLOBALS["zipcode"] = null;
?>

<!--========================Dialogue Box========================-->

<h2 class="ind3">Service Area</h2>

<form name="zipcodeform" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
   <p>Enter your zip code:</p>
   Zip:
   <label><input type="text" name="zipcode" value=""></label>
   <p /><p />
   <input type="submit" name="submit" value="Submit">

</form>

<?php
   /*Test to see if form submit button has been pressed. */
   If (isset($_POST['submit'])) {echo "the button has been pressed!";}
?>

<!--========================Dialogue Box========================-->

我知道这很简单,但我花了几个小时用谷歌搜索并试图弄清楚我做错了什么。我希望对话框末尾的PHP代码仅在按下按钮时显示,而不是在页面加载时自动显示。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

看起来您正在尝试为客户端操作运行服务器端代码。

PHP将始终在页面加载之前执行。如果您想在按钮上捕获用户的操作,则需要使用JavaScript来处理点击事件或submit event

请参阅difference between server side and client side coding