Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Программинг, Скрипты, Софт, Сервисы
»
Тема:
Неврублюсь, апдейт поля timestamp. (php, mysql)
Новая тема
Ответить
цитата
27/12/07 в 14:03
Lamagro
толи лыжи не едут толи я ...
Есть таблица в мускуле, в ней некое колличество записей. Одно из полей timestamp. Апдэйчу: ставлю текущую дату:
Код:
$query = ("UPDATE table SET timefield=NOW() WHERE number='$num'");
$result = mysql_query($query);
потом делаю выборку с сортировкой по timestamp:
Код:
$query = "SELECT * FROM table ORDER BY timefield ASC LIMIT 0,10";
$result = mysql_query($query);
и не вижу в этой выборке той записи которую апдэйтил...
Почему ?
Делаешь апдэйт нескольких записей - нет последней...
В общем нид хэлп
цитата
27/12/07 в 14:08
Sha
А LIMIT не срезает ? У тя по возрастанию выборка. мож DESC нада ?
цитата
27/12/07 в 19:07
Lamagro
А LIMIT и не должен срезать после апдейта обновленная запись должна стоять на 1-м месте, только ее почему-то нет, не пойму почему ...
Если лимит не указываешь и выводишь все записи, обновленной записи всерно нет ...
я думаю может какой-нить глюк
странно как-то ...
п.с. хотя через пхпадмин и вижу нормально и сортируется нормально, не знаю вобщем, потому прошу совета
цитата
27/12/07 в 19:47
dDan
Код:
$query = ("UPDATE table SET timefield=
(SELECT NOW())
WHERE number='$num'");
цитата
27/12/07 в 19:48
Sha
Lamagro писал:
А LIMIT и не должен срезать после апдейта обновленная запись должна стоять на 1-м месте, только ее почему-то нет, не пойму почему ...
Так у тебя обновленная запись на последнем месте поскольку сортировка по возрастанию. Я ж писал.
цитата
28/12/07 в 10:48
Lamagro
Sha писал:
Так у тебя обновленная запись на последнем месте поскольку сортировка по возрастанию. Я ж писал.
я же написал что ее нет не поэтому, даже если без лимита выводишь все записи - ее всеравно нет. Последней апдейченной записи - нет!
цитата
28/12/07 в 11:27
Lamagro
dDan писал:
Код:
$query = ("UPDATE table SET timefield=
(SELECT NOW())
WHERE number='$num'");
ничего не изменилось... точно также выводит на одну запись меньше, не выводит именно ту запись, которую апдэйчу последней
цитата
28/12/07 в 11:30
Sha
Lamagro писал:
я же написал что ее нет не поэтому, даже если без лимита выводишь все записи - ее всеравно нет. Последней апдейченной записи - нет!
А через пхпадмин ты видишь её с обновленным таймстампом или со старым ?
Что возвращает апдейт в $result ?
Мож у тебя что-то с $num ?
Попробуй сделать сразу после апдейта
Код:
$query = ("SELECT * FROM table WHERE number='$num'");
$result = mysql_query($query);
ЗЫ попробуй
SET AUTOCOMMIT = 1
цитата
28/12/07 в 11:47
Lamagro
Sha писал:
А через пхпадмин ты видишь её с обновленным таймстампом или со старым ?
с обновленным! и сортируется все нормально! И sql-запросы передаются phpadminom теже самые ...
Sha писал:
Что возвращает апдейт в $result ?
возвращает: 1
Sha писал:
Мож у тебя что-то с $num ?
С $num поидее все впорядке, ведь phpadmin показал что апдэйт нужной записи прошел успешно...
Sha писал:
Попробуй сделать сразу после апдейта
Код:
$query = ("SELECT * FROM table WHERE number='$num'");
$result = mysql_query($query);
ЗЫ попробуй
SET AUTOCOMMIT = 1
счас попробую...
п.с.
кстати если делаешь вывод после апдэйта с сортировкой не по полю timestamp, а по полю num например - выводит все записи как обычно ...
цитата
28/12/07 в 11:59
Sha
Lamagro писал:
п.с.
кстати если делаешь вывод после апдэйта с сортировкой не по полю timestamp, а по полю num например - выводит все записи как обычно ...
Мож с индексами какай-та хрень ? Можно попробовать модифицировать структуру удалив индекс по таймстампу (если есть) и создать заново.
цитата
28/12/07 в 12:21
Lamagro
Sha писал:
Мож с индексами какай-та хрень ? Можно попробовать модифицировать структуру удалив индекс по таймстампу (если есть) и создать заново.
удалил уже все - не помогло...
Код:
$query = ("SELECT * FROM table WHERE number='$num'");
$result = mysql_query($query);
сделал - выдало нужную запись как положено... все нормально - должно работать, а нехочет...
причем колличество записей в выдаче 40, а выдает 39
цитата
28/12/07 в 13:34
Sha
Lamagro писал:
причем колличество записей в выдаче 40, а выдает 39
Это откуда цифры ? Что выдает mysql_num_rows($result)
И как ты $result селекта дальше в пхп обрабатываешь ? Мож проблема у тя дальше в цикле где фетч ?
цитата
28/12/07 в 20:00
samedi
Новый тип гадания - на строке пхп-кода.
цитата
29/12/07 в 09:09
Lamagro
samedi писал:
Новый тип гадания - на строке пхп-кода.
бля я нашел проблему мать перемать ...
Код:
$baseresult=mysql_fetch_row($result);
...
while (($baseresult=mysql_fetch_row($result))==True)
{
....
}
спасибо тем кто учавствовал в гадании
оценил по максимому...
Отдельное Sha спасибо за активное участие!
п.с. всего то надо поспать нормально
Новая тема
Ответить
Эта страница в полной версии