thinkphp为什么每次删除只删除了users表里的用户,订单和产品信息都删除不了,小白求解 10
//删除用户publicfunctiondelete($id){$orders=M('orders');$temp=$orders->query("selectorder...
//删除用户
public function delete($id)
{
$orders = M('orders');
$temp = $orders->query("select ordernum from orders
where userid = $id");
$orderproduct=M('orderproduct');
$order = M('orders');
$users = M('users');
//var_dump($all);
$temp1 = $orderproduct->where("ordernum = '$ordernum' ")->delete();
$temp3 = $order->where("ordernum = '$ordernum' ")->delete();
$temp2 = $users->where("id = $id ")->delete();
if(false!== temp3 && false!== temp1 && false!== temp2 )
{
$this->success('成功');
}
else
{
$this->error('失败');
}
}
上面有点小问题,$temp因该是改成$ordernumde ,也是不行的 展开
public function delete($id)
{
$orders = M('orders');
$temp = $orders->query("select ordernum from orders
where userid = $id");
$orderproduct=M('orderproduct');
$order = M('orders');
$users = M('users');
//var_dump($all);
$temp1 = $orderproduct->where("ordernum = '$ordernum' ")->delete();
$temp3 = $order->where("ordernum = '$ordernum' ")->delete();
$temp2 = $users->where("id = $id ")->delete();
if(false!== temp3 && false!== temp1 && false!== temp2 )
{
$this->success('成功');
}
else
{
$this->error('失败');
}
}
上面有点小问题,$temp因该是改成$ordernumde ,也是不行的 展开
3个回答
2015-09-07
展开全部
上代码,报错信息,顺便预测下是不是建了外健
更多追问追答
追问
追答
//删除用户 public function delete($id) { $orders = M('orders'); $temp = $orders->query("select ordernum from orders where userid = $id"); $orderproduct=M('orderproduct'); $order = M('orders'); $users = M('users');
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$ordernum 这个变量没有赋值
更多追问追答
追问
我把$temp改成$ordernum也不行,这里的$temp是一位数组么?
追答
$temp = $orders->query("select ordernum from orders where userid = $id");
把这个$temp改成了$ordernum?= ...?
这样改下面还是不对的,query()等同于select()这里获取的数组,所以下面的条件
$orderproduct->where("ordernum = '$ordernum' ")->delete() 中的 where("ordernum = '$ordernum' ") 还是不对的,
如果 ordernum 是 orders 表的主键的话可以写成
$ordernum = implode(',', $temp);
$temp1 = $orderproduct->delete($ordernum);
如果不是主键的话,循环依次删除
foreach($temp as $val){
$temp1 = $orderproduct->where("ordernum = '$val' ")->delete();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询