mercredi 24 octobre 2018

Why the picture value is not uploaded into DB from laravel form?

I have a form for adding new profile. In the form, there is a file input field to enable user upload his/her picture to be saved in DB as its pathname to image saved in folder server.

However, my testing shows that it doesn't detected input field has image and doesn't go into if ($request->hasFile('image')) statement loop. This is the form field for file upload.

 <div class="form-group">
            <div class="row">
              <label for="gambar" class="col-md-3 control-label">Gambar (Saiz gambar 250x300 pixels)</label>
              <div class="col-md-7">
                {!! Form::file('image', array('class' => 'form-control')) !!}
              </div>
            </div>
        </div>

This is the controller function to upload the image:

    // **************************
    if ($request->hasFile('image')) {
        $image = $request->input('image');
        $photo = $request->file('image')->getClientOriginalExtension();
        $destination = public_path() . '/images/';
        $request->file('image')->move($destination, $photo);
        $data = ['name' => $request->nama,
             'Nobadan' => $request->no_badan,
             'nokp' => $request->no_kp,
             'pdrm_dd' => $pdrmdd,
             'pdrm_yy' => $request->pdrm_yy,
             'SectionID' => $request->sections,
             'CategoryID' => $request->kategori,
             'OperasiID' => $request->pangkat,
             'AgamaID' => $request->agama,
             'JantinaID' => $request->jantina,
             'BangsaID' => $request->bangsa,
             'nolahir' => $request->no_surat_lahir,
             'kumdarah' => $request->kumdarah,
             'Picture' => $request->$photo,
             ];

        $itemregistrations = DB::table('itemregistrations')->insert($data);

        if($itemregistrations)
            return redirect('profil');
        else
            return redirect()->back()->withInput();

    } else {
    $data = ['name' => $request->nama,
             'Nobadan' => $request->no_badan,
             'nokp' => $request->no_kp,
             'pdrm_dd' => $pdrmdd,
             'pdrm_yy' => $request->pdrm_yy,
             'SectionID' => $request->sections,
             'CategoryID' => $request->kategori,
             'OperasiID' => $request->pangkat,
             'AgamaID' => $request->agama,
             'JantinaID' => $request->jantina,
             'BangsaID' => $request->bangsa,
             'nolahir' => $request->no_surat_lahir,
             'kumdarah' => $request->kumdarah,
             // 'Picture' => $request->$filePath,
             ];

    $itemregistrations = DB::table('itemregistrations')->insert($data);

    if($itemregistrations)
        return redirect('profil');
    else
        return redirect()->back()->withInput();

    }



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire