不能向数据库插入数据

来源:3-6 用户业务逻辑

雨Qi无声

2017-04-16 17:11

if (! $stmt->execute()) {            throw new Exception('注册失败', ErrorCode::REGISTER_FAIL);        } 一直报错,通过print $this->_db->errorCode();查看到错误代码00000又没有错,这是怎么回事?

写回答 关注

3回答

  • 哥很傻
    2018-11-25 14:16:32

    字段 createdAt 改成 created_at

  • 雨Qi无声
    2017-04-17 11:11:24

          if (empty($username)) {

                throw new Exception('用户名不能为空', ErrorCode::PASSWORD_CANNOT_EMPTY);

            }

            if (empty($password)) {

                throw new Exception('密码不能为空', ErrorCode::PASSWORD_CANNOT_EMPTY);

            }

            if ($this->isUsernameExists($username)) {

                throw new Exception('用户名已经存在', ErrorCode::USERNAME_EXISTS);

            }

            // 写入数据库

            $sql = 'INSERT INTO `user`(`username`, `password`, `createdAt`) VALUES(:username,:password,:ceatedAt)';

            $ceatedAt = time();

            $password = $this->_md5($password);

            

            $stmt = $this->_db->prepare($sql); // 解析sql语句

            

            $stmt->bindParam(':username', $username);

            $stmt->bindParam(':password', $password);

            $stmt->bindParam(':ceatedAt', $ceatedAt);

            

            if (! $stmt->execute()) {

                print $this->_db->errorCode();

                print_r($this->_db->errorInfo());

                throw new Exception('注册失败', ErrorCode::REGISTER_FAIL);

            }

            

            return [

                'id' => $this->_db->lastInsertId(),

                'username' => $username,

                'ceatedAt' => $ceatedAt

            ];


    慕圣0362... 回复野生码农在线...

    噢噢,明白

    2017-04-19 09:20:38

    共 4 条回复 >

  • 慕莱坞0625554
    2017-04-16 20:02:36

    是不是没commit

    雨Qi无声 回复慕圣0362...

    全部代码,我是照着老师的敲的呢

    2017-04-17 11:12:15

    共 3 条回复 >

Restful API实战

PHP后端开发者如何迎上移动互联网发展热潮?

44002 学习 · 118 问题

查看课程

相似问题