【问题标题】:cakephp error while saving data保存数据时cakephp错误
【发布时间】:2013-07-24 14:45:59
【问题描述】:

我正在开发 cakephp 2.x ......好吧,场景是我正在向我的 webapp 发送消息......几乎有 509 条消息......问题是它正在将一些消息保存到数据库中有些消息它在 android 控制台上给了我一个错误......所以首先我想问一下你们都认为实际问题在哪里或可能在哪里......另一个认为有办法我可以在未保存到数据库中的数据上抛出一些异常错误..所以我可以跟踪未保存到并导致问题的特定消息...我需要一些帮助来调试此代码

这是我的代码

public function message(){


    $this->loadModel('Message');

    if ($this->request->isPost()){

        $json = $this->request->data('json');
        $data = json_decode($json, TRUE);

        foreach($data as $datas){

            $date = $datas['date'];
            $mobileNo = $datas['mobileNo'];
            $mobileNo = AllSecure::replaceDashesAndSpaces($mobileNo);


            $body = $datas['body'];
            $timestamp = $date/1000;
            $date = date('Y-m-d h:i' , $timestamp);

            $this->request->data['Message']['mobileNo'] = $mobileNo;

            $this->request->data['Message']['body'] = $datas['body'];
            $this->request->data['Message']['type'] = $datas['type'];
            $this->request->data['Message']['User_id'] = $datas['idUser'];
            $this->request->data['Message']['dateTime'] = $date;

            $count = $this->Message->checkTextMessages($mobileNo,$body,$date,$datas['idUser']);
            if($mobileNo!=null){
                if($count>0){
                }else{
                    $this->Message->create();
                    $this->Message->save($this->request->data


                }
            }

        }
    }


}

【问题讨论】:

  • 尚未测试您的代码,但如果您从循环中保存数据,请使用 saveAll 而不是 save
  • 可以查看save方法的返回值。如果为 false,则表示失败,您可以抛出异常。
  • @ankit 谢谢你好,我会试试可能会做点什么
  • 除了看起来很奇怪(代码在循环中更新$this->request->data,而不是变量) - 问题中的代码没有任何明显错误。 it gives me an error on android console - 什么错误?另外,您使用的是什么版本的 Cake - 您标记了两个不同的版本。
  • @dhofstet 怎么样?我的意思是我抛出哪个异常?或者我应该像 echo "error" 那样硬连接它?

标签: php cakephp exception-handling cakephp-2.0 cakephp-2.1


【解决方案1】:

好吧,我自己解决了我的问题...我不知道为什么会导致问题...所以我这样做了..它有效

  foreach($data as $datas){
      $i=0
       $this->request->data['Message'][$i]['mobileNo'] = $datas['mobileNo'];;

            $this->request->data['Message'][$i]['body'] = $datas['body'];
            $this->request->data['Message'][$i]['type'] = $datas['type'];
            $this->request->data['Message'][$i]['User_id'] = $datas['idUser'];

            $i++;

            if($mobileNo!=null){

            }

        }

        $isSave = $this->Message->saveAll($this->request->data["Message"]);
        echo $isSave;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-14
    • 2013-09-24
    • 2023-03-28
    • 2012-08-08
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多