Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
Login via google
saya punya kode utk login menggunakan akun google... Jika ada kecocokan email dengan database maka akan lanjut kehalaman admin, tapi ketiga gagal akan kembali ke halaman login, permasalahannya, meskipun email di database tidak cocok, program tetap lanjut kehalaman admin. berikut kode lengkapnya, barangkali ada yg bisa membantu. terima kasih
<?php
include_once 'googleapi.php';
if(isset($_GET['code'])){
$gclient->authenticate($_GET['code']);
$_SESSION['token'] = $gclient->getAccessToken();
header('Location: ' . filter_var($redirect_url, FILTER_SANITIZE_URL));
}
if (isset($_SESSION['token'])) {
$gclient->setAccessToken($_SESSION['token']);
}
if ($gclient->getAccessToken()) {
include 'db.php';
$gpuserprofile = $google_oauthv2->userinfo->get();
$email = $gpuserprofile['email'];
$sql = mysqli_query($db, "SELECT nis FROM tb_siswa WHERE email='".$email."'");
$user = mysqli_fetch_array($sql);
$nis = $user['nis'];
$_SESSION['nis'] = $nis;
$_SESSION['status'] = "login";
header("location: admin.php");
} else {
$authUrl = $gclient->createAuthUrl();
header("location: ".$authUrl);
}
?>
1 Jawaban:
Jawaban Terpilih
Agan baru validasi email google-nya aja, belum validasi ke database agan, mungkin bisa di coba kaya gini :
<pre> $email = $gpuserprofile['email'];
$sql = mysqli_query($db, "SELECT nis FROM tb_siswa WHERE email='".$email."'");
//Bagian validasi pakai IF
if(mysqli_num_rows($sql) &gt; 0) {//Jika email ditemukan ada di database
//Ambil datanya
$user = mysqli_fetch_array($sql);
$nis = $user['nis'];
$_SESSION['nis'] = $nis;
$_SESSION['status'] = "login";
//Alihkan ke halaman admin
header("location: admin.php");
} else {
//Alihkan ke halaman login atau yg diinginkan
}
</pre>
Tanggapan
terima kasih mas sudah berjalan