Bagaimana cara membuat form otomatis dari database dengan tipe form yang berbeda-beda

Saya punya form seperti gambar di bawah.

![](https://skspace.sgp1.digitaloceanspaces.com/forums/images/Screenshot (25) copy.png)

Tapi form tersebut masih dibuat secara manual di kodingannya. Nah masalahnya sekarang adalah bagaimana cara membuatnya agar dapat dibuat secara otomatis (bisa di CRUD) dari database beserta dengan tipenya (form input text, radio, dan select). Mirip seperti Google Forms.

Rancangan database saya seperti ini.

![](https://skspace.sgp1.digitaloceanspaces.com/forums/images/Screenshot (26).png)

Code saya sebelumnya seperti ini.

<form class="col-md-9 column" action="{{URL('/wisatawan')}}" method="post" align="">
  <label> Nama </label>
  <div class="form-group{{ $errors->has('nama') ? ' has-error' : '' }}">
    <input class="form-control" type="text" name="nama" value="" placeholder="Nama ..." required="required">
    @if ($errors->has('nama'))
        <p class="help-block">
            <strong>{{ $errors->first('nama') }}</strong>
        </p>
    @endif
  </div><hr>

  <label> Umur </label>
  <div class="form-group{{ $errors->has('umur') ? ' has-error' : '' }}">
    <input class="form-control" type="text" name="umur" value="" placeholder="Umur ... " required="required">
    @if ($errors->has('umur'))
        <p class="help-block">
            <strong>{{ $errors->first('umur') }}</strong>
        </p>
    @endif
  </div><hr>

  <label> Negara </label> <br>
  <div class="form-group{{ $errors->has('negara') ? ' has-error' : '' }}">
    <select class="" name="negara" required="required">
      <option value="">- Pilih Negara -</option>
      @foreach($negaras as $negara)
        <option value="{{ $negara->nama_negara }}"> {{ $negara -> nama_negara }}</option>
      @endforeach
    </select>
    @if ($errors->has('negara'))
        <p class="help-block">
            <strong>{{ $errors->first('negara') }}</strong>
        </p>
    @endif
  </div><hr>

  <label> Jenis Kelamin </label> <br>
  <div class="form-group{{ $errors->has('jk') ? ' has-error' : '' }}">
    <input type="radio" name="jk" value="Laki-laki" checked="checked"> Laki-laki <br>
    <input type="radio" name="jk" value="Perempuan"> Perempuan <br>
    @if ($errors->has('jk'))
        <p class="help-block">
            <strong>{{ $errors->first('jk') }}</strong>
        </p>
    @endif
  </div><hr>

  <label> Tujuan </label><br>
  <div class="form-group{{ $errors->has('tujuan') ? ' has-error' : '' }}">
    <input type="radio" name="tujuan" value="Berlibur" checked="checked"> Berlibur <br>
    <input type="radio" name="tujuan" value="Penelitian"> Penelitian <br>
    <input type="radio" name="tujuan" value="Mengunjungi Kerabat"> Mengunjungi Kerabat <br>
    <input type="radio" name="tujuan" value="Yang lain"> Yang lain <br>
    @if ($errors->has('tujuan'))
        <p class="help-block">
            <strong>{{ $errors->first('tujuan') }}</strong>
        </p>
    @endif
  </div><hr>

  <input type="hidden" name="_token" value="{{ csrf_token() }}">
  <input type="submit" class="btn btn-primary" name="name" value="Proses">
</form>

Mohon solusinya master-master sekalian. Terima Kasih.

avatar diarsa
@diarsa

6 Kontribusi 0 Poin

Diperbarui 7 tahun yang lalu

1 Jawaban:

maksudnya u mau buat code generator untuk form CRUD? ribetnya nanti waktu setiap bikin form baru u musti otomatis buat table baru juga artinya kalau u tarok program u di web, u musti buka hak akses database utk create table yg sedikit kurang secure sih saya ada usul sih, simpan saja data dari form yg u ciptain nantinya dengan format JSON, jadi simpan di 1 field saja jadi dengan gini u bebas nambahin atau ngerubah field u sesuka hati sesuai form yg user ciptain nanti bisa baca referensinya di dokumentasi MySQL kalau sekarang database MySQL sudah mendukung menyimpan data berformat JSON di dalam fieldnya

avatar QaiserLab
@QaiserLab

366 Kontribusi 390 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban