|
|
|
| Нужно сделать запрос в базу mysql и получить номер последней записи в определенной табице и присвоить это значение переменной $result
Делаю так:
:
<?php
$link = mysql_connect("localhost", "zip", "zip", "search")
or die("Could not connect: " . mysql_error());
$query = mysql_query("SELECT MAX(id) FROM sebtableindexdata");
$query = mysql_query("SELECT LAST_INSERT_ID()");
$result = mysql_result($query, 0, 0);
echo $result
?>
|
Выдает
А номер по факту 500.
Что делаю не так. | |
|
|
|
|
|
|
|
для: zIP
(02.11.2005 в 16:24)
| |
<?php
$link = mysql_connect("localhost", "zip", "zip", "search")
or die("Could not connect: " . mysql_error());
$query = mysql_query("SELECT MAX(id) FROM sebtableindexdata");
echo mysql_insert_id();
?>
|
| |
|
|
|
|
|
|
|
для: Евгений Петров
(02.11.2005 в 16:32)
| | Вывод результата - 0 | |
|
|
|
|
|
|
|
для: zIP
(02.11.2005 в 19:34)
| | Ну так понятно. Вы ж ничего не добавляете в базу, а следовательно последний сгенерированный ID = 0. Вам вообще что нужно сделать? | |
|
|
|
|
|
|
|
для: zIP
(02.11.2005 в 16:24)
| | Уберите запрос
<?php
$query = mysql_query("SELECT LAST_INSERT_ID()");
?>
|
и 0 в mysql_result(), оставьте только
<?php
$link = mysql_connect("localhost", "zip", "zip", "search")
or die("Could not connect: " . mysql_error());
$query = mysql_query("SELECT MAX(id) FROM sebtableindexdata");
$result = mysql_result($query, 0);
echo $result
?>
|
Ответ
странен и харктерен скорее для дескриптора $query.
PS Вопросы, посвящённые MySQL лучше сразу размещать в разделе MySQL. | |
|
|
|
|
|
|
|
для: cheops
(02.11.2005 в 19:57)
| | Ответ -
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in F:\server\www\search\look.php on line 5
|
line 5
$result = mysql_result($query, 0);
|
| |
|
|
|
|
|
|
|
для: zIP
(02.11.2005 в 20:49)
| | Скажите, зачем вы определяете последний id если вы ничего не добавляете в БД? LAST_INSERT_ID() - показвает последнии сгенерированный id для поля auto_increment при вставке данных в таблицу? | |
|
|
|
|
|
|
|
для: Евгений Петров
(02.11.2005 в 21:00)
| | В том то и дело что надо добовлять. Есть скрипт добавления данных в таблицы mysql и скрипт поиска по этим. таблицам. Вносить он может только начиная с нуля. А надо чтобы он добавлял данные начиная с последнего номера. Просто производить полную индексацию при добавлении новых директорий с файлами глупо да долго, Количество файлов переваливает за 50тыс.
В связи с этим нужно определять последнее значение. В противном случае данные просто не вносятся т.к. поля начиная с нуля уже заняты. | |
|
|
|
|
|
|
|
для: zIP
(02.11.2005 в 21:54)
| | Ничего не понял. Вам нужно чтобы id при занесении всегда был больше предыдущего? Ну так сделайте атррибут auto_increment у поля id и он сам будет увеличиваться на единицу. | |
|
|
|
|
|
|
|
для: Евгений Петров
(02.11.2005 в 22:01)
| | Да, нужно что бы id был больше на единицу, но отсчет нужно начинать не с нуля а с номера последней записи в определенной таблице. | |
|
|
|
|
|
|
|
для: zIP
(02.11.2005 в 22:21)
| | А вы что таблицы создаете динамически? Т.е. у вас что нет определенного набора таблиц? Если есть то опишите поподробнее что хранится в этих таблицах и что вам надо. Если вам надо задать стартовый id для какой то таблицы, то зачем это делать в дальнейшем... ? | |
|
|
|
|
|
|
|
для: zIP
(02.11.2005 в 20:49)
| | Странно.... Запрос ничего не возвращает. Перепишите ваш код таким образом
<?php
$link = mysql_connect("localhost", "zip", "zip", "search")
or die("Could not connect: " . mysql_error());
$query = mysql_query("SELECT MAX(id) FROM sebtableindexdata");
if (!$query) {
echo "Ошибка выполнения запроса!<br>".mysql_error();
die;
}
$result = mysql_result($query, 0);
echo $result;
?>
|
Какую ошибку выводит в браузер? | |
|
|
|