|
|
|
|
$query = "DELETE FROM session_mus WHERE putdate < NOW() - INTERVAL '20' MINUTE";
if(!$query)
{
echo "Ошибка<br>";
echo mysql_error();
exit();
}
mysql_query($query);
|
вот такой запрос я делаю к БД, тоесть через 20 минут это должно сработать.. точнее удалить из базы данных строку. Но почему то удалять не хочет, проверку на ошибку я поставил, но ошибки не выдаёт. Тоесть всё нормально, а не удаляет, подскажите.. | |
|
|
|
|
|
|
|
для: Maxys
(14.11.2007 в 18:55)
| | кто нибудь.. хелп :P | |
|
|
|
|
|
|
|
для: Maxys
(14.11.2007 в 18:55)
| | >проверку на ошибку я поставил, но ошибки не выдаёт. Тоесть всё нормально, а не удаляет, подскажите..
Да уж, супер...
Вот так сделайте и смотрите ошибки :-D
$query_s = "DELETE FROM session_mus WHERE putdate < NOW() - INTERVAL '20' MINUTE";
$query = mysql_query($query_s);
if(!$query)
{
echo "Ошибка<br>";
echo mysql_error();
exit();
}
|
| |
|
|
|
|
|
|
|
для: ddhvvn
(14.11.2007 в 19:47)
| | делаю, получаю пустоту.. | |
|
|
|
|
|
|
|
для: Maxys
(14.11.2007 в 20:52)
| | Порядок выполнения операторов такой же как у ddhvvn? | |
|
|
|
|
|
|
|
для: Maxys
(14.11.2007 в 18:55)
| | У числа 20 кавычки ставить не надо.
И еще: какой формат поля putdate? | |
|
|
|
|
|
|
|
для: Thrasher
(15.11.2007 в 09:46)
| | Поле-Тип-Ноль-По умолчанию
putdate-datetime-Нет-0000-00-00 00:00:00 | |
|
|
|
|
|
|
|
для: Maxys
(15.11.2007 в 18:41)
| | вот весь код.... не пойму, кавычки убрал не работает
session_start();
$id_session = session_id();
include "config.php";
$query = "SELECT * FROM session_mus WHERE id_session = '$id_session'";
$ses = mysql_query($query);
if(!$ses) exit("Ошибка при подсоединения к базе");
if(mysql_num_rows($ses)>0)
{
$query = "UPDATE session_mus SET putdate = NOW()
WHERE id_session = '$id_session'";
mysql_query($query);
}
else
{
$query = "INSERT INTO session_mus VALUES('$id_session', NOW(), '$_SESSION[user]')";
if(!mysql_query($query))
{
echo $query."<br>";
echo "<p>Ошибка при добавлении пользователя</p>";
exit();
}
}
$query = "DELETE FROM session_mus WHERE putdate < NOW() - INTERVAL 1 MINUTE";
mysql_query($query);
|
| |
|
|
|
|
|
|
|
для: Maxys
(15.11.2007 в 18:41)
| | А Вы понимаете, чтобы это работало, нужно как минимум обновлять эту страницу с запросом?
Или у Вас и после ожидания 20ти минут и запуска данного кода, всё равно не удаляется ничего? | |
|
|
|
|
|
|
|
для: morkovkin
(15.11.2007 в 18:47)
| | да нужно обновлять эту страницу.
после ожидания запись всё равно остаётся в базе данных! | |
|
|
|
|
|
|
|
для: Maxys
(16.11.2007 в 06:52)
| | Не понял, вы что, сначала обновляете страницу, а потом ждете 1 минуту и смотрите, удалилась ли запись? Без нового обновления страницы? | |
|
|
|
|
|
|
|
для: Thrasher
(16.11.2007 в 09:47)
| | да, я понимаю что код не сработает если не загрузить страницу ещё раз, но я думал что эта функция INTERVAL 1 MINUTE как то в sql автоматом удалит данные =( так в учебнике было написано =) я ведь ещё учусь. Теперь понятно что так не делается, можете подсказать как же мне тогда удалять запись из БД? | |
|
|
|
|
|
|
|
для: Maxys
(18.11.2007 в 18:34)
| | Так и удалять этим запросом.
При работе с этой таблицей сначала ставите запрос на удаление старых записей, а уже потом обрабатываете эту таблицу как вам нужно (в смысле, добавляете новые или изменяете записи). | |
|
|
|
|
|
|
|
для: Thrasher
(19.11.2007 в 10:22)
| | хорошо, спасибо. | |
|
|
|