|
|
|
|
|
для: zloi_burgui
(06.02.2007 в 14:46)
| | Все заработало. Всем спасибо кто что-то подсказал.
Будете проезжать через мой город с меня пивооо :-)))
Спасибо Роман | |
|
|
|
|
|
|
|
для: Trianon
(06.02.2007 в 12:09)
| | Да согласен сглупил с ID это аутоинкрементное поле. Уберу его с кода. Спасибо за замечания. | |
|
|
|
|
|
|
|
для: ZuArt
(06.02.2007 в 12:43)
| | Нам неизвестно, является ли поле id автоинкрементным.
Если да, то код $id=$_POST['id'] будут неверен, а если нет, то код $id=mysql_insert_id(); | |
|
|
|
|
|
|
|
для: Loki
(06.02.2007 в 12:33)
| | Вы глубоко ошибаетесь =) если смотреть на вышеуказанный код, то видно, что поле id является "сортировщиком", а по виду формы - уникальным кодом (идентификатором записи)...
Если я при вводе не могу различить, что написано на бумажке в строке с id=13 (ну плохой почерк или чернила потекли) я пропущу эту запись... впоследствии, заполнив эдак 5000 записей я наконец вспомню про 13 запись и введу ее... по сортирвке мне выдастся строка 5000, а не 13 - это во-первых...
а во-вторых, сортировка будет просматривать 5000 записей, для того, чтобы вывести строку 5000-ую в соответствии с сортировкой, причем неправильную =)... а поиск остановится на 13-ой записи, если поле в БД указано как уникальное, а если нет, то надо лимит в одну запись поставить, чтобы просмотр БД прекратился на 13 записи... и тут уж скажем прямо - индексировано поле или нет - суть не меняется просмотр 13 записей происходит быстрее, чем просмотр и сортировка 5000 записей.
а вот mysql_insert_id() - как раз и дает значение УНИКАЛЬНОГО поля последней записи, внесенной по insert - отсюда и возьму уникальное id, по которому выстрою условие - на то и голова, чтобы знать как эта функция работает =))) | |
|
|
|
|
|
|
|
для: ZuArt
(06.02.2007 в 11:51)
| | Если поле проиндексировано, а это как правило именно так, то разницы вы не заметите. Кроме того, условие - это хорошо, вот только откуда вы его планируете взять? из головы? тут как раз и стоит задача найти последнюю строку, а вы, в качестве решения, предлагаете в запросе использовать номер, который этим запросом и предстоит найти.
а mysql_insert_id() это вообще из другой оперы. | |
|
|
|
|
|
|
|
для: zloi_burgui
(06.02.2007 в 12:06)
| | нзчт ;)
что смогу - подскажу | |
|
|
|
|
|
|
|
для: zloi_burgui
(06.02.2007 в 11:37)
| | А что передается в $_POST['id'] ?
Здесь напрашивается автоматическая генерация первичного ключа. | |
|
|
|
|
|
|
|
для: ZuArt
(06.02.2007 в 11:51)
| | Спасибо за совет. | |
|
|
|
|
|
|
|
для: Loki
(06.02.2007 в 11:42)
| | А вообще - так нехорошо делать =))) указание сортировки заставляет базу просматривать все записи и отсортировать их - лишняя трата времени и ресурсов сервака - лучше делать получение данных запросом с условием "select * from $table where id=".$id...
а перед этим $id = $_POST['id'] если идентификатор получаем от формы - что нехорошо и неправильно... т.к. может быть такое, что получим один id от двух форм...
или
$id = mysql_insert_id(); если есть автоинкрементное поле (если у него просто другое имя, отличное от "id", то поправить запрос на получение "select ..." - указать его в условии)...
И кстать, если id все-таки передается из формы (как КОД записи), то сортировкой ты не выведешь последнюю ВВЕДЕННУЮ запись, если ввести код меньше, чем уже есть в базе =)))... так что юзай условие, а не сортировку - надежнее ;). | |
|
|
|
|
|
|
|
для: Loki
(06.02.2007 в 11:42)
| | Спасибо. Использую Ваш совет. | |
|
|
|
|