Rumahweb Journal
Banner - Cara Membuat Form Kontak Melalui Script PHP Sederhana

Cara Membuat Form Kontak Melalui Script PHP Sederhana

Setiap website modern menggunakan form sebagai sarana untuk berinteraksi antara pengunjung dengan pemilik website. Form juga bisa digunakan sebagai tempat untuk memberikan apresiasi, saran maupun kritik dari pengunjung website. Karenanya dalam panduan ini, kami akan berbagi cara membuat form kontak melalui script php sederhana yang bisa anda gunakan.

Pada panduan membuat form kontak Ini, kami akan menjelaskan konsepnya secara sederhana. Dari konsep sederhana ini, Anda dapat mengembangkannya untuk membuat ;

  1. Form kontak yang lebih lengkap.
  2. Forum diskusi.
  3. Pengiriman email notifikasi dari halaman website, dan masih banyak lagi. 

Di artikel ini, kami akan membuat form sederhana menggunakan PHP sebagai script utamanya, Bootstrap untuk mempercantik tampilan dan autentikasi SMTP untuk keamanan.

Kami akan membuat form semacam bukutamu yang terkirim ke email, bukan ke database. Selain menggunakan email domain yang telah Anda order, Anda juga bisa menggunakan email Gmail. Penasaran kan bagaimana cara membuat form kontaknya?

Membuat email account

Langkah pertama yang perlu Anda lakukan untuk membuat form kontak adalah mempersiapkan email yang akan digunakan. Bila Anda ingin menggunakan email @domain.com yang telah Anda pesan, maka Anda perlu membuat emailnya terlebih dahulu melalui cPanel hosting. Langkahnya ;

  1. Login ke cPanel.
  2. Klik Menu Email Account
  3. Klik tombol Create yang ada di sebelah kanan. 
  4. Pada kolom alamat email, silakan dibuat akun email yang ingin Anda gunakan. Kemudian pada kolom password, isi dengan password email Anda. 
  5. Klik tombol Create yang ada di bagian paling bawah. 

Anda dapat mengikuti panduan cara membuat email di cPanel untuk lebih jelasnya.

Pindah Hosting ke Rumahweb Gratis

Membuat tampilan form utama

Tampilan utama ini menggunakan file index.php.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Formulir Kontak</title>
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
  <style>
    body {
      background-color: #f8f9fa;
    }

    .container {
      background-color: #dce1f5;
      border-radius: 10px;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
      padding: 30px;
      margin-top: 50px;
    }

    h2 {
      color: #324aa8;
    }

    label {
      font-weight: bold;
    }

    .btn-primary {
      background-color: #324aa8;
      border: none;
    }

    .btn-primary:hover {
      background-color: #0056b3;
    }
  </style>
</head>
<body>

<div class="container">
  <div class="row">
    <div class="col-md-6 offset-md-3">
      <h2 class="mb-4">Form Kontak Menggunakan PHP</h2>
      <form action="sendmail.php" method="post">
        <div class="form-group">
          <label for="name">Nama Lengkap:</label>
          <input type="text" class="form-control" id="name" name="name" required>
        </div>
        <div class="form-group">
          <label for="email">Alamat Email:</label>
          <input type="email" class="form-control" id="email" name="email" required>
        </div>
        <div class="form-group">
          <label for="message">Pesan Anda:</label>
          <textarea class="form-control" id="message" name="message" rows="4" required></textarea>
        </div>
        <button type="submit" class="btn btn-primary">Kirim Pesan</button>
      </form>
    </div>
  </div>
</div>

</body>
</html>

Membuat Form script penerima respon

Script penerima respon ini kami beri nama sendmail.php.

<?php
// Ini adalah script yang menerima request dari Form Kontak index.php 
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

require 'vendor/autoload.php'; // Pastikan Anda telah menginstal PHPMailer melalui Composer

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = $_POST["name"];
    $email = $_POST["email"];
    $message = $_POST["message"];

    $mail = new PHPMailer(true);

    try {
        // Konfigurasi SMTP
        $mail->isSMTP();
        $mail->Host       = 'smtp.example.com'; // Ganti menggunakan server SMTP Anda
        $mail->SMTPAuth   = true;
        $mail->Username   = 'your_username'; // Ganti menggunakan username SMTP Anda
        $mail->Password   = 'your_password'; // Ganti menggunakan password SMTP Anda
        $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // Gunakan ENCRYPTION_SMTPS jika Anda menggunakan SSL
        $mail->Port       = 587; // Ganti menggunakan port SMTP Anda

        // Set pengirim dan penerima
        $mail->setFrom($email, $name);
        $mail->addAddress('[email protected]'); // Ganti menggunakan alamat email penerima

        // Set isi email
        $mail->isHTML(true);
        $mail->Subject = 'Pesan dari Formulir Kontak';
        $mail->Body    = $message;

        // Kirim email
        $mail->send();
        echo 'Pesan Anda berhasil dikirim ke alamat tujuan';
    } catch (Exception $e) {
        echo "Yah, ... Pesan gagal dikirim. Kesalahannya adalah: {$mail->ErrorInfo}";
    }
}
?>

Anda bisa mengisi script SMTP tersebut dengan email domain maupun email gmail. Berikut petunjuk pengisian untuk keduanya.

Email Domain

  • host = namadomainanda , contoh punyaweb.my.id
  • username = alamat email domain Anda, contoh [email protected]
  • password = password emailnya
  • port = 587
  • SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;

Email Gmail

  • host = smtp.gmail.com
  • username = alamat email gmail Anda
  • password = gunakan password application. Panduan generate password application bisa Anda pelajari pada : password application gmail
  • port = 465
  • $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;

Install phpMailer menggunakan composer

Selanjutnya install Composer di Komputer atau server Anda. Berikut ini panduan cara install composer di localhost

Setelah composer di Install, langkah selanjutnya adalah

  1. Masuk ke directory lembar kerja Anda
    Lembar kerja kami ada di folder form, sehingga gunakan perintah
cd form
  1. Ketikkan perintah berikut.
    Setelah berada di direktori kerja Anda, silakan instal phpmailer melalui composer menggunakan perintah berikut.
composer require phpmailer/phpmailer

Setelah di install Composer, maka tampilan file di folder didalam directory “form” menjadi seperti berikut.

cara membuat form kontak php

Anda juga dapat download detail codenya melalui link Download code dari Github.

Cara tes form kontak

Untuk mengetes form kontak yang telah dibuat di localhost, berikut ini langkah-langkahnya.

  1. Akses url http://localhost/form/  melalui browser.
gambar login form kontak php

Isi form Nama lengkap, alamat email Anda dan Pesan Anda. Setelah itu klik tombol “Kirim Pesan”.

  1. Saat pesan berhasil terkirim, maka akan menampilkan tampilan berikut.
berhasil isi form kontak php
  1. Terakhir, Anda dapat mengecek email yang dikirimkan ke alamat email yang menjadi tujuan, yang Anda tambahkan di file sendmail.php pada bagian 
$mail->addAddress('[email protected]');

Demikianlah cara membuat form kontak menggunakan script PHP sederhana. Anda dapat mengembangkan script sederhana ini menjadi ke yang lebih kompleks sesuai dengan keperluan. Semoga bermanfaat.

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 4.4 / 5. Vote count: 99

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

Cloud Hosting Terbaik Rumahweb

Rumahweb