php - how do i stop multiple user login with same email and password once user already logged -
i need help how stop multiple user login same email , password 1 time user logged website have website in website have 2 kinds of membership subscription free or paid free users can seek login multiple device's or pc's or browsers no problem free users.
but problem want restrict paid users because paid users shouldn't login multiple devices or pc or browser after paid user login anywhere .. while paid user seek login scheme should automatically logout paid user previous browser or devices or pc?
example*
if paid user login chrome , user trying login firefox scheme should automatically destroy first session created chrome. allow paid users utilize business relationship in firefox. here test script
index.php
<form action="verifylog.php" method="post"> <input type="text" name="email1" /><br /> <input type="password" name="password1" /><br /> <input type="submit" value="submit" /> </form> verifylog.php
session_start(); include('config.php'); if(empty($_post['email1'])) { header('location:index.php'); } $email=$_post['email1']; $password=$_post['password1']; $querymysql=mysql_query("select * users uemail='$email' , upass='$password'") or die ("query problem"); $row=mysql_fetch_array($querymysql); $db_email1=$row['uemail']; $db_pass=$row['upass']; $db_status=$row['ustatus']; if($row>0){ $_session['new_email']=$db_email1; $_session['new_pass']=$db_pass; $_session['new_status']=$db_status; $_session['logged_in'] = 'active'; if(isset($_session['logged_in']) || !empty($_post['email1']) ) { $query_time=mysql_query("update users set ustatus='".$_session['logged_in']."' uemail='".$email."'"); header('location:test.php'); } } if($db_status==$_session['logged_in']) { header("location:logout.php"); } else { $msg="please check email , password"; $_session['error_msg']=$msg; header('location:index.php?error='.$_session['error_msg'].''); } test.php
<?php $querymysql=mysql_query("select * users uemail='".$_session['new_email']."'") or die ("query problem"); $row=mysql_fetch_array($querymysql); ?> hello mr. <?php echo $row['uemail']; ?> <br /> email <?php echo $row['uemail']; ?> <br /> password <?php echo $row['upass']; ?> <br /> status <?php echo $row['ustatus']; ?> <br /> here can logout account: <a href="logout.php">click here</a> logout.php
<?php session_start(); include('config.php'); if(!empty($_session['logged_in']) || !empty($_post['email1']) ) { session_destroy(); $query_time=mysql_query("update users set ustatus='inactive' uemail='".$_session['new_email']."'"); header("location:index.php"); } ?> thank have completed script
here completed if web developer need it
how prevent multiple user login same email , password 1 time user logged multiple pc or browsers index.php
<form action="verifylog.php" method="post"> <input type="text" name="email1" /><br /> <input type="password" name="password1" /><br /> <input type="submit" value="submit" /> </form> verifylog.php
session_start(); include('config.php'); if(empty($_post['email1'])) { header('location:index.php'); } $email=$_post['email1']; $password=$_post['password1']; $querymysql=mysql_query("select * users uemail='$email' , upass='$password'") or die ("query problem"); $row=mysql_fetch_array($querymysql); $db_email1=$row['uemail']; $db_pass=$row['upass']; $db_status=$row['ustatus']; $db_sessionid=$row['session_id']; $old_sessionid = session_id(); $new_sessionid = session_regenerate_id(true); $_session['newregid']=$new_sessionid; $_session['odlregid']=$old_sessionid; $_session['new_email']=$db_email1; $_session['new_pass']=$db_pass; $_session['new_status']=$db_status; if(!empty($old_sessionid)) { $query_time=mysql_query("update users set session_id='".$old_sessionid."' uemail='".$email."'"); header('location:test.php'); } else if($db_sessionid!=$_session['odlregid']) { $query_time=mysql_query("update users set session_id='".$new_sessionid."' uemail='".$email."'"); header('location:test.php'); } test.php
<?php $querymysql=mysql_query("select * users uemail='".$_session['new_email']."'") or die ("query problem"); $row=mysql_fetch_array($querymysql); $new_id=$row['session_id']; if($new_id!=$_session['odlregid']){ unset($_session['odlregid']); session_destroy(); header("location:index.php"); } else { ?> hello mr. <?php echo $row['uemail']; ?> <br /> email <?php echo $row['uemail']; ?> <br /> password <?php echo $row['upass']; ?> <br /> status <?php echo $row['ustatus']; ?> <br /> session_id <?php echo $row['session_id']; ?> <br /> here can logout account: <a href="logout.php">click here</a> <?php }?> logout.php
<?php session_start(); include('config.php'); header("location:index.php"); ?>
put session id in database user , write new session id @ each login. part of select statement check utilize session_id criteria , defunct sessions no longer valid.
php session cookies login user
No comments:
Post a Comment