отображение одной ячейки из базы

dslychko

Новичок
отображение одной ячейки из базы

Доброго дня. Не бейте если что (в поиск тыкал).

В РНР я начинающий.
Мне нужно выдёргивать только одну ячейку из таблицы (последней сторки).
Подозреваю что это примерно так :

База test , таблица links , Есть поле ID - автоинкремент


<?php

$connection = mysql_connect ("localhost", "user", "pass")
or die ("Ошибка соединения с сервером");
$db = mysql_select_db ("test", $connection)
or die ("Ошибка при выборе Базы данных");

$query = "SELECT * FROM links ";
$result = mysql_query ($query)
or die ("Ошибка при выполнении запроса: ".mysql_error ());

$number = mysql_num_rows($result);

$query = "SELECT * FROM links WHERE ID = '$number'";
$result = mysql_query ($query)
or die ("Ошибка при выполнении запроса: ".mysql_error ());

while ($row=mysql_fetch_array($result)) {
echo "Данные ".$row['name']." <BR>";

}
mysql_close ($connection);

?>


Всё никак не получится код заставить работать.



Ещё есть потребность в коде чтобы к ячейке sum_gr последней строки прибавлять какое то число. Помогите пожалуйста с кодом.
 

Bitterman

Новичок
А что не работает в коде?
Что касается запросов, то убери этот ужас и почитай про ORDER BY и LIMIT
 

dslychko

Новичок
Да ничего не работает.
А где почитать то ?
И на сколько я понимаю ORDER BY и LIMIT мне никак не помогут отображать одну ячейку последней строки.
 

chira

Новичок
dslychko
И на сколько я понимаю ORDER BY и LIMIT мне никак не помогут отображать одну ячейку последней строки.
значит тебе ещё много нужно учиться ...
вместо твоих двух запросов нужно использовать один:
Код:
SELECT * FROM links
ORDER BY ID DESC
LIMIT 1
в твоём коде есть ложное предположение, что количество строк в таблице должно совпадать с максимальным значением ID.
 

Фанат

oncle terrible
Команда форума
dslychko
тебе надо разбить задачу на два этапа.
сначала научиться получать из базы одну строку
а только потом учиться получать одну ячейку
 

dslychko

Новичок
:) Понял. Сортируем по ID и выводим первую с конца. Спасибо большое спецы за оперативность .

Код заметно сократился и теперь работает


mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");

mysql_select_db($dbName) or die(mysql_error());



$query = "SELECT * FROM $userstable ORDER BY ID DESC LIMIT 1";

$res = mysql_query($query) or die(mysql_error());


$number = mysql_num_rows($res);


while ($row=mysql_fetch_array($res)) {

echo $row['time'];

}
 
Сверху