PHP form提交后,php代码无法解析
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP form提交后,php代码无法解析相关的知识,希望对你有一定的参考价值。
使用的post方法 <form action="results.php" method="post">
result.php代码如下:
<html>
<head>
<title> 搜索结果显示页</title>
</head>
<body>
<H1>简单商城搜索结果</H1>
<?
$searchtype=$_POST['searchtype'];
$searchterm=$_POST['searchterm'];
//if(!$searchtype||!$searchterm)
//echo"You have not entered search details.Please bo back and try again.";
//exit;
//
var_dump($searchterm);
?>
</body>
</html>
跳转后html区域显示正常,php区域空白,但是如果查看源代码可以看见php代码,单独测试result.php也正常,会显示null,但是填写表单,提交之后跳转的话,php区域就不显示了。。。
已经打开short_open_tag =on,
据我的判断,如果传过来的$_POST[\'searchtype\']、$_POST[\'searchterm\']是空值的话,var_dump($searchterm) 也不会有数据输出,最终的结果导致php区域空白。追问
不是哎,我是用的var_dump(),就算是空值也会显示null的,结果是php区域这边什么都没有,一片空白。。
追答那你试试把<? 修改成 <?php试试,也可能你设置的 short_open_tag =on 没起作用。
追问终于发现不是php.ini的配置问题,而是我使用的环境的问题。。Zend Studio和Apatana运行html的时候会在地址前面加上8000。。所以html可以运行,但是php无法解析,因为我的php监听的是80端口。。。现在在努力尝试解决这个问题。。。不管怎样,还是谢谢你了。。
参考技术A 你在浏览器查看源代码能看见PHP代码 说明你的PHP 代码显示的有问题,<? ……?>第一个问号之后是不是少了个"php"……追问这个是用的简单模式,我把short_open_tag=on,设为on之后可以这样写
追答都选最佳回答了 解决问题了吧
php页面表单提交form校验后再提交,非ajax提交
form表单校验后,在执行提交动作:
<form method="post" action="{:U(‘Custom/addmsg‘)}" id="massage"> <ul> <li><input name="name" maxlength="18" type="text" placeholder="您的姓名" class="text1" /></li> <li><input name="mobile" maxlength="11" type="text" placeholder="您的手机" class="text1" /></li> <li><textarea name="message" maxlength="300" class="text2" placeholder="您的留言"></textarea></li> </ul> <input type="text" readonly value="提交" class="sub-btn message" /> </form>
js:
//message表单非ajax提交
$(".message").click(function(){
var name = $.trim($("input[name=‘name‘]").val());
var mobile = $.trim($("input[name=‘mobile‘]").val());
var message = $.trim($("textarea[name=‘message‘]").val());
if(name && mobile && message){
$("#message").submit();
})
以上是关于PHP form提交后,php代码无法解析的主要内容,如果未能解决你的问题,请参考以下文章
jQuery.form.js 使用ajaxForm、ajaxSubmit提交表单上传文件后服务器端返回json数据IE浏览器无法解析。