thinkphp3.2 数据库添加内容怎样用field过滤?

手册里说,这样最终只有name字段的数据被允许写入!为什么我试下来.所有字段都被写入了?$data['name']='thinkphp';$data['email']='... 手册里说,这样最终只有name字段的数据被允许写入!为什么我试下来.所有字段都被写入了?
$data['name'] = 'thinkphp';
$data['email'] = 'thinkphp@gmail.com';
$data['test'] = 'test';
$User = M('User');
$User->field('name')->data($data)->add();
展开
 我来答
微秃中坑
2014-07-22 · 超过32用户采纳过TA的回答
知道答主
回答量:68
采纳率:0%
帮助的人:74.9万
展开全部
在thinkphp中,$User->...->select()/add()/save()这个连贯操作里的'...'部分是不分顺序的.
你换个写法: $User->field('name')->save($data);或者$User->field('name')->add($data)
这个才是手册里提到的字段过滤
更多追问追答
追问
试过了没用,我现在确信3.2没有新增记录过滤功能!
追答

换个方式,就是麻烦点

$result = $User->field('name')->create($data);
if($result) {
    $User->save();
}else{
    输出错误信息
}

我现在就是这样做添加或者更新的!

ks陈华生
2014-07-19 · 超过15用户采纳过TA的回答
知道答主
回答量:87
采纳率:0%
帮助的人:48.3万
展开全部
$User->data($data)->field('name')->add();
追问
看似很有道理 ,不过试了一下还是不行哦。~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
伟少love静静
2014-07-14 · TA获得超过205个赞
知道小有建树答主
回答量:529
采纳率:0%
帮助的人:316万
展开全部
手册不是这样写的么。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhao61
2014-07-15 · TA获得超过1459个赞
知道小有建树答主
回答量:1065
采纳率:0%
帮助的人:867万
展开全部
data里有的都会写进去
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式