Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.07.2015, 11:15
Новичок на форуме
Отправить личное сообщение для sgans Посмотреть профиль Найти все сообщения от sgans
 
Регистрация: 01.07.2015
Сообщений: 6

Вывод ожидаемой доставки на сайте
Всем привет!
Нужна помощь в реализации скрипта начинающему.
Суть следующая:
Если пользователь заходит в карточку товара на текущий день до 15.00 , то доставка завтра.
Если пользователь заходит в карточку товара на текущий день после 15.00, то доставка после завтра.
Вроде бы написал, но столкнулся с проблемой последнего дня в месяце, скрипт начал выводить неправильную дату , то есть, завтра допустим 1 мая, а выводит 32 апреля....
скрипт прилагается


<script type="text/javascript"> // выводим дату доставки

var d = new Date();
var theDay = d.getDay();
var time = d.getHours();

var dTommorow = new Date();
var dTommorow.setDate(D.getDate() + 1));

var dAfterTommorow = new Date();
var dAfterTommorow.setDate(D.getDate() + 2));

var month=new Array(); // выводим массив месяцев

month[0] = "Января";
month[1] = "Февраля";
month[2] = "Марта";
month[3] = "Апреля";
month[4] = "Мая";
month[5] = "Июня";
month[6] = "Июля";
month[7] = "Августа";
month[8] = "Сентября";
month[9] = "Октября";
month[10] = "Ноября";
month[11] = "Декабря";


if(time < 15) // Проверка: если до 15.00, то доставка завтра
{
/*document.write("<span>Доставим по Москве:</span>"+" " +[d.getDate()+1] + " " + month[d.getMonth()]);*/
document.write("<span>Доставим по Москве:</span>"+" " +[dTommorow.getDate()] + " " + month[dTommorow.getMonth()]);
}
else
{
document.write("<span>Доставим по Москве:</span>"+" " +[d.AfterTommorow.getDate()] + " " + month[d.getMonth()]);
}

switch (theDay)
{
case 6:
document.write(" - Внимание! Доставка в выходные дни по договоренности"); // выводим сообщение на доставку в выходные дни
break;
case 7:
document.write(" - Внимание! Доставка в выходные дни по договоренности");
}
</script>
Ответить с цитированием
  #2 (permalink)  
Старый 01.07.2015, 12:31
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Сообщение от sgans
var dAfterTommorow.setDate(D.getDate() + 2));
что это D ?
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #3 (permalink)  
Старый 01.07.2015, 13:40
Новичок на форуме
Отправить личное сообщение для sgans Посмотреть профиль Найти все сообщения от sgans
 
Регистрация: 01.07.2015
Сообщений: 6

<script type="text/javascript"> // выводим дату доставки

var d = new Date();
var theDay = d.getDay();
var time = d.getHours();

var dTommorow = new Date();
var dTommorow.setDate(d.getDate() + 1));

var dAfterTommorow = new Date();
var dAfterTommorow.setDate(d.getDate() + 2));

var month=new Array(); // выводим массив месяцев

month[0] = "Января";
month[1] = "Февраля";
month[2] = "Марта";
month[3] = "Апреля";
month[4] = "Мая";
month[5] = "Июня";
month[6] = "Июля";
month[7] = "Августа";
month[8] = "Сентября";
month[9] = "Октября";
month[10] = "Ноября";
month[11] = "Декабря";


if(time < 15) // Проверка: если до 15.00, то доставка завтра
{document.write("<span>Доставим по Москве:</span>"+" " +[dTommorow.getDate()] + " " + month[dTommorow.getMonth()]);
}
else
{document.write("<span>Доставим по Москве:</span>"+" " +[dAfterTommorow.getDate()] + " " + month[dAfetrTommorow.getMonth()]);
}

switch (theDay)
{
case 6:
document.write(" - Внимание! Доставка в выходные дни по договоренности"); // выводим сообщение на доставку в выходные дни
break;
case 7:
document.write(" - Внимание! Доставка в выходные дни по договоренности");
}
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 09.07.2015, 06:27
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Обалдеть. А если он напишет - привезите мне послезавтра в 11-00, вы что ему скажете "в очередь сукины дети"?
Ответить с цитированием
  #5 (permalink)  
Старый 13.07.2015, 12:21
Новичок на форуме
Отправить личное сообщение для vendetta_js Посмотреть профиль Найти все сообщения от vendetta_js
 
Регистрация: 13.07.2015
Сообщений: 1

используйте BB-коды для форматирование .....
Ответить с цитированием
  #6 (permalink)  
Старый 15.07.2015, 17:12
Новичок на форуме
Отправить личное сообщение для sgans Посмотреть профиль Найти все сообщения от sgans
 
Регистрация: 01.07.2015
Сообщений: 6

Ничего не напишет, читай задание внимательно. Это информационное сообщение.
Ответить с цитированием
  #7 (permalink)  
Старый 15.07.2015, 17:14
Новичок на форуме
Отправить личное сообщение для sgans Посмотреть профиль Найти все сообщения от sgans
 
Регистрация: 01.07.2015
Сообщений: 6

Сообщение от vendetta_js Посмотреть сообщение
используйте BB-коды для форматирование .....
В общем по существу ответить никто не может, вот только писать что и чем форматировать и какие сообщения надо писать эт пожалуйста.
Ответить с цитированием
  #8 (permalink)  
Старый 15.07.2015, 21:05
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

По рзелульаттам илссеовадний одонго анлигйсокго унвиертисета, не иеемт занчнеия, в кокам пряокде рсапожолены бкувы в солве. Галвоне, чотбы преавя и пслоендяя бквуы блыи на мсете. Осатьлыне бкувы мгоут селдовтаь в плоонм бсепордяке, все-рвано ткест чтаитсея без побрелм. Пичрионй эгото ялвятеся то, что мы чиатем не кдаужю бкуву по отдльенотси, а все солво цликеом.

Но это текст, а вот код, это иное. Выставляя код, потрудитесь его обрамить ВВ-тегами соответствующими, чтобы он воспринимался как код, а не Галвоне, чотбы преавя и пслоендяя бквуы блыи на мсете Вы же просите помощи, значит уважайте тех, кто должен вникать в код ваш.

Что касается непосредственно кода - а каким образом сервер будет знать, что кто-то выбрал товар до или после 15:00? Товаром ведь ведает не клиент, а сервер. К тому же, чтобы так однозначно трактовать доставку, магазин должен обслуживать клиентов только своего часового пояса, все запросы на доставку (выбор товара) должны в пределах часового пояса сервера. Это так?
Ответить с цитированием
  #9 (permalink)  
Старый 16.07.2015, 11:00
Новичок на форуме
Отправить личное сообщение для sgans Посмотреть профиль Найти все сообщения от sgans
 
Регистрация: 01.07.2015
Сообщений: 6

Сообщение от laimas Посмотреть сообщение

Что касается непосредственно кода - а каким образом сервер будет знать, что кто-то выбрал товар до или после 15:00? Товаром ведь ведает не клиент, а сервер. К тому же, чтобы так однозначно трактовать доставку, магазин должен обслуживать клиентов только своего часового пояса, все запросы на доставку (выбор товара) должны в пределах часового пояса сервера. Это так?
Еще раз повторяю, товар никто не выбирает, клиент заходит в карточку товара, в описании он просто видит инфо, что доставка по москве возможна завтра, если он зашел на эту страницу до 15.00.
А вот по по поводу часовых поясов пока не задумывался, так как хост питерский, то соответственно берется московское время.
Но дело не в этом, ошибка проявилась на конец месяца - к последнему дню месяца прибавляется еще 1 день, и вместо 1 апреля отображается 32 марта... как это поправить , вот в чем суть всего вопроса..
А тут развели демагогию по поводу, как должно выглядеть сообщение и все такое...
Ответить с цитированием
  #10 (permalink)  
Старый 16.07.2015, 11:03
Новичок на форуме
Отправить личное сообщение для sgans Посмотреть профиль Найти все сообщения от sgans
 
Регистрация: 01.07.2015
Сообщений: 6

вот пример, чтоб было понятней: http://www.galantes.ru/index.php?productID=10551
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод поисковых запросов гугл на сайте klexxus Общие вопросы Javascript 2 18.02.2015 08:46
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 14:25
Вывод мета тегов на сайте dimas15 Мобильный JavaScript 0 01.03.2013 16:33
Вывод информации о свободном месте на жд на сайте Kmetik Events/DOM/Window 2 24.06.2012 12:32
Сервисы для реализации оплаты кредитками на сайте. nyols Серверные языки и технологии 1 29.05.2011 13:44