Вывести предпоследнюю строчку из таблицы

Vov4ik

Новичок
Надо вывести предпоследнюю строчку. ID идёт по порядку.

например
|id|Имя|Дата|время|статус
|1|name|12.12.12|15:51|start_work
|2|name|17.12.12|12:21|end_work
|3|name|21.12.12|11:00|start_work
|4|name|21.12.12|10:00|end_work

то есть вывести строчку с id 3 и значение start_work


то есть сравниваю была ли нажата кнопка ещё раз и сравнивает предыдущее значение с этой кнопкой которая заносит |id|Имя|Дата|время|start_work дабы не допустить , чтобы по 100500 раз нажимали кнопку и не записываловь в базе всё


нагородил типо такого
PHP:
$maxid = mysql_result(mysql_query("SELECT (MAX(id)-1) FROM chernov"), 0, 0);
$sql = "SELECT * FROM chernov ORDER BY $maxid DESC LIMIT 1";

$result = mysql_query($sql)  or die(mysql_error());
$table = "<table>";
while ($row = mysql_fetch_assoc($result))
{
$table .= "<tr>";
$table .= "<td>".$row['id']."</td>";
$table .= "<td>".$row['name']."</td>";
$table .= "<td>".$row['data']."</td>";
$table .= "<td>".$row['times']."</td>";
$table .= "<td>".$row['status']."</td>";
$table .= "</tr>";
}
$table .= "</table> ";
echo $table;
выводит только id предпоследнее и то как то коряво, типа Unknown column '240' in 'order clause'
 

Gremboloid

инженера Гр...
По моему вы сами усложнили себе задачу.
Не проще на событие нажатие повесить обработчик javascript, который будет просто дизаблить кнопку?
 

Vov4ik

Новичок
По моему вы сами усложнили себе задачу.
Не проще на событие нажатие повесить обработчик, который будет просто дизаблить кнопку?
но при F5 снова она активируется кнопка, уже так пробовал, но если есть какие то другие методы с удовольствием послушаю
 

Vov4ik

Новичок
при F5
так и должно быть. Опишите что вы хотите сделать простыми словами, без привязки к коду.
если в 2 словах то модуль рабочего времени. То есть человек пришёл на работу нажал кнопку начать работу, обед, или завершить работу, или отгул на следующий день. А клиенты (то есть 200 магазов, работаю в тех поддержке) видели текущий статус и сразу бы поняли, что "ага, он начал работать, можно его тревожить уже". Сделал с файлами - всё работает, захотели ещё БД и чтобы держала данные о человеке, когда пришёл, ушёл, отгул.
Форма есть - кнопка "начать рабочий день" заносит данные в БД и в файлик для пользователей. Но при F5 данные отправляются ещё раз. Так вот - сделал чтобы при клике кнопкка диактивировалась - данные не записываются никуда. Пошёл искать метод который предложил , сравнивать просто предыдущую строчку, то есть если есть уже start_work то не записывай
как то так
геморрно всё
 

Gremboloid

инженера Гр...
Нет нужды искать предыдущую строку.
Перед выводом формы делайте проверку что человек нажимал последним (последняя запись)
Если нажимал кнопку "начать работу" то выводить кнопку уже дезактивированной.

И перед вставкой новой записи проверять что было последней записью.
Если последняя запись "начать работу", а он умудрился ее нажать еще раз
выводи сообщение "Хватит теребить кнопку, иди работай"
 
Сверху