Laravel Ошибка обновления с помощью foreach: синтаксическая ошибка, непредвиденная '' (T_STRING), ожидается ']' - PullRequest
0 голосов
/ 03 августа 2020

У меня есть БД на SQL сервере, и я выполняю ее с помощью Laravel. Однако я получаю следующую ошибку.

Синтаксическая ошибка ParseError, неожиданная '' (T_STRING), ожидается ']'

Я пытаюсь понять, почему это происходит. Он показывает эту синтаксическую ошибку, но я ее не понимаю. Я не могу найти опечатку. Читаю и обновляю базу SQL Сервера. Ошибка или что-то в этом роде?

$siswa_regNo = DB::table('upload_tbpendaftaran$')
    ->select('Reg_No', 'F_Name',
        'N_Name',
        'Place',
        'Birthday',
        'BirthID',
        'Gender',
        'Bloods',
        'Glass',
        'Height',
        'Weight',
        'Child_No',
        'Child_Qty',
        'School_Code',
        'School_Name',
        'School_Address',
        'School_Distric',
        'School_Distric_Desc',
        'School_City',
        'School_City_Desc',
        'School_Province',
        'School_Province_Desc',
        'School_NEM_Avg',
        'School_STTB',
        'Certificate_ID',
        'Stay',
        'Stay_Address',
        'Stay_RT',
        'Stay_RW',
        'Stay_Village',
        'Stay_Distric',
        'Stay_Distric_Desc',
        'Stay_City',
        'Stay_City_Desc',
        'Stay_Province',
        'Stay_Province_Desc',
        'Stay_Phone',
        'Stay_HP',
        'Stay_Postal',
        'Stay_Longitude',
        'Stay_Latitude',
        'Home_Address',
        'Home_RT',
        'Home_RW',
        'Home_Village',
        'Home_Distric',
        'Home_Distric_Desc',
        'Home_City',
        'Home_City_Desc',
        'Home_Province',
        'Home_Province_Desc',
        'Home_Postal',
        'Home_Phone',
        'Home_HP',
        'Home_HP2',
        'Home_Longitude',
        'Home_Latitude',
        'EMail',
        'Email_Parent',
        'Email_Parent2',
        'ID_Cards',
        'Distance',
        'Time_HH',
        'Time_MM',
        'TransportID',
        'TransportDesc',
        'Remarks',
        'NISN',
        'ExamUNNo')
    ->orderBy('Reg_No')
    ->get();

foreach ($siswa_regNo as $s) {
    DB::table('Registration')
        ->where('Reg_No', $s->Reg_No)
        ->update([
            'F_Name' => $s->F_Name,
            'N_Name' => $s->N_Name,
            'Place' => $s->Place,
            'Birthday' => $s->Birthday,
            'BirthID' => $s->BirthID,
            'Gender' => $s->Gender,
            'Religion' => $s->Religion,
            'Citizen' => $s->Citizen,
            'FamilyID' => $s->FamilyID,
            'Bloods' => $s->Bloods,
            'Glass' => $s->Glass,
            'Height' => $s->Height,
            'Weight' => $s->Weight,
            'Child_No' => $s->Child_No,
            'Child_Qty' => $s->Child_Qty,
            'School_Code' => $s->School_Code,
            'School_Name' => $s->School_Name,
            'School_Address' => $s->School_Address,
            'School_Distric' => $s->School_Distric,
            'School_Distric_Desc' => $s->School_Distric_Desc,
            'School_City' => $s->School_City,
            'School_City_Desc' => $s->School_City_Desc,
            'School_Province' => $s->School_Province,
            'School_Province_Desc' => $s->School_Province_Desc,
            'School_NEM_Avg' => $s->School_NEM_Avg,
            'School_STTB' => $s->School_STTB,
            'Certificate_ID' => $s->Certificate_ID,
            'Stay' => $s->Stay,
            'Stay_Address' => $s->Stay_Address,
            'Stay_RT' => $s->Stay_RT,
            'Stay_RW' => $s->Stay_RW,
            'Stay_Village' => $s->Stay_Village,
            'Stay_Distric' => $s->Stay_Distric,
            'Stay_Distric_Desc' => $s->Stay_Distric_Desc,
            'Stay_City' => $s->Stay_City,
            'Stay_City_Desc' => $s->Stay_City_Desc,
            'Stay_Province' => $s->Stay_Province,
            'Stay_Province_Desc' => $s->Stay_Province_Desc,
            'Stay_Phone' => $s->Stay_Phone,
            'Stay_HP' => $s->Stay_HP,
            'Stay_Postal' => $s->Stay_Postal,
            'Stay_Longitude' => $s->Stay_Longitude,
            'Stay_Latitude' => $s->Stay_Latitude,
            'Home_Address' => $s->Home_Address,
            'Home_RT' => $s->Home_RT,
            'Home_RW' => $s->Home_RW,
            'Home_Village' => $s->Home_Village,
            'Home_Distric' => $s->Home_Distric,
            'Home_Distric_Desc' => $s->Home_Distric_Desc,
            'Home_City' => $s->Home_City,
            'Home_City_Desc' => $s->Home_City_Desc,
            'Home_Province' => $s->Home_Province,
            'Home_Province_Desc' => $s->Home_Province_Desc,
            'Home_Postal' => $s->Home_Postal,
            'Home_Phone' => $s->Home_Phone,
            'Home_HP' => $s->Home_HP,
            'Home_HP2' => $s->Home_HP2,
            'Home_Longitude' => $s->Home_Longitude,
            'Home_Latitude' => $s->Home_Latitude,
            'EMail' => $s->EMail,
            'Email_Parent' => $s->Email_Parent,
            'Email_Parent2' => $s->Email_Parent2,
            'ID_Cards' => $s->ID_Cards,
            'Distance' => $s->Distance,
            'Time_HH' => $s->Time_HH,
            'Time_MM' => $s->Time_MM,
            'TransportID' => $s->TransportID,
            'TransportDesc' => $s->TransportDesc,
            'Remarks' => $s->Remarks,
            'NISN' => $s->NISN,
            'ExamUNNo' => $s->ExamUNNo
        ]);
}

Я очень запутался, помогите пожалуйста.

1 Ответ

0 голосов
/ 03 августа 2020

в секунду FOREACH, когда вы получаете данные из DB, вы должны добавить ->first() или ->get() в последнем.

foreach ($siswa_regNo as $s) {
    DB::table('Registration')
        ->where('Reg_No', $s->Reg_No)
        ->first()  // this line added
        ->update([
            'F_Name' => $s->F_Name,
            'N_Name' => $s->N_Name,
            'Place' => $s->Place,
            .
            .
            .
        ]);
}

или, если вы хотите использовать ->get(), вам также следует foreach ...

...