PHP:在准备好的语句上获取插入确认

我是准备陈述的新手,并试图让一些简单的工作.

这是我的数据库表:

`unblocker_users` (
  `uno` bigint(20) NOT NULL AUTO_INCREMENT,
  `user_email` varchar(210) DEFAULT NULL,
  `pw_hash` varchar(30) DEFAULT NULL,
  `email_confirmed` tinyint(4) DEFAULT NULL,
  `total_requests` bigint(20) DEFAULT NULL,
  `today_date` date DEFAULT NULL,
  `accessed_today` tinyint(4) DEFAULT NULL,)

这是我插入一些测试数据的功能

function add_new_user($e_mail1)
    {
    require_once "db.PHP";

$stmt = $MysqLi->prepare("INSERT INTO unblocker_users VALUES ('',?, ?,0,0,?,0)");
$stmt->bind_param('sss', $e_mail1, $this->genRandomString(1),$this->today_date()); 

$stmt->execute();

$stmt->close(); 
// ####### Below line is giving an error ########
$done = $stmt->affected_rows;

return $done;
    }

正如您在上面所看到的,我已经标记了给我一个错误的行.

Warning: unblocker_class::add_new_user() [unblocker-class.add-new-user]: Property access is not allowed yet in...

我哪里做错了?
我怎样才能得到某种成功插入行的确认?

谢谢!

解决方法:

在要访问受影响的行之前关闭准备好的语句

$done = $stmt->affected_rows;
$stmt->close(); 

return $done;

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...