PDA

View Full Version : Logout script help


Gukkie
02-24-2010, 10:28 AM
Hi, i am currently having some problems updating mysql fields with this script. when i log out, i only want that user's "logged_in" field in the database to become "N" n not every1s. Right now, when some1 logs out, every1s field chanegs to logged out.how do i go about fixing this?

<?php
session_start();
////////////// Set user to not logegd in status/////////////////
include_once "connect_to_mysql.php";

$sql=mysql_query("SELECT * FROM myMembers WHERE logged_in='Y'");

while($row=mysql_fetch_array($sql)){

$id=$row["id"];
session_register('id');
$_SESSION['id']=$id;

mysql_query("UPDATE myMembers SET logged_in='N' WHERE id='$id'");
}

// Destroy sessions and cookies
session_destroy();

print "<meta http-equiv=\"refresh\" content=\"0;url=http://www.mydomain.com/index.php\">";
?>

Jeremey
03-12-2010, 07:24 PM
I am assuming this is just a logout script (logout.php)

You don't need to loop through everyone, just who is in the session.
Why don't you just:

<?php
$_SESSION['id']=$id;
$sql = "UPDATE myMembers SET logged_in='N' WHERE id='$id'";
$result = mysql_query($sql);
header("Location: http://www.netdateme.com/index.php");
?>


Because below you are looping through all your logged_in users and updating all their logged_in status's:


$sql=mysql_query("SELECT * FROM myMembers WHERE logged_in='Y'");

while($row=mysql_fetch_array($sql)){

$id=$row["id"];
session_register('id');
$_SESSION['id']=$id;

mysql_query("UPDATE myMembers SET logged_in='N' WHERE id='$id'");