1、在视图中显示控制器变量。
在控制其中为变量赋值即可,如 $this->info_user=$user;然后在视图中可直接使用。
2、html显示数组使用 volist标签
<volist name="info_user" id="vo">
{$vo.username} {$vo.email}即可使用数组里的键值对
3、隐藏button <button type="submit" style="display:none">提交修改</button>
4、在视图html中添加js代码,必须注意一点:js代码的引入必须在head标签中声明!
<block name="head"> <script type="text/javascript"> function writable(){ alert("5"); } </script> </block>
或者
<block name="head"> <script type="text/javascript" src="/Public/js/Contribute/index.js"></script> </block>
这样才能够使用javascript里面的函数。
5、使用javascript函数来修改html标签的readOnly属性。
var username = document.getElementsById("1");
username.readOnly = "";
//将提交按钮设为可见 display:none --> display:inline或默认
var submit = document.getElementsByName("submit");
submit[0].style.display = ""; 默认为inline可见
6、getElementsByName与getElementById的区别:
var username = document.getElementsByName("username");获取多个名为username的对象,结果是一个数组,使用时按照username[i]方式来修改属性;
var username = document.getElementsById("1");获取特定的一个对象。直接使用即可。
7、跳转页面
$this->success('修改成功','/User/userinfo');
$this->error('修改失败','/User/userinfo');
8、利用POST提交的数据更新数据库
//如果不是post提交,直接报错。
if (!IS_POST) halt("页面不存在");
//将修改后的个人信息写入数据库
$User = D("User");
$id = session('user')['id'];
$where['id'] = $id;
//使用数组来修改数据库
$data['email'] = I('post.email');
$data['telephone'] = I('post.telephone');
$data['last_login_ip'] = I('post.last_login_ip');
$User->where($where)->save($data);
注意:save操作的结果返回的值是0或者1或者false。其中false代表更新操作失败;0和1表示操作成功,0表示未影响任何记录,1表示有记录收到影响。