zef*_*efs 3 html php forms submit echo
提交表单后,我的页面被重定向到 PHP 并显示回显。如何在不重定向到 PHP 页面的情况下显示回声?所以回声应该显示在html页面中(html表单所在的位置)。
<form method="post" action="../form.php">
<input type="submit" name="1" value="YES" />
<input type="submit" name="1" value="NO" />
</form>
Run Code Online (Sandbox Code Playgroud)
——
<?php
$answer = $_POST['1'];
if ($answer == "YES") {
echo 'Good!!!';
}
else {
echo 'Try Again!';
}
?>
Run Code Online (Sandbox Code Playgroud)
我想您可以使用<iframe>和 javascript的组合来获得结果。
<form method="post" action="submit.php" target="myIframe" >
<input type="submit" name="1" value="YES" />
<input type="submit" name="1" value="NO" />
</form>
<iframe name="myIframe">
</iframe>
Run Code Online (Sandbox Code Playgroud)
你不能在同一个页面上做到这一点——至少在没有 AJAX 等异步客户端-服务器通信技术的情况下不能。否则,您可以使用以下内容:
<form action="<?php echo $_SERVER['PHP_SELF']; ? method=....>"
Run Code Online (Sandbox Code Playgroud)
作为您的表单开始标记,然后将 PHP 处理代码放在文档顶部,如下所示:
<?php
if(isset($_POST['form_field_name'])){
//process your data here
?>
HTML in case of Form filled in goes here
<?php
}else{
?>
HTML in case of Form not filled in goes here
<?php
}
?>
HTML in any case goes here
Run Code Online (Sandbox Code Playgroud)
通过这种方式,您可以根据表单是否已填写来更改页面布局。$_SERVER['PHP_SELF'] 包含对当前请求页面的引用,因此即使重命名也始终设置为正确的页面。这可以节省您跟踪错误的时间。