Laravel没有将Json数据插入MySQL

Dra*_*ire 1 php laravel

请查看下面的代码,无法找出错误所在,但是插入未发生...有关如何调试/修复的任何想法

Laravel-控制器

namespace App\Http\Controllers;

use App\Models\PhoneContactsPhonesModel;
use Illuminate\Http\Request;

class CreatePhoneContactsController extends Controller
{
    public function create(Request $request, $id)
    {

        $users = new PhoneContactsPhonesModel;
        $json = dd(json_decode($request->getContent(), true));

        foreach ($json as $key => $value) {

            $users->mysql_user_id = $id;
            $users->phone = $key;
            $users->name = $value;
            $users->save();

        }

    }
}
Run Code Online (Sandbox Code Playgroud)

Laravel-路线

Route::post('create_phone_contacts/{id}', 'CreatePhoneContactsController@create');
Run Code Online (Sandbox Code Playgroud)

foreach循环出了点问题-循环外的硬编码值似乎工作良好

小智 5

删除dd()并在for循环中创建对象。这样可以解决您的问题。

namespace App\Http\Controllers;
use App\Models\PhoneContactsPhonesModel;
use Illuminate\Http\Request;

class CreatePhoneContactsController extends Controller
{
    public function create(Request $request, $id)
    {  
        $json = json_decode($request->getContent(), true);
        foreach ($json as $key => $value) {
            $users = new PhoneContactsPhonesModel;// ---> here
            $users->mysql_user_id = $id;
            $users->phone = $key;
            $users->name = $value;
            $users->save();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)