function cekSession($ssi) { global $mysqli; $ip = $_SERVER['REMOTE_ADDR']; $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']); $s = yposSQL('SHOW', 'ypos_users', 'sessionID', "username='******' && 1=1")->fetch_array(); if ($s['sessionID'] != $_SESSION['ysess']) { LgnLogs($_SESSION['yuser'], $ip, $hostname, cekBrowser(), 'OUT'); session_destroy(); echo 'Logout . . .'; echo '<meta http-equiv="refresh" content="0; url=index.php">'; } }
<?php include 'config/connect.php'; include 'config/function.php'; include 'config/config.php'; session_start(); $user = $_SESSION['yuser']; $LgnUsr = yposSQL('SHOW', 'ypos_lgnhistories', '*', "username='******' && 1=1", 'idLgn DESC LIMIT 1')->fetch_array(); LgnLogs($user, $ip, $hostname, cekBrowser(), 'IN'); yposSQL('EDIT', 'ypos_users', "sessionID='{$_SESSION['ysess']}', online='Y', last_seen=NOW()", "username='******'yuser']}'"); echo "<b>USER ID : {$user}, LAST LOGIN [IP ADDRESS : {$LgnUsr['ip']} , HOST NAME : {$LgnUsr['hostname']}]\r\nTHIS USER HAS ALREADY LOGGED IN ON OTHER DEVICE, <a href='index.php'>CONTINUE</a></b>";
$ketemu = $login->num_rows; session_start(); //jalankan session $sid = session_id(); $token = $_POST['token']; if ($token == $sid) { if ($ketemu > 0) { $r = $login->fetch_array(); //isi session login $_SESSION['yuser'] = $r['username']; $_SESSION['ylevel'] = $r['level']; $_SESSION['ysess'] = $sid; $_SESSION['yids'] = $r['ids']; if ($r['online'] == 'Y') { header('location:redirect.php'); } else { LgnLogs($_SESSION['yuser'], $ip, $hostname, cekBrowser(), 'IN'); yposSQL('EDIT', 'ypos_users', "sessionID='{$_SESSION['ysess']}', online='Y', last_seen=NOW()", "username='******'yuser']}'"); header('location:index.php'); } //end cek online } else { echo "<meta http-equiv='refresh' content='0; url=index.php?get=error-password-is-wrong'>"; } } else { echo "<meta http-equiv='refresh' content='0; url=index.php?get=error-token-login'>"; } } else { // jika kosong echo "<meta http-equiv='refresh' content='0; url=index.php?get=error-password-is-empty'>"; }