Pendaftaran php dengan verifikasi email menggunakan otp

Halo pembaca, Hari ini di blog ini Anda akan belajar cara membuat Formulir Login dan Pendaftaran dengan Verifikasi Email menggunakan PHP dan MySQL. Sebelumnya saya telah berbagi blog tentang Bagaimana cara mengkonfigurasi XAMPP untuk mengirim Mail dari Localhost di PHP?

Seperti yang kita semua tahu, login dan & Formulir Pendaftaran adalah sekumpulan kolom input yang berbeda – Nama, Email, Nama Pengguna, Kata Sandi, dll. yang digunakan untuk mengautentikasi pengguna sebelum memberikan akses ke situs. Dalam program kami [log in & Formulir Pendaftaran dengan Verifikasi Email], ada sebelas file PHP dan satu file CSS berarti ada total dua belas file di folder nama pengguna kami.

Pendaftaran php dengan verifikasi email menggunakan otp
Pada awalnya, di halaman web, hanya ditampilkan formulir login dan di dalam formulir login, terdapat link signup now untuk mengarahkan pengguna ke signup pertama sebelum login. Ketika pengguna mencoba masuk bahkan tanpa mendaftar formulir, ditampilkan pesan kesalahan berlabel “Sepertinya Anda belum menjadi anggota. Klik tautan paling bawah untuk mendaftar”.

Dalam formulir pendaftaran, saat pengguna mendaftar, jika dia memasukkan email yang sama, yang sudah ada di database kami, maka ditampilkan pesan kesalahan berlabel “Email yang Anda masukkan sudah ada. ”. Dan ketika pengguna tidak cocok dengan dua kombinasi kata sandi, juga ditampilkan pesan kesalahan berlabel "Konfirmasi kata sandi Anda tidak cocok"

Ketika pengguna mengisi semua input yang diperlukan dengan benar, maka nomor kode verifikasi enam digit dikirim ke email pengguna dan dia akan dialihkan ke halaman Verifikasi OTP. Jika pengguna memasukkan kode yang salah, akan ditampilkan pesan kesalahan berlabel “Anda telah memasukkan kode yang salah. ”. Jika pengguna keluar dari halaman kode verifikasi OTP tanpa memasukkan kode verifikasi yang valid atau benar dan masuk ke halaman login untuk login dengan email dan kata sandi yang sama yang dia gunakan untuk mendaftar, maka dia akan diarahkan kembali ke halaman OTP dan

Ketika pengguna memasukkan kode verifikasi yang benar, maka dia akan diarahkan ke Halaman Beranda. Pada halaman beranda terdapat navbar dengan logo di pojok kiri atas dan tombol logout di pojok kanan atas. Di tengah halaman beranda, ada pesan selamat datang dengan nama pengguna yang dia masukkan saat mendaftar formulir. Dan ketika pengguna mengklik tombol logout, dia akan dialihkan ke halaman login dan saat ini dia dapat login dengan email dan kata sandi yang benar dan akan langsung diarahkan ke halaman beranda tanpa dialihkan ke halaman lain mana pun

Jika Anda merasa sulit untuk memahami apa yang saya katakan. Anda dapat menonton video tutorial lengkap tentang program ini (Login & Formulir Pendaftaran dengan Verifikasi Email)

Video Tutorial Formulir Login dan Pendaftaran dengan Verifikasi Email

 
Di video, Anda telah melihat demo proyek ini dan saya harap Anda menyukainya. Dalam proyek ini, saya telah mengirim email dari Localhost menggunakan PHP dan Anda harus mengonfigurasi XAMPP Anda untuk Mengirim Email dari Localhost di PHP. Jika Anda tidak mengonfigurasi XAMPP Anda, maka email Anda yang digunakan untuk mengirim kode OTP ke pengguna tidak akan terkirim dan tidak ada artinya mengunduh file sumber proyek ini

Login & Formulir Pendaftaran dengan Verifikasi Email [Kode Sumber]

Klik tombol unduh yang diberikan dan Anda akan diarahkan ke halaman pengatur waktu, tunggu saja sampai pengatur waktu selesai. Setelah penghitung waktu selesai maka file zip akan diunduh secara otomatis. Setelah Anda mengunduh file zip, ekstrak saja dan Anda akan mendapatkan folder dengan semua file pengkodean yang diperlukan dengan formulir pengguna. .sql. Setelah itu, buat database dan nama database harus berupa userform lalu impor userform. sql dengan mengklik tab impor di database. File ini akan membuat semua tabel yang diperlukan dengan kolom. Itu saja Anda tidak perlu melakukan apa-apa lagi

Pada artikel kali ini saya akan membahas cara mengirim email dari localhost dan membuat registrasi dengan verifikasi email menggunakan php.  

Saya akan melakukannya di baris php, dan bukan di oop. Juga, saya akan menggunakan kode bootstrap untuk membuatnya lebih cepat.  

Hal-hal tambahan yang akan kita butuhkan.  

  1. perpustakaan phpMailer
  2. mailtrap. kredensial akun io untuk mengirim email

Pertama, mari buat database dan tabel. Nama databasenya adalah `verification`  dan nama tabelnya adalah `users`

Kolom yang akan saya buat untuk memvalidasi adalah,

Id, email, password, kode, is_verified

Ini adalah kode untuk membuat tabel

BUAT TABEL `verifikasi`. `verifikasi` ( `id` INT(11)  NULL AUTO_INCREMENT , `nama` VARCHAR(50)  NULL , `email` VARCHAR(60)  NULL , `code` VARCHAR(10)  NULL , `is_verified` TINYINT(3)  NULL  '

Sekarang mari beralih ke bagian pengkodean.  

Pertama saya membuat folder bernama verifikasi di dalam folder server lokal saya. Mungkin www/htdocs berdasarkan aplikasi server Anda (wamp/xampp/ampps dll)

Sekarang di dalam folder `verifikasi` ini saya membuat file-file itu.  

  1. Registrasi. php
  2. Memeriksa. php
  3. Db. php
  4. mengirim email. php

Mari kita mulai dengan db. php. Dalam file ini kita akan terhubung ke database.  

Berikut adalah kode untuk db. php

$namaserver = "localhost";

$username = "akar";

$password = "mysql";

$koneksi = mysqli_connect($namaserver, $namapengguna, $sandi);

jika (. $sambungan) {

die("Koneksi gagal. ". mysqli_connect_error());

}

?>

Jadi basis data kami terhubung sekarang

Mari unduh PHPmailer dan konfigurasikan untuk mengirim email. Untuk mendownloadnya buka link ini. PHPMailer/PHPMailer. Pustaka pengiriman email klasik untuk PHP (github. com)

Setelah diunduh, ganti namanya menjadi PHPMailer dan pindahkan folder ini ke dalam folder proyek kita. Nama folder proyek kami adalah `verifikasi`. Jadi letakkan phpMailer ini di dalam folder ini

Jadi folder proyek kami terlihat seperti ini

Pendaftaran php dengan verifikasi email menggunakan otp

Sekarang perpustakaan surat kami juga terintegrasi. Mari konfigurasikan kode surat

Sebelum mengonfigurasi, mari ambil mailtrap. kredensial.io. Untuk mendapatkan ini, login ke mailtrap Anda. io dan dapatkan kredensial seperti yang disebutkan dalam tangkapan layar di bawah ini.  

Pendaftaran php dengan verifikasi email menggunakan otp

Sekarang buka sendEmail. php dan paste kode di bawah ini.  

gunakan PHPMailer\PHPMailer\PHPMailer;

gunakan PHPMailer\PHPMailer\Exception;

kelas kirimEmail

{

fungsi kirim($kode)

{

membutuhkan 'PHPMailer/src/Exception. php';

memerlukan 'PHPMailer/src/PHPMailer. php';

memerlukan 'PHPMailer/src/SMTP. php';

// buat objek kelas PHPMailer dengan parameter boolean yang menetapkan/menghapus pengecualian

$mail = new PHPMailer(true);

mencoba {

$mail->isSMTP();

$mail->Host = 'smtp. mailtrap. io';

$mail->SMTPAuth = true;

$mail->Username = '';

$mail->Password = '';

$mail->SMTPSecure = 'tls';

$mail->Pelabuhan = 587;

$mail->isHTML(benar);

$mail->setFrom('[email dilindungi]', "Pengirim");

$mail->addAddress('[email dilindungi]', "Penerima");

$header. = 'Jenis konten. teks/html; . "\r\n";

$mail->Subjek = 'Verifikasi email';

$mail->Body    = 'Silakan klik tombol ini untuk memverifikasi akun Anda. Verifikasi' ;

$mail->kirim();

echo 'Pesan telah terkirim';

} catch (Exception $e) { // menangani error

echo 'Pesan tidak dapat dikirim. Kesalahan Surat. ', $mail->InfoKesalahan;

}

}

}

$sendMl = sendEmail baru();

?>

Pada kode di atas, kita perlu mengupdate mailtrap. io nama pengguna dan kata sandi. Jadi dengan menggunakan tangkapan layar di atas, tambahkan mailtrap Anda. kredensial.io

Itu adalah dua baris yang perlu kita perbarui dengan akun mailtrap kita sendiri.  

$mail->Username = ‘’;

$mail->Password = ‘’;

Jadi fungsi pengiriman email kita sudah siap

Sekarang kami akan bekerja pada pendaftaran. php. Saya tidak akan melakukan validasi email atau kata sandi di sini.  

Salin kode di bawah ini dan rekatkan di dalam pendaftaran. file php

termasuk('db. php');

termasuk('kirimEmail. php');

if (isset($_POST['kirim'])) {

$email = $_POST['email'];

$password = $_POST['password'];

$kode = rand();

$sql = "MASUKKAN KE `verifikasi`. `users` (`id`, `password`, `email`, `code`) NILAI (NULL, '$password', '$email', '$code')";

$hasil = mysqli_query($koneksi,$sql);

jika ($hasil) {

echo "Pendaftaran berhasil. Harap verifikasi email Anda. ";

$sendMl->send($code);

}

}

?>

  

Contoh Bootstrap

  

  

  

  

Formulir pendaftaran

  

    

Surel

      

    

    

Kata sandi

      

    

Kirim

  

Sekarang jalankan pendaftaran Anda. file php. Saya akan menjalankannya seperti ini.  

`localhost/verifikasi/pendaftaran. php`

Ini harus menunjukkan bentuk seperti ini.  

Pendaftaran php dengan verifikasi email menggunakan otp

Sekarang isi formulir dan tekan kirim. Jika semua yang Anda lakukan baik-baik saja, maka itu harus menyimpan data ke dalam database. Anda juga akan melihat email yang dikirim ke mailtrap Anda. akun io seperti yang ditunjukkan di bawah ini.  

Pendaftaran php dengan verifikasi email menggunakan otp

Jadi pendaftaran kami selesai.  

Sekarang kami akan mengerjakan verifikasi. php

Rekatkan kode di bawah ini di dalam verifikasi. php

termasuk('db. php');

if (isset($_GET['kode'])) {

$id = $_GET['kode'];

$sql = "PERBARUI `verifikasi`. `users` SET is_verified='1' WHERE code =$id";

$hasil = mysqli_query($koneksi,$sql);

jika ($hasil) {

echo "Akun Anda telah diverifikasi";

}

}

kalau tidak {

$message = "Url salah";

}

?>

  

Contoh Bootstrap

  

  

  

  

  

  

  

gema $pesan;

?>

Sekarang klik tautan yang dikirim ke akun mailtrap Anda dan akun Anda akan diverifikasi.  

Harap dicatat, saya telah melewatkan validasi dan beberapa pemeriksaan standar seperti pencocokan kata sandi karena tujuan utamanya adalah mengirim email dari lokal dan membuat sistem pendaftaran yang memerlukan verifikasi email.  

Bagaimana cara memverifikasi email dengan OTP di php?

Formulir masuk dengan OTP . Saat memasukkan email, itu menunjukkan input untuk memasukkan kode OTP yang dikirim ke alamat emailnya. Setelah mengirimkan OTP, PHP akan memvalidasi kode dan menampilkan hasil autentikasi kepada pengguna .

Bagaimana cara memverifikasi email saya dengan OTP?

Mengotentikasi OTP email di klien API .
Mematuhi Prasyarat
Dapatkan token akses
Dapatkan pengidentifikasi global pengguna
Buat email pendaftaran OTP
Validasi pendaftaran email OTP
Dapatkan semua email pendaftaran OTP
Dapatkan email OTP untuk pendaftaran tertentu'
Periksa apakah pendaftaran telah divalidasi

Apakah OTP dapat dikirim melalui email?

Metode OTP Email memungkinkan Anda mengautentikasi menggunakan kata sandi satu kali (OTP) yang dikirim ke alamat email terdaftar . Saat Anda mencoba mengotentikasi layanan apa pun, server mengirimkan OTP ke alamat email pengguna yang terdaftar.