Membuat Form Pendaftaran Online dengan Google Spreadsheet — Data Otomatis Tersimpan

Membuat Form dengan Google Spreadsheet

Form pendaftaran online adalah salah satu penggunaan paling praktis dari Google Spreadsheet sebagai database. Pengunjung mengisi form di web, data langsung masuk ke spreadsheet Anda secara real-time. Cocok untuk pendaftaran event, newsletter, kontak form, survey, dan banyak lagi.

Kode Apps Script untuk Form

function doPost(e) {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var data = JSON.parse(e.postData.contents);
  var timestamp = new Date();
  
  // Pastikan header sudah dibuat
  if (sheet.getLastRow() === 0) {
    sheet.appendRow(["Timestamp", "Nama", "Email", "No. Telepon", "Pesan"]);
  }
  
  sheet.appendRow([
    timestamp,
    data.nama,
    data.email,
    data.telepon,
    data.pesan
  ]);
  
  // Kirim notifikasi email (opsional)
  if (data.email) {
    GmailApp.sendEmail(
      "admin@email.com",
      "Pendaftaran Baru: " + data.nama,
      "Pendaftar baru:\nNama: " + data.nama + "\nEmail: " + data.email
    );
  }
  
  return ContentService.createTextOutput(JSON.stringify({
    success: true,
    message: "Pendaftaran berhasil! Terima kasih."
  })).setMimeType(ContentService.MimeType.JSON);
}

HTML Form

<form id="myForm">
  <input type="text" id="nama" placeholder="Nama Lengkap" required>
  <input type="email" id="email" placeholder="Email" required>
  <input type="tel" id="telepon" placeholder="No. Telepon">
  <textarea id="pesan" placeholder="Pesan"></textarea>
  <button type="submit">Kirim</button>
</form>
<script>
document.getElementById('myForm').addEventListener('submit', function(e) {
  e.preventDefault();
  fetch('URL_APP_SCRIPT', {
    method: 'POST',
    body: JSON.stringify({
      nama: document.getElementById('nama').value,
      email: document.getElementById('email').value,
      telepon: document.getElementById('telepon').value,
      pesan: document.getElementById('pesan').value
    })
  })
  .then(r => r.json())
  .then(res => {
    alert(res.message);
    document.getElementById('myForm').reset();
  });
});
</script>

Fitur Lanjutan

  • Validasi Server-side: Periksa duplikasi email sebelum menyimpan data.
  • Auto-Reply: Kirim email konfirmasi otomatis ke pendaftar.
  • File Upload: Terima upload file (CV, foto) dan simpan ke Google Drive.
  • Captcha: Tambahkan verifikasi untuk mencegah spam.
  • Dashboard: Buat halaman admin untuk melihat semua pendaftar.

Kesimpulan

Form pendaftaran dengan Google Spreadsheet adalah solusi praktis dan gratis untuk mengumpulkan data pengguna. Dengan Apps Script, Anda bisa menambahkan validasi, notifikasi, dan integrasi dengan layanan Google lainnya. Cocok untuk UMKM, event organizer, dan pengelola website.

Tutorial Form Google Spreadsheet & Apps Script — Web App Builder Collection

Post a Comment for "Membuat Form Pendaftaran Online dengan Google Spreadsheet — Data Otomatis Tersimpan"