Lanjut ke pembuatan file “daftar.php” yang akan memproses, request dari ajax pada tutorial sebelumnya. berikut codenya. <?php session_start(); include "koneksi.php"; $nick=trim($_POST['nick']); $email=trim($_POST['email']); $pass=md5($_POST['pass']); $periksadulu=$koneksi->prepare...

Membuat Web Chatting dengan Ajax Jquery, PHP, dan Bootstrap 2.3.2 [Part 3]

Lanjut ke pembuatan file “daftar.php” yang akan memproses, request dari ajax pada tutorial sebelumnya.

berikut codenya.

<?php
session_start();
include "koneksi.php";
$nick=trim($_POST['nick']);
$email=trim($_POST['email']);
$pass=md5($_POST['pass']);
$periksadulu=$koneksi->prepare("select * from user where nick=:nick || email=:email");
$periksadulu->BindParam(":nick",$nick);
$periksadulu->BindParam(":email",$email);
$periksadulu->execute();
if($periksadulu->rowCount()>=1){
    echo "ada";
}
else
{
    $daftarkan=$koneksi->prepare("insert into user (nick,email,pass) values (:nick,:email,:pass)");
    $daftarkan->BindParam(":nick",$nick);
    $daftarkan->BindParam(":email",$email);
    $daftarkan->BindParam(":pass",$pass);
    $daftarkan->execute();
    if($daftarkan->rowCount()==1)
    {
        $waktu=date("h:m:s");
        $online=$koneksi->prepare("insert into online (nick,waktu) values (:nick,:waktu)");
        $online->BindParam(":nick",$nick);
        $online->BindParam(":waktu",$waktu);
        $online->execute();
        $_SESSION['nick']=$nick;
        echo "yes";
    }
    else
    {
    echo "no";
    }
}
 
 
?>

Penjelasan :

apabila kembaliannya berupa text "ada",  maka ajax akan memberikan pemberitahuan error user telah terdaftar, jika kembaliannya "yes" berarti user sukses mendaftar, dan jika "no" maka pendaftaran gagal dilakukan.

coba jalankan dan daftar sebagai user. Jika code anda baik-baik saja dan jika pendaftaran berhasil maka kita akan dialihkan pada halaman chatroom seperti dibawah ini.

Pada tahap ini kita sudah berhasil membuat tampilannya beserta proses pendaftarannya. Selanjutnya kita akan memfungsikan tombol logout diatas, tombol diatas mengarah ke file “logout.php”

<a href="logout.php" class="btn btn-danger"  type="button" ><i class="icon-off icon-white"></i> Keluar </a>

Langsung saja buat file “logout.php”-nya.

<?php
session_start();
include "koneksi.php";
if(isset($_SESSION['nick']))
{
$nick=$_SESSION['nick'];
$hapus=$koneksi->prepare("delete from online where nick=:nick");
$hapus->BindParam(":nick",$nick);
$hapus->execute();
unset($_SESSION['nick']);
if(isset($_COOKIE['nick']))
{
    setcookie("nick","",time()-3600);
}
header("location:index.php");
}

Penjelasan.

Code diatas memeriksa apakah terdapat session nick, jika ada maka akan dihapus dari table online, kemudian session dan cookienya juga dihapus, dan akan mereload ke halaman login.

proses daftar dan logout sudah selesai. skarang kita akan lanjut ke pembuatan ajax untuk proses login

 

Buka kembali file “ajaxku.js”.

Kemudian tambahkan code berikut.

// ajax login
                $("#formmasuk").submit(function()
                {
                var unick=$.trim($("#nick").val());
                var upass=$.trim($("#pass").val());
                if($("#cokie").is(':checked'))
                {
                    var cokie=$("#cokie").val();
                }
                $.ajax({
                url : 'login.php',
                data : 'nick='+unick+'&pass='+upass+'&cokie='+cokie,
                type : 'POST',
                success : function(hasil){
                                if(hasil=="ok")
                                {
                                document.location="index.php";
                                }
                                else
                                {
                                $("#notif").html('<div class="alert alert-error"><button type="button" class="close" data-dismiss="alert">&times;</button>Nickname atau Password Salah ! </div>');
                                return false;
                                }
                            },
                    });
                    return false;
                });

 

Penjelasan code diatas sama seperti pada penjelasan proses daftar pada tutorial sebelumnya.

ajaxnya sudah kita buat, selanjutnya membuat file PHP untuk memproses ajax diatas,

buat file "login.php" kemudian.

 

 

<?php
session_start();
include "koneksi.php";
$nick=trim($_POST['nick']);
$pass=md5(trim($_POST['pass']));
 
$cari=$koneksi->prepare("select * from user where nick=:nick and pass=:pass ");
$cari->BindParam(":nick",$nick);
$cari->BindParam(":pass",$pass);
$cari->execute();
if($cari->rowCount()==0)
{ 
echo "failed";
}
else
{ 
$_SESSION['nick']=$nick;
$waktu=date("h:m:s");
$online=$koneksi->prepare("insert into online (nick,waktu) values (:nick,:waktu)");
$online->BindParam(":nick",$nick);
$online->BindParam(":waktu",$waktu);
$online->execute();
if(isset($_POST['cokie']))
{
    if($_POST['cokie']=="ingataku")
    {
    setcookie("nick",$nick, time()+3600);
    }
}
echo "ok";
}
?>

Code diatas adalah script php  untuk melakukan pengecekan kedalam database, apabila data tidak ditemukan, atau “failed” atau bukan “ok” maka login gagal.

pada tutorial selanjutnya kita kebagian inti, yaitu pembuatan mesin chatting.

 Part 2              Part 4


About Author

d-newbie

Adalah seorang ninja dari Coding Gakure, Menguasai jurus HTML no jutsu, CSS no jutsu, Javascript no jutsu, PHP no jutsu, dan MySQL no jutsu, jurus andalan adalah KageLooping no jutsu, yg bisa memperbanyak output sekali coding , ninja yang berasal dari TIM W3, dan diasuh oleh petapa genit yang suka menjilat-jilat situs yaitu google.com. :D #xixixi


Comment & Discussions

    Please LOGIN before if you want to give the comment.