Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы Как вывести id новости при ее добавлении?

Как вывести id новости при ее добавлении?


     25.01.2013    Общие вопросы    2558

вопрос
Сразу после добавления новости, выводится сообщение "Ваша статья была успешно добавлена в базу данных". Так вот, как сделать, чтоб выводился и id новости? Например, чтоб было так: "Ваша статья была успешно добавлена в базу данных под номером n", где n - и есть id. Либо (если это проще), чтоб появлялась прямая ссылка на добавленную новость. Помогите пожалуйста, очень нужно для реализации задумки.

Ответил: TheImDim


$last_id = $db->insert_id();

Комментарии пользователей (13)

ImCoffeeman
21 | 5

ImCoffeeman - 25 января 2013 15:09 - Юзер

и куда этот код вписывать?
тоже пригодилось :)

TheImDim
18

327 | 291

TheImDim - 25 января 2013 15:17 - Юзер

Ищем в website.lng строчку:
'add_ok_1'        =>    "Ваша статья была успешно добавлена в базу данных.",

заменяем на:
'add_ok_1'        =>    "Ваша статья была успешно добавлена в базу данных с id ",


далее в modules/addnews.php ищем:
if( $approve ) $msg = $lang['add_ok_1'];

заменяем на:
if( $approve ) $msg = $lang['add_ok_1'].$row['id'];

shmel1985
2

146 | 63

shmel1985 - 26 января 2013 22:19 - Юзер

Цитата: Dymatize
www\language\Russian\website.lng
www\engine\modules\addnews.php

я добавил так как написано посте #11090 но не работает
$last_id = $db->insert_id(); а что с этим делать?

shmel1985
2

146 | 63

shmel1985 - 26 января 2013 21:36 - Юзер

TheImDim
$last_id = $db->insert_id();
Куда это нужно вставит?

TheImDim
18

327 | 291

TheImDim - 26 января 2013 21:58 - Юзер

Инструкцию выше смотри.

shmel1985
2

146 | 63

shmel1985 - 26 января 2013 22:13 - Юзер

TheImDim, я видел, но не могу понять куда это вставить что так сложно тикнуть палцем, думаю я не один что не могу понять куда его.

Dymatize
6

111 | 104

Dymatize - 26 января 2013 22:16 - Юзер.

Там же написано в какие файлы втыкать.

www\language\Russian\website.lng
www\engine\modules\addnews.php

shmel1985
2

146 | 63

shmel1985 - 26 января 2013 22:20 - Юзер

Цитата: Dymatize
Там же написано в какие файлы втыкать.

www\language\Russian\website.lng
www\engine\modules\addnews.php

я добавил так как написано посте #11090 но не работает
$last_id = $db->insert_id(); а что с этим делать?

Dymatize
6

111 | 104

Dymatize - 26 января 2013 22:24 - Юзер.

кеш почистить не забыли?

shmel1985
2

146 | 63

shmel1985 - 26 января 2013 22:53 - Юзер


Цитата: Dymatize
кеш почистить не забыли?

Вот как получается

shmel1985
2

146 | 63

shmel1985 - 26 января 2013 22:55 - Юзер

$last_id = $db->insert_id(); Непонятно куда прописывать данный код.

TheImDim
18

327 | 291

TheImDim - 26 января 2013 23:59 - Юзер

Этот код не надо никуда прописывать, я его написал чтобы показать как получить id при последнем INSERT запросе. В стандартом же addnews.php значение id уже есть, оно вытаскивается после INSERT запроса и присваивается переменной $row['id'] - строка ~ 361.

Lady
65 | 22

Lady - 27 января 2013 08:42 - Юзер

При добавлении $row['id'] в if( $approve ) $msg = $lang['add_ok_1']; не выводилось абсолютно ничего...

Но получилось вывести номер новости, добавив $row['id'] после $lang['add_ok']:

if( $config['allow_alt_url'] == "yes" ) msgbox( $lang['add_ok'], "{$msg}


if( $config['allow_alt_url'] == "yes" ) msgbox( $lang['add_ok'].$row['id'], "{$msg}


Так что спасибо TheImDim за наводку =)))

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы