Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Переадресация в новость, после добавления

Переадресация в новость, после добавления


     11.08.2014    переадресация, новости    Все вопросы » Общие вопросы по PHP    2419

вопрос
Хочется сделать перенаправление в саму новость после её добавления пользователем, т.к после добавления можно нажимать F5 и новость будет дублироваться, мало ли какие пользователи есть. Все что нашел это вот такой хак. Но к сожалению на DLE 10.2 не работает и после добавления перенапрявляет на такую ссылку "site.ru/index.php?newsid=" то есть id отсутствует.
Помогите пожалуйста заставить работать данный хак на Dle 10.2

Ответа пока нет


10 комментариев

dj-avtosh
php-developer

dj-avtosh - 11 августа 2014 20:10 -

Находишь:

$row['id'] = $db->insert_id();


Внизу добавляешь

$newId = $row['id'];



а в той конструкции юзаешь


header('Location: '.$config['http_home_url'].'index.php?newsid='. ( ! empty ($newId) ? $newId : $row['id'] );

ЯД Донат: 41001679231462

telegram: @blob42
skype: elhan.isaev (seldom)

Julius123
Юзер

Julius123 - 11 августа 2014 20:18 -

dj-avtosh,
такая ошибка вылетела
Parse error: syntax error, unexpected ';' in /home/androidy/www/engine/modules/addnews.php on line 463 

В этой строке находится
header('Location: '.$config['http_home_url'].'index.php?newsid='. ( ! empty ($newId) ? $newId : $row['id'] );

dj-avtosh
php-developer

dj-avtosh - 11 августа 2014 20:22 -

скобочку забыл

header('Location: '.$config['http_home_url'].'index.php?newsid='. ( ! empty ($newId) ? $newId : $row['id'] ) );

ЯД Донат: 41001679231462

telegram: @blob42
skype: elhan.isaev (seldom)

Julius123
Юзер

Julius123 - 11 августа 2014 20:28 -

dj-avtosh,
Спасибо большое, заработало. А можно как-то оставить стандартное сообщение о успешном добавлении новости но через 5 секунд перенапрявлять в саму новость?

dj-avtosh
php-developer

dj-avtosh - 11 августа 2014 20:29 -

Можно наверно на js

ЯД Донат: 41001679231462

telegram: @blob42
skype: elhan.isaev (seldom)

Julius123
Юзер

Julius123 - 11 августа 2014 20:30 -

Цитата: dj-avtosh
Можно наверно на js

ну если это слишком сложно, тогда наверное не стоит. и так уже хорошо что перенапрявляет

holodoff
Юзер

holodoff - 5 мая 2015 09:08 -

в 10.4 не работает

qwerty666
Юзер

qwerty666 - 18 июля 2019 21:00 -

Подскажет кто-нибудь для 13.2?

ТeraМoune
Юзер

ТeraМoune - 18 июля 2019 21:25 -

Можно попробовать вместо header написать.

if( $config['allow_alt_url'] ) $location = $config['http_home_url']. $newId . '-' . $alt_name . '.html';
else $location = $config['http_home_url'].'index.php?newsid='. $newId;
$onload_scripts[] = <<<HTML
setTimeout(function(){
 window.location = '{$location}';
},5000);
HTML;

Через 5 секунд отправляет в новость.

qwerty666
Юзер

qwerty666 - 18 июля 2019 21:45 -

ТeraМoune, Братан, огромное спасибо! Выручил.

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

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

наверх