thinkphp 判断post是不是有数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp 判断post是不是有数据相关的知识,希望对你有一定的参考价值。

可以设置一个User/useradd.html作为模板。然后写一个UserAction.php。在UserAction.php中写一个userAdd方法,使用isPost()来判断是否状态,就可以把提交前和提交后写在一个Action里面了。
//用户添加
public function userAdd()
if($this->isPost())
//处理

else
$this->display('userAdd');

参考技术A f($this->isPost())
存在

else
不存在

thinkphp怎么判断post提交是不是为空

//添加商品
public function add()
$goods = D('goods');
if(!empty($_POST))
$goods -> create();
$result = $goods -> add();
if($result)
echo "success";
else
echo "falie";

else
$this->display();



为什么我这样判断后,表单什么都不填也能提交成功呢

thinkphp判断post提交是否为空的方法如下:
1、HTML中form代码:
<div class="login">
<form method="post" action=":U('login')">
<p><img src=":U('verify')"></p>
<div class="clear"></div>
<p>验证码:<input type="tel" name="verify" class="code"></p>
<p><input type="submit" class="sub" value="提交"></p>
</form>
</div>
2、控制器部分代码:
* 登陆处理类
*/
public function login()
if (!IS_POST)
$this->error('页面不存在');

$Verify = new \Think\Verify(); //这里开始校验参数是否为空
$code =I('post.verify');
if(!$Verify->check($code))
$this->error('验证码错误');

redirect($_SERVER['HTTP_REFERER']);

验证码校验函数:
function check_code($code, $id = "")
$verify = new \Think\Verify();
return $verify->check($code, $id);

校验规则:如果返回false就证明校验失败。
参考技术A 常量 说明
IS_GET 判断是否是GET方式提交
IS_POST 判断是否是POST方式提交
IS_PUT 判断是否是PUT方式提交
IS_DELETE 判断是否是DELETE方式提交
IS_AJAX 判断是否是AJAX提交
REQUEST_METHOD 当前提交类型
参考技术B 1、你这样做判断就不对了,$_POST是个数组,而且里边有键名和键值,虽然键值是空的所以不能用!empty($_POST)来判断
2、用模型的自动验证功能进行判断
3、用单个字段来判断,如:if( I("post.goods_name") == "")............追问

但是我网上查了些资料,和一些视频他们是可以if(!empty($_POST))这样判断的,而我这样判断为什么就不行呢,我用的是thinkphp3.2的。这是怎么回事呢

参考技术C 假设提交过来的是name
if(!I('post.name'))
...

以上是关于thinkphp 判断post是不是有数据的主要内容,如果未能解决你的问题,请参考以下文章

thinkphp 判断请求类型

thinkphp3.2 请求怎么发送 put

ThinkPHP关键字搜索(从MySQL数据库中)

ThinkPHP3.2.3下使用create函数更新数据安全使用方法

ThinkPHP框架的增删改

thinkphp3.2之模型(M层)