Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Получить ID еще не созданной записи в базе

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: как?
dropoff
Отправлено: 04 Июня, 2011 - 18:20:33
Post Id



Посетитель


Покинул форум
Сообщений всего: 310
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




Всем привет.

Проблема в том, что в скрипте при создании новости картинки, которые можно прикрепить, загружаются в папку с ID новости. т.е. по пути uploads/images/news/id_новости/к артинка.gif

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

И еще вопрос.
Если при создании новости и написании УРЛ'а в базе уже есть такой УРЛ, как к нему добавить какое-то число последовательное?
Т.е. если в БД уже есть новость с УРЛ
moya-novostb

то следующую писать
moya-novostb-1

а далее
moya-novostb-2
и .т.д..

В worpress так есть, но там найти что-то не смог.
Помогите пожалуйста.
 
 Top
OrmaJever Модератор
Отправлено: 04 Июня, 2011 - 18:27:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)






-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
dropoff
Отправлено: 04 Июня, 2011 - 19:25:01
Post Id



Посетитель


Покинул форум
Сообщений всего: 310
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




OrmaJever, спасибо!

А по второму вопросу подскажете? Как решаются такие задачи?
 
 Top
EuGen Администратор
Отправлено: 04 Июня, 2011 - 21:01:55
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Например, так:
PHP:
скопировать код в буфер обмена
  1.  
  2. $rResult=mysql_query("SELECT COUNT(*) AS url_count FROM `table` WHERE `url`LIKE 'moya-novostb%'");
  3. $rgResult=mysql_fetch_array($rResult);
  4. //desired name:
  5. $urlName=$rgResult['url_count']?'moya-novostb-'.($rgResult['url_count']+1):'moya-novostb';
  6.  


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
dropoff
Отправлено: 04 Июня, 2011 - 21:36:04
Post Id



Посетитель


Покинул форум
Сообщений всего: 310
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




Ага. Спасибо.

Только не проверяет УРЛ которые уже были обработаны до этого.

т.е.
пошла первая moya-novostb
потом добавляется вторая moya-novostb-2

а потом получается так, что moya-novostb-2 никак не проверяется
и при добавлении moya-novostb опять добавляет moya-novostb-2

наверное нужно в цикле делать проверку как-то.
 
 Top
EuGen Администратор
Отправлено: 04 Июня, 2011 - 21:51:01
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




dropoff пишет:
Только не проверяет УРЛ которые уже были обработаны до этого

А должна. LIKE 'moya-novostb%' на это как раз и указывает.
Вероятно, запрос не корректно формируете.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
dropoff
Отправлено: 04 Июня, 2011 - 22:36:11
Post Id



Посетитель


Покинул форум
Сообщений всего: 310
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




Да. Точно, пропустил %!
Спасибо вам большое!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с СУБД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB