при каждом лог ине пользователя, его сессия и ник сохраняется в базе данных на 10 минут, после удаляется
читать дальше
<?php
include ('connection.php');
// create query
$m_nick=addslashes($_POST[nick]);
$query = "SELECT * FROM `test` WHERE `nick` = '".$m_nick."' AND `passward` = '{$_POST['passward']}'";
// execute query
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
// see if any rows were returned
if (mysql_num_rows($result) == 1) {
// if a row was returned
// authentication was successful
// create session and set сoоkiе with username
session_start();
$_SESSION['auth'] = 1;
$_SESSION['login'] = $_POST['nick'];
setcoоkie("username", $_POST['nick'], time()+(84600*30));
$infa = mysql_fetch_assoc($result);
$session=session_id();
$time=time();
$time_check=$time-600;
/* сохраняем всю информацию о пользователе в сессии - прим. L.P.M. */
$_SESSION['userdata'] = $infa;
/* конец - L.P.M. */
$kto = $_SESSION['userdata']['nick'];
$tbl_name="user_online";
$sql="SELECT * FROM $tbl_name WHERE session='$session'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count=="0"){
$sql1="INSERT IGNORE INTO $tbl_name(session, time, nick)VALUES('$session', '$time', $kto)";
$result1=mysql_query($sql1);
}
else {
"$sql2=UPDATE $tbl_name SET time='$time' WHERE session = '$session'";
$result2=mysql_query($sql2);
}
$sql3="SELECT * FROM $tbl_name";
$result3=mysql_query($sql3);
$count_user_online=mysql_num_rows($result3);
// if over 10 minute, delete session
$sql4="DELETE FROM $tbl_name WHERE time<$time_check";
$result4=mysql_query($sql4);
mysql_close();
$page_title = 'Вход в личную страницу';
include('header.php');
print '
<meta http-equiv=Refresh
content="0; URL=/menu.php">
';
exit();
if (isset($_POST['nick']) || isset($_POST['passward'])) {
// form submitted
// check for required values
if (empty($_POST['nick'])) {
die ("Пожалуйста, введите свое имя");
}
if (empty($_POST['passward'])) {
die ("Пожалуйста, введите пароль");
}
}
else {
// no result
// authentication failed
echo "Неверное имя пользователя или пароль";
}
// free result set memory
mysql_free_result($result);
// close connection
mysql_close($connection);
}
else {
// no submission
// display login form
?>
<? include('header.php'); ?>
<center>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Имя: <input type="text" name="nick" value="<?php echo $_coоkie['username']; ?>">
Пароль: <input type="password" name="passward">
<input type="submit" name="submit" value="Войти"> <br>
<a href='forgot.php'>Забыли пароль?</a>
</center>
<?php
}
?>
</p>
<? include('footer.php'); ?>
include ('connection.php');
// create query
$m_nick=addslashes($_POST[nick]);
$query = "SELECT * FROM `test` WHERE `nick` = '".$m_nick."' AND `passward` = '{$_POST['passward']}'";
// execute query
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
// see if any rows were returned
if (mysql_num_rows($result) == 1) {
// if a row was returned
// authentication was successful
// create session and set сoоkiе with username
session_start();
$_SESSION['auth'] = 1;
$_SESSION['login'] = $_POST['nick'];
setcoоkie("username", $_POST['nick'], time()+(84600*30));
$infa = mysql_fetch_assoc($result);
$session=session_id();
$time=time();
$time_check=$time-600;
/* сохраняем всю информацию о пользователе в сессии - прим. L.P.M. */
$_SESSION['userdata'] = $infa;
/* конец - L.P.M. */
$kto = $_SESSION['userdata']['nick'];
$tbl_name="user_online";
$sql="SELECT * FROM $tbl_name WHERE session='$session'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count=="0"){
$sql1="INSERT IGNORE INTO $tbl_name(session, time, nick)VALUES('$session', '$time', $kto)";
$result1=mysql_query($sql1);
}
else {
"$sql2=UPDATE $tbl_name SET time='$time' WHERE session = '$session'";
$result2=mysql_query($sql2);
}
$sql3="SELECT * FROM $tbl_name";
$result3=mysql_query($sql3);
$count_user_online=mysql_num_rows($result3);
// if over 10 minute, delete session
$sql4="DELETE FROM $tbl_name WHERE time<$time_check";
$result4=mysql_query($sql4);
mysql_close();
$page_title = 'Вход в личную страницу';
include('header.php');
print '
<meta http-equiv=Refresh
content="0; URL=/menu.php">
';
exit();
if (isset($_POST['nick']) || isset($_POST['passward'])) {
// form submitted
// check for required values
if (empty($_POST['nick'])) {
die ("Пожалуйста, введите свое имя");
}
if (empty($_POST['passward'])) {
die ("Пожалуйста, введите пароль");
}
}
else {
// no result
// authentication failed
echo "Неверное имя пользователя или пароль";
}
// free result set memory
mysql_free_result($result);
// close connection
mysql_close($connection);
}
else {
// no submission
// display login form
?>
<? include('header.php'); ?>
<center>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Имя: <input type="text" name="nick" value="<?php echo $_coоkie['username']; ?>">
Пароль: <input type="password" name="passward">
<input type="submit" name="submit" value="Войти"> <br>
<a href='forgot.php'>Забыли пароль?</a>
</center>
<?php
}
?>
</p>
<? include('footer.php'); ?>
Проблема у меня в следующем, данные о сессии почему-не сохраняются в базе данных user_online
Помогите пожалуйста разобраться