Skip to main content

PHP LUMEN UPLOAD MEDIA

Halo semua kali ini aku mau lanjutin dari yang kemarin , yaitu mengupload sebuah media menggunakan php lumen , tanpa basa basi let's go

Membuat Table Profiles

masuk ke cmd pilih direktori lumen kalian lalu buat table tuliskan di cmd kalian codingan dibawah
php artisan make:migration create_profiles_table


setelah itu buka file profiles barusan masuk ke database/migration/"cari file profile table". lalu edit seperti dibawah ini.


jangan lupa di save
Setelah ini masuk ke cmd lagi lalu migrasi kan table nya
ketik
php artisan migrate


selesai.

Membuat Model File

Buatlah file baru dengan nama app/Models/Profile.php
lalu masukkan codingan dibawah ini.


selesai.

Membuat fungsi create dan update Profile

pertama masuk ke routes/web.php
tambahkan codingan pada line 36 seperti dibawah ini.


Selanjutnya buatlah file baru bernama ProfilesController.php pada app/Http/Controller.
isikan dengan codingan dibawah ini.

-----
<?php

namespace App\Http\Controllers;

use App\Models\Profile;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;

class ProfilesController extends Controller
{
    public function store(Request $request)
    {
        $input = $request->all();

        //validation
        $validationRules = [
            'first_name'=>'required|min:2',
            'last_name'=>'required|min:2',
            'summary'=>'required|min:10',
        ];
       
        $validator = \Validator::make($input, $validationRules);

        if($validator->fails()){
            return response()->json($validator->errors(),400);
        }
        //validation end
       
        //dibawah untuk mengecek profile dengan user_id terkait ada
        //kalo ada di update
        //kalo tidak ada di create
        $profile = Profile::where('user_id',Auth::user()->id)->first();

        if(!$profile){
            $profile = new Profile;
            $profile->user_id = Auth::user()->id;
        }
        $profile->first_name = $request->input('first_name');
        $profile->last_name = $request->input('last_name');
        $profile->summary = $request->input('summary');

        //jika ada image yang di upload
        if($request->hasFile('image')){
            $firstName = str_replace(' ', '_', $request->input('first_name'));
            $lastName = str_replace(' ', '_', $request->input('last_name'));

            $imageName = Auth::user()->id .'_'. $firstName .'_'. $lastName;
            $request->file('image')->move(storage_path('uploads/image_profile'), $imageName);

            //hapus image sebelummnya
            $current_image_path = storage_path('avatar').'/'.$profile->image;
            if(file_exists($current_image_path)){
                unlink($current_image_path);
            }
            $profile->image=$imageName;
        }
        //save profile
        $profile->save();
        return response()->json($profile,200);
    }
}
-----
Jangan lupa save
Test fungsi create pada postman seperti dibawah ini.


Selesai.

Membuat fungsi get profile

buka routes/web.php
isikan codingan ini.

.
Lalu buat fungsi show pada ProfilesController.php.


test fungsi get di postman

Selesai.

Membuat fungsi get image profiles

Tambahkan codingan router untuk image pada file web.php


Buka file ProfilesController.php tambahkan fungsi image seperti dibawah ini.


Test fungsi get image Profiles di postman

isikan url dengan salah seperti ini.


Lalu coba isikan url dengan benar seperti ini.
masukkan ke id yang mempunyai image.


Selesai.

Comments

Popular posts from this blog

CodeIgniter Tutor - mengubah ukuran upload

Halo disini aku langsung cepet aja ya karena simple tutorialnya pertama Bukalah file grocery_crud.php dari application/config . Ganti baris: $config['grocery_crud_file_upload_max_file_size'] = '20MB'; Menjadi $config['grocery_crud_file_upload_max_file_size'] = '200MB'; Maka kalian telah berhasil melakukan perubahan upload size. Jangan lupa save ya. selanjutnya buka XAMPP. Cari php.ini dan klik php.ini Pada file PHP.ini cari upload_max_filesize ubah ukuran sesuai dengan keinginan. Jangan lupa save ya selesai :D

CodeIgniter Tutor #3 upload audio

Halo, tutorial kali ini aku akan berfokus untuk menyimpan file file seperti audio video namun tutorial ini akan ke audio dulu ya, jadi ,... Let's check this out :D Langkah awal buatlah databasenya terlebih dahulu seperti ini : Sesudah ini kalian jangan dulu lanjutin, ini aku ada tutorial agar terlihat lebih menarik hehe 1. menghilangkan index.php pada url kamu klik 2. mengubah bahasa klik nah ayo lanjut... Setelah database audionya di buat dengan nama table "tb_audio" , masuk ke folder base_url/assets/uploads , buatlah sebuah folder dengan nama "audio". Setelah dibuat, kalian bukalah file Main.php didalam folder "controller" lalu ubah strukturnya dengan menambahkan script ini : -----  $crud->set_subject('File Suara');  $crud->set_field_upload('FILECONTENT','assets/uploads/audio'); ----- before : after : selanjutnya coba panggil "localhost/base_...

WEB SERVICE - TUTORIAL PHP LUMEN SERVICE APP

Halo, untuk kali ini aku akan ngeposting tentang web service yaitu tentang Lumen, disini aku akan tutorial membuat instalasi Lumen Service App ya, langsung aja , Let's Gooo Untuk menginstall Lumen ini aku pakai cmd untuk menginstallnya, tapi sebelum menginstallnya kita butuh php berjalan di cmd, bagaimana caranya? silahkan kunjungi link ini Oh iya tutorial ini dibutuhkan juga php version 7.0.0 keatas bila php kalian version nya dibawah ini segera update dulu php nya download saja xampp terbaru. xampp link Nah saatnya menginstall , pertama-tama kita harus download dulu "composer" disini  https://getcomposer.org/doc/00-intro.md Setelah di download install composernya, jika sudah berikut dibawah adalah konfigurasi nya 1. Buka CMD dan ketik composer --v untuk mengecek apakah sudah terinstall atau belum. 2. ketik perintah ini : create-project --prefer-dist laravel/lumen [NAMA_PROJECT] untuk nama_project ini bisa di ganti sesuai nama folder yang di in...