Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как открыть и закрыть сессию? открытие и зыкрытие сессии! 
:(
    Опции темы
Цербер
Дата 26.11.2007, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 333
Регистрация: 21.11.2007

Репутация: нет
Всего: 1



люди я с сессией ваще парюсь не могу толком догнать т.к. учу недавно пхп может кто нить оставит код открытия и закрытия сессии с подробным изъяснением что каждая строка выполняет!!!
буду признателен! smile 
PM MAIL ICQ   Вверх
gta4kv
Дата 26.11.2007, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



Цитата(Цербер @ 26.11.2007,  22:18)
люди я с сессией ваще парюсь не могу толком догнать т.к. учу недавно пхп может кто нить оставит код открытия и закрытия сессии с подробным изъяснением что каждая строка выполняет!!!
буду признателен! smile

Самый простой пример:

Код

<?php
session_start(); // начинаем сессию

if (empty($_SESSION['count'])) { // если переменная count в окружение $_session - пустая, значит присваиваем ей 1
   $_SESSION['count'] = 1;
} else { // иначе же, если count не пусто - прибавляем его на один
   $_SESSION['count']++; 
}
?>

В этой сессии вы обновили страницу <?=$_SESSION['count']?> раз.



PM MAIL   Вверх
Цербер
Дата 26.11.2007, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 333
Регистрация: 21.11.2007

Репутация: нет
Всего: 1



Цитата(gta4kv @ 26.11.2007,  20:33)
Цитата(Цербер @ 26.11.2007,  22:18)
люди я с сессией ваще парюсь не могу толком догнать т.к. учу недавно пхп может кто нить оставит код открытия и закрытия сессии с подробным изъяснением что каждая строка выполняет!!!
буду признателен! smile

Самый простой пример:

Код

<?php
session_start(); // начинаем сессию

if (empty($_SESSION['count'])) { // если переменная count в окружение $_session - пустая, значит присваиваем ей 1
   $_SESSION['count'] = 1;
} else { // иначе же, если count не пусто - прибавляем его на один
   $_SESSION['count']++; 
}
?>

В этой сессии вы обновили страницу <?=$_SESSION['count']?> раз.

а ещё один вопрос если у меня на сайте работает скрипт входа и регистрации (БД мускул) как для пользователя который зашёл по форме входа открыть сессию и потом при выходе закрыть!
 smile 
PM MAIL ICQ   Вверх
sw04
Дата 27.11.2007, 06:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 372
Регистрация: 22.1.2007
Где: Ufa

Репутация: нет
Всего: 18



Цитата(Цербер @  27.11.2007,  02:28 Найти цитируемый пост)
а ещё один вопрос если у меня на сайте работает скрипт входа и регистрации (БД мускул) как для пользователя который зашёл по форме входа открыть сессию и потом при выходе закрыть!

после входа гостя на сайт делаешь start_session(); при любом перемещении по сайту.
Если гость авторизуется, то устанавливаешь какие-то переменные сессии($_SESSION['one'], $_SESSION['two'], etc).
И будет еще 1 таблица в БД, которая будет следить за последней активностью гостей и пользователей.
Т.е. при каждом обновлении страцы будет проверять сессии. если какая-то сессия висит более 30 минут, то удаляешь её из базы(пользователь ушёл)


--------------------
<удалено администрацией>
PM   Вверх
dsCode
Дата 27.11.2007, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 565
Регистрация: 8.9.2007
Где: Saint-Petersburg

Репутация: нет
Всего: 26



добавлю: если Вы хотите изменить имя сессии, то это нужно делать до session_start();, иначе имя будет дефолтным.

Код

session_name("auth");
session_start();



--------------------
the .code inside
:my music
PM MAIL WWW ICQ Jabber   Вверх
misterio
Дата 27.11.2007, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 24.11.2007
Где: Узбекистан, Ташке нт.

Репутация: -1
Всего: нет



Авторизация:
enter.php
Код

<?
include ('src/conf.cfg');

$mylog = $_REQUEST[login];
$mypass = $_REQUEST[password];
$ctime = time();
$error = '';

$query = mysql_query("SELECT * FROM `users` WHERE `login`='$mylog'");
$row = mysql_fetch_array($query);

if (empty($mylog)){
echo "Введите Логин";
}
elseif (empty($mypass)) {
echo "Введите Пароль";
}

if (mysql_num_rows($query)==0) $error="Логин \"<b>".$mylog."</b>\" не найден.";
if ($row['password']!=md5($mypass))
{
$error = "Неверный пароль для \"<b>".$mylog."</b>\"";
}
if(empty($error)) {
session_start();
$_SESSION['name'] = $mylog;
$ltime = date("H:i");
$s = mysql_query("SELECT * from `users` where `login`='$mylog'");
$sr = mysql_fetch_array($s);
mysql_query("INSERT INTO `online` VALUES(0,'".$mylog."','".$ltime."','".$sr[room]."')");
echo "<meta http-equiv=refresh content=0;URL=game.php>";


}


?>


index.php
Код

<?
    if(isset($_SESSION['name'])) 
    {
echo "Привет $_SESSION[name]";
}
else {
?>
<form action="enter.php" method="post">
<input name="login" type="text" class="login" value="" size="15" maxlength="15">
      <input name="password" type="password" class="password" size="15" maxlength="15">
      <br>
    <input name="enter" type="submit" value="Войти">
    </form>
<?
}
?>


Завершение сессии(exit.php)
Код

<?
  include('src/conf.cfg');
  session_start();
  mysql_query("DELETE FROM `online` WHERE `login`='$_SESSION[name]'");
  session_destroy();
  unset($_SESSION['name']);
  echo "<meta http-equiv=refresh content=0;URL=index.php>";
?>


Это сообщение отредактировал(а) misterio - 27.11.2007, 14:32
PM MAIL ICQ GTalk   Вверх
Цербер
Дата 27.11.2007, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 333
Регистрация: 21.11.2007

Репутация: нет
Всего: 1



misterio спасибо за примеры буду пробовать, думаю ещё с этим же вопросом обращусь!!!
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0482 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.