首页 > 解决方案 > 将群发短信的记录保存到 db laravel

问题描述

我已经从用户表中获取了 id 和 mobile_num。我必须将该表中的 id 名称作为 user_id、mobile_num 和 status(0,1) 插入另一个表 (wc_sms_status)。sendSMSFunction 工作正常。

  public function SendBulkSms()
  {  
    $usersNumber = User::select('id','mobile_num')->whereIn('id', [5,6,7,8])->get();  
    foreach($usersNumber as $userNumber)
    {  
    if (!$userNumber->mobile_num) 
    {
        $this->sendSmsFunction($userNumber->mobile_num);  
        DB::table('wc_sms_status')->insert([
            ['user_id' => 'id'],
            ['mobile_num' => 'mobile_num'] // set the status=1 // how query can be changed?
        ]);
       
    } 
    elseif($userNumber->mobile_num == exist && status == 0)
    {
        $this->sendSmsFunction($userNumber->mobile_num);
        $this->save();
    }
    else{

       }
   }
}

标签: databaselaravelbulksms

解决方案


做这个 :

    public function SendBulkSms()
      {  
//assuming there is a relationship between your model users and wc_sms_status called wcSmsStatus

        $usersNumber = User::with('wcSmsStatus')->select('id','mobile_num')->whereIn('id', [5,6,7,8])->get();  
        foreach($usersNumber as $userNumber)
        {  
          if (!$userNumber->mobile_num) 
            {
                $this->sendSmsFunction($userNumber->mobile_num);  
                DB::table('wc_sms_status')->insert([
                    'user_id' => $userNumber->id,
                    'mobile_num' => $userNumber->mobile_num, 
                    'status' => 1, 
                ]);
            } elseif ($userNumber->mobile_num && $userNumber['wcSmsStatus']->status === 0)
                {
                   $this->sendSmsFunction($userNumber->mobile_num);
                   $this->save();
                } else {
    
                }
        }
    }

推荐阅读