20,359
社区成员
发帖
与我相关
我的任务
分享
$w = new \app\common\model\W;
$data = array();
$data['pid'] = $id;
$data['zid'] = '0';
log(' data: ');
log(var_export($data,true));
if($w->save($data)){
log(' sql ');
log($w::getLastSql());
}else{
log(' Err ');
log($w::getLastSql());
}
function log($txt="")
{
file_put_contents("log.txt", $txt ,FILE_APPEND);
}
data: array (
'pid' => '1',
'zid' => '0',
)
insert into tp_w ('pid','zid','rid') values (1,0,'x1')
你的这个sql,pid zid rid能用单引号的么,错误信息已经很明显,换成这个insert into tp_w (`pid`,`zid`,`rid`) values (1,0,'x1')
try{
log(' ok ');
$res = Db::execute($query);
log(" res: ");
log(var_export($res,true));
if($res){
log(" 插入成功! ");
}else{
log(" 插入失败! ");
}
} catch(\Exception $e) {
log(' Err: ' . $e->getMessage());
}
try{
log(' ok ');
$res = Db::execute($query);
if($res){
log(" 插入成功! ");
}else{
log(" 插入失败! ");
}
} catch(\Exception $e) {
log(' Err: ' . $e->getMessage());
}
这样子是有输出ok的,但是后面的就都没输出了。
try{
$res = Db::execute($query);
if($res){
log(" 插入成功! ");
}else{
log(" 插入失败! ");
}
} catch(\Exception $e) {
cjqtxt(' Err: ' . $e->getMessage());
}
//执行插入操作
$affected = Db::execute($sql);
//判断是否执行成功
if ($affected){
$this->success('插入成功!',url('ok'));
}else{
$this->error('插入失败');
}
这是从手册上copy的,建议多看看手册
$query = "insert into tp_w ('pid','zid','rid') values ($pid,$zid,'$rid')";
log(' query ' . $query);
if(Db::execute($query)){ ...
insert into tp_w ('pid','zid','rid') values (1,0,'x1')
怎么这条sql语句会报错:[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''pid','zid','rid') values (1,0,'x1')' at line 1