Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Все вопросы » Модули » Как сделать публикацию еще "несозревших" новостей?

Как сделать публикацию еще "несозревших" новостей?


     Модули, Хаки    1998

вопрос
Здравствуйте. Подскажите пожалуйста, как сделать, что бы при публикации у пользователя было поле (желательно в виде календаря) выбора даты публикации, и как сделать что бы даже если дата публикации еще не наступила новость все равно была опубликована?
Спасибо заранее:-)....

Ответил: ychelovek


Не знаю правильно ли так делать, но я сделал так:
в engine/modules/addnews.php изменил

$adTime = $_POST['dates'];                
$thistime = strtotime($adTime);
$thistime = date( "Y-m-d H:i:s", $thistime );


В addnews.tpl добавил поле

<input type="datetime-local" name="dates" id="dates">

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

Sander
PHP-developer

Sander - -

В настройках DLE есть параметр:

Выводить на сайте новости, дата публикации которых, еще не наступила
При включении данной настройки, на сайте будут выводится новости, дата публикации которых, еще не наступила. При отключении данной настройки, новости будут появляться на сайте по мере наступления времени публикации.

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

Sander
PHP-developer

Sander - -

А вот календарь доступен только в админке.
При добавлении с сайта нет даже обработчика для даты.

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

ychelovek
Юзер

ychelovek - -

А нельзя ли как нибудь сделать что бы я добавил поле в addnews.tpl на JS сделал что бы в это поле только дату вписывали, и при нажатии на кнопку добавить это поле заменяло текущую дату date() ... Ну как костыль)

ychelovek
Юзер

ychelovek - -

Вот в данном запросе
$db->query( "INSERT INTO " . PREFIX . "_post (date, autor, short_story, full_story, xfields, title, keywords, category, alt_name, allow_comm, approve, allow_main, fixed, allow_br, symbol, tags) values ('$thistime', '{$member_id['name']}', '$short_story', '$full_story', '$filecontents', '$title', '', '$category_list', '$alt_name', '$allow_comm', '$approve', '$allow_main', '$news_fixed', '$allow_br', '$catalog_url', '" . $_POST['tags'] . "')" );


$thistime поменять на $_POST['date'] поля <input>(ну у DLE как то по другому реализуется передача полей)

ychelovek
Юзер

ychelovek - -

Спасибо, а я блин в оптимизации смотрел, а там другая функция, и думал нигде больше такого нету

ychelovek
Юзер

ychelovek - -

АП
UP

ychelovek
Юзер

ychelovek - -

UP(((

ychelovek
Юзер

ychelovek - -

Нормально ли сделать так:
Сделал поле, с name="dates"
изменил в addnews.php


$adTime = $_POST['dates'];                
                $thistime = strtotime($adTime);
                $thistime = date( "Y-m-d H:i:s", $thistime );



Вопрос в том, безопасно ли это?

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

наверх