>백엔드 개발 >PHP 튜토리얼 > ThinkPHP操作数据库的有关问题

ThinkPHP操作数据库的有关问题

WBOY
WBOY원래의
2016-06-13 12:57:16782검색

ThinkPHP操作数据库的问题
很诡异,无法操作数据库


class TestAction  extends Action {
    function index() {
        $data=array('username'=>'sunhu',
            'email'=>'asd',
            'content'=>'hello!'
        );
        $list = M("Guestbook")->add($data);
        if(!$list) {
            echo 0;
        }else {
            echo 1;
        }

    }
}


?>

浏览器输出为0


------解决方案--------------------
引用:

class TestAction extends Action {
  function index() {
  $data=array('username'=>'sunhu',
  'email'=>'asd',
  'content'=>'hello!'
  );
  $Gusetbook=M(Guestbook);
  $Gus……


请不要误导人家!你写的这一句 $Gusetbook->create();是没必要的,因为后面用的是add来添加数据的
难道你觉得楼主这样写
$list = M("Guestbook")->add($data);
  if(!$list) {
  echo 0;
  }else {
  echo 1;
  }
跟你说的
$Guestbook->add($data);//这边只是个插入操作,并没有数据返回的,如果你想有提示的话可以这样写
  if($Guestbook->add($data);) {
  $this->success("操作成功");
  }else {
  $this->error("操作失败");
  }
不一样??

------解决方案--------------------
我个人觉得有可能问题出在模型的实例化上。
如果你自定义的模型类跟标准配置不同,例如说用$trueTableName之类的定义了表名。这时候使用M方法可能会无法正常的实例化模型。
你可以先尝试使用D方法实例化
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.