Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Закрытая темаСоздание новой темыСоздание опроса

> Очищение таблицы при выходе
SiciS  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 16
Пользователь №: 17466
На форуме: 16 лет, 1 месяц, 22 дня
Карма:




Всем привет!
Подскажите пожалуйсто каким способом можно очистить таблицу при выходе из сайта т.е. закрытие браузера. И возможно ли вообще такое?



Спустя 1 минута, 14 секунд (16.04.2009 - 16:09) Kuliev написал(а):
Цитата (SiciS @ 16.04.2009 - 13:08)
Всем привет!
Подскажите пожалуйсто каким способом можно очистить таблицу при выходе из сайта т.е. закрытие браузера. И возможно ли вообще такое?

В принципе можно! Встречный вопрос ЗАЧЕМ???

Спустя 13 минут, 22 секунды (16.04.2009 - 16:23) SiciS написал(а):
Я делаю корзину для интернет магазина, но сессии не знаю....(
...только с помощи сессий передаю переменные с данными и заношу их в БД, после чего уже в корзину их вывожу в цыкле из БД.....и например человек зашел подабавлял много чего в корзину, но не купил не чего, а просто вышел, то когда он снова зайдет на сайт, она будет все еще полная((( поэтому мне и надо сделать при выходе очистку...

Спустя 6 минут, 13 секунд (16.04.2009 - 16:29) Kuliev написал(а):
SiciS
Храни заказы в сессии, затем если юзер зашел в корзину и оформил заказ то пиши в БД если просто закрыл браузер, то сессия обнулица и в корзине ничего не будет!

Спустя 13 минут, 27 секунд (16.04.2009 - 16:42) sergeiss написал(а):
В сессии тоже может остаться что-то. Ежели человек несколько раз перейдет по сайту до того, как выйти.
Поэтому можно записывать данные о времени последнего посещения и номер сессии. Каждый раз при обращениии к сесси надо будет проверять время предыдущего обращения, и при превышении некоего порога (например, часа 3-4) обнулять. Иначе, ежели времени прошло меньше, то считать, что юзер продолжает работать.

Спустя 8 минут, 20 секунд (16.04.2009 - 16:51) SiciS написал(а):
я не понимаю как с сессиями работать(((
вот у меня есть переменная Myrow на 1ом пхп



<?php
session_start();
include("bd.php");
if (isset($_GET['id'])) { $id = $_GET['id']; }
$result = mysql_query ("SELECT * FROM komnat WHERE id='$id'",$db);
$myrow = mysql_fetch_array ($result);
session_register("result", "myrow");
?>

и при нажатии на сылку "в корзину" меня перекидывает на другой ПХП файл
и вот как я вывожу товары:
<?php echo $myrow ['title']; ?>

так в чем проблема как мне выводить товары в цыкле??? т.е нажал на 1 товар потом на второй и они были вместе в корзине, а если нажал 2 раза на один и тот же товар то напротив писалось кол - во 2???

Просто я не знаю как это сделать, поэтому приходится придумывать всякую чушь((

Спустя 1 минута, 48 секунд (16.04.2009 - 16:52) Kuliev написал(а):

Спустя 4 минуты, 3 секунды (16.04.2009 - 16:56) jetistyum написал(а):
Меня всегда удивлял такой подход - "хотя сессии не знаю" ( хотя человек видимо предполагает что это нужно делать на сессиях ) .. поэтому просто пишу в бд... отличный подход... на машине ездить не умею, поэтому езжу на танке smile.gif
Сессии это же элементарно.... достаточно почитать 10 минут и все встанет на свои места.. жизнь покажется снова прекрасной smile.gif

Спустя 43 минуты, 34 секунды (16.04.2009 - 17:40) SiciS написал(а):
спасибо я прочитал эту статью http://phpfaq.ru/sessions
но там или мало описанно о сессиях, либо я дурак, так как не понял как мне то, что там написано может помочь в моей проблеме...((

Помогите плиз как можно реализовать самую простейшую корзину, либо подскажите плиз как очистить таблицу при выходе из сайта, если можете. Заранее благодарю. Буду рад любой инфе..

Спустя 8 минут, 3 секунды (16.04.2009 - 17:48) Joker написал(а):
Цитата (jetistyum @ 16.04.2009 - 13:56)
отличный подход... на машине ездить не умею, поэтому езжу на танке

biggrin.gif cool.gif

Спустя 3 минуты, 3 секунды (16.04.2009 - 17:51) SiciS написал(а):
Вам смешно... а мне не очень((

Спустя 29 минут, 43 секунды (16.04.2009 - 18:21) jetistyum написал(а):
значит невнимательно читал
в двух словах.. сессии это такой массив.. который не очищается между запуском скриптов... установив значение в одном скрипте .. ты можешь прочитать его в другом.. если они оба запущены с одного клиента (используются cookie для идентификации сессии) , используют одно имя сессии и между их запуском не прошло больше ${TTL сессии} секунд ...
напиши тестовый скрипт..
test1.php
в нем установи значение переменной в сессии
напиши тестовый скрипт
test2.php
в нем прочитай значение переменной ...
и тебе откроются тайны предков... smile.gif

Спустя 46 минут, 20 секунд (16.04.2009 - 19:07) SiciS написал(а):
Спасибо я в этом разобрался:
вот первый пхп: (тут я заношу значения в сесию)

<?php
session_start();

include("bd.php"); /*соединение с БД*/

if (isset($_GET['id'])) { $id = $_GET['id']; }

$result = mysql_query ("SELECT * FROM komnat WHERE id='$id'",$db);
$myrow = mysql_fetch_array ($result);

$nazvanie = $myrow [1];
$kartinka = $myrow [4];
$cena = $myrow [5];

$_SESSION['nazvanie'] = "$nazvanie";
$_SESSION['kartinka'] = "$kartinka";
$_SESSION['cena'] = "$cena";
?>



вот 2 пхп (тут я вывожу в таблице):
</table>
<br>
<table width="399" height="84" border="1" align="center">
<tr>
<td width="112"><img width='100' height='90' src = '<?php echo $_SESSION['kartinka']; ?>'></td>
<td width="271"><table width="272" height="84" border="1">
<tr>
<td><div align="center"><?php echo $_SESSION['nazvanie']; ?></div></td>
</tr>
<tr>
<td><table width="270" height="31" border="1">
<tr>
<td width="142"><div align="center"><?php echo $_SESSION['cena']; ?></div></td>
<td width="112">&nbsp;</td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table>

все нормально выводится. НО выводится только один товар, т.е. например я зайду на това "Алое" и нажму на сылку "в корзину" - товар добавится(выведится в табличке), но я хочу еще один товар добавить и когда добавляю другой товар он заменяет старый(((
Подскажите как их выводить все вместе??

Спустя 4 минуты, 53 секунды (16.04.2009 - 19:12) Kuliev написал(а):
SiciS
Используй размерность массива!!!
PHP
$_SESSION['tovar'][]


Спустя 6 минут, 8 секунд (16.04.2009 - 19:18) SiciS написал(а):
а можно поподробнее об этом, а то я не понимаю sad.gif .....
если можно то на примере))) если конечно не трудно..

Спустя 13 минут, 7 секунд (16.04.2009 - 19:31) Kuliev написал(а):
Цитата (SiciS @ 16.04.2009 - 16:18)
а можно поподробнее об этом, а то я не понимаю sad.gif  .....
если можно то на примере))) если конечно не трудно..

PHP
// запрос на выборку

$sql = ("SELECT * FROM `table`");
$result mysql_query($sql) or die (mysql_error().$sql);

// просматриваем данные из БД в цикле

while ($row mysql_fetch_assoc($result))
{

  
// Записываем в сессию  все товары
  
$_SESSION['tovar'][] = $row['tovar'];

}

// теперь чтобы просмотреть что записалось в сессии выведем данные в цикле

for ($i 0$i count($_SESSION['tovar']); $i++)
{
 
// $i  это индекс (ключ) массива
  
   
echo $_SESSION['tovar'][$i]."<br>\n";
}



Спустя 19 минут, 7 секунд (16.04.2009 - 19:50) jetistyum написал(а):
почитай лучше о массивах... что такое многомерный массив.
можно конечно и на примерах, но там кроме одного примера много всего есть. За каждым вопросом же не будешь на форум приходить?):

Спустя 11 минут, 5 секунд (16.04.2009 - 20:01) rolik200 написал(а):
добавляешь массив в котором каждый товар хранится под своим массивом
PHP
$tovar=array("nazvanie" =>$nazvanie, "kartinka" => $kartinka,"cena" => $cena);

$_SESSION['tovar'][]=$tovar;

впоследствии этот массив массивов разбираешь
PHP
foreach($_SESSION['tovar'] as $tovar)
{
echo $tovar[nazvanie].$tovar[kartinka].$tovar[cena];
}

Спустя 23 минуты, 53 секунды (16.04.2009 - 20:25) SiciS написал(а):
попробывал сделать как написал rolik200: и вот что имею:

Notice: Use of undefined constant nazvanie - assumed 'nazvanie' in z:\home\localhost\www\flowet\korzina.php on line 459
[Денвер: показать возможную причину ошибки]
Notice: Use of undefined constant kartinka - assumed 'kartinka' in z:\home\localhost\www\flowet\korzina.php on line 459

Notice: Use of undefined constant cena - assumed 'cena' in z:\home\localhost\www\flowet\korzina.php on line 459
ААА
Warning: Invalid argument supplied for foreach() in z:\home\localhost\www\flowet\korzina.php on line 45

как с этим бороться?

Спустя 21 минута, 56 секунд (16.04.2009 - 20:47) rolik200 написал(а):
у тебя php.ini надо настроить ,
а пока пиши
PHP
echo $tovar['nazvanie'].$tovar['kartinka'].$tovar['cena'];

тоесть экранируешь названия
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Закрытая темаСоздание новой темыСоздание опроса