Halo teman-teman pasti kalian pernah, misalnya daftar di forum atau di situs tertentu lalu mereka melakukan konfirmasi balasan dengan mengirimkan password untuk login. Password tersebut dalam kondisi acak atau random. Untuk tutorial kali ini kita akan mencoba membuat password acak dengan menggunakan PHP.
File yang akan kita buat diantaranya:
File fungsi-acak.php
File koneksi.php
File insert-userpass.php
Buat file untuk membuat fungsi acaknya.
<?php
function acakpass($long){
$huruf = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890';//buat karakter yang akan digunakan sebagai password
$st = '';
for($i=0; $i<$long; $i++){
$p = rand(0, strlen($huruf)-1);
$st .=$huruf{$p};
}
return $st;
}
$us = acakpass(6); // untuk mencetak
$ps = acakpass(8);
?>
Kita sudah membuat sebuah fungsi berikutnya, bagaimana caranya melakukan insert ke database?
Buat databasenya terlebih dahulu ya
-- phpMyAdmin SQL Dump -- version 4.5.2 -- http://www.phpmyadmin.net -- -- Host: localhost -- Generation Time: Jan 27, 2017 at 08:15 AM -- Server version: 10.1.16-MariaDB -- PHP Version: 5.6.24 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Database: `db_userpass` -- -- -------------------------------------------------------- -- -- Table structure for table `user` -- CREATE TABLE `user` ( `id` int(5) NOT NULL, `username` text NOT NULL, `password` text NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Dumping data for table `user` -- INSERT INTO `user` (`id`, `username`, `password`) VALUES (1, 'e0dE6o', 'eOUYbJx3'); -- -- Indexes for dumped tables -- -- -- Indexes for table `user` -- ALTER TABLE `user` ADD PRIMARY KEY (`id`); -- -- AUTO_INCREMENT for dumped tables -- -- -- AUTO_INCREMENT for table `user` -- ALTER TABLE `user` MODIFY `id` int(5) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Saya sudah coba memasukan satu record, teman-teman jangan lupa buat file koneksinya beserta file prosesnya.
<?php $server = "localhost"; $user = "root"; $pass = ""; $db = "db_userpass"; $koneksi = mysql_connect($server, $user, $pass) or die (mysql_error()); $dbase = mysql_select_db($db, $koneksi) or die (mysql_error());
untuk file prosesnya, sebagai berikut:
<?php
//sertakan file koneksi.php dan fungsi-acak.php
include "koneksi.php";
include "fungsi-acak.php";
$sql_query = mysql_query("INSERT INTO user(username, password) VALUES('$us','$ps')") or die (mysql_error());
Silahkan teman-teman lakukan ekplorasi sendiri, disesuaikan dengan kebutuhan aplikasi yang sedang dibuat. Oke samapi bertemu di artikel berikutnya. Caio,…