Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » поздравление с ДР в html

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
здравствуйте! хотел бы сделать появление на странице поздравления с днем рождения в зависимости от даты.  
 
т.е. просто чтобы в день рождения человека писало "поздравляем с днем рождения того-то..."
 
в чем проблема - хостинг народ.ру . Сделать нужно именно на нем ((  
 
пхп не поддерживает. Подскажите плз, как можно реализовать задумку.

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 17:51 23-08-2008 | Исправлено: IIoH9TJluBblu, 18:34 24-08-2008
Jokerjar79



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Интересно, а как вы тогда храните информацию о пользователях и вообще, как они (зарегистрированные пользователи) там появляются?

----------
www.MyFirstSite.ru - информационный ресурс для начинающих веб-мастеров

Всего записей: 710 | Зарегистр. 08-09-2007 | Отправлено: 18:05 23-08-2008
IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
регистрации там попросту нет.  
 
просто хочу в коде прописать всю бд, всего человек 20
 
грубо говоря  "if today=230808 than writeln "сегодня днюха у сергея"  (и так для всех)
 
т.е. просто чтобы проверяла сегодняшнюю дату и сравнивала с теми, что написаны в коде
 
p.s. ну это совсем "грубо говоря", код просто никакой  просто дал понять, что я хочу сделать

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 18:11 23-08-2008 | Исправлено: IIoH9TJluBblu, 18:12 23-08-2008
SAOD

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну делайте на JavaScript, других вариантов нету.
Как нибудь вроде этого

Код:
 
...........
<script>
var bd = {
                           Вася: '23.4',
                           Петя: '5.3',
                           Миша: '7.9'
                 }; // формат: число.месяц
var date = new Date();
var today = date.getDate()+'.'+(date.getMonth()+1);
for(var i in bd)
{
          if(today==bd[i])   document.write('С днем рождения '+i+'!<br>');
}
</script>
..........
 


Всего записей: 228 | Зарегистр. 30-12-2006 | Отправлено: 19:47 23-08-2008 | Исправлено: SAOD, 19:59 23-08-2008
IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SAOD
благодарю
 
 
Добавлено:
вопросик небольшой: а как сделать, чтобы текст был жирным и красным? с джавой дела не имел вообще

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 21:28 23-08-2008
SAOD

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
IIoH9TJluBblu
В document.write вставляйте обычные теги html
 

Код:
document.write('<font color="red"><b>С днем рождения '+i+'!</b></font><br>')

Всего записей: 228 | Зарегистр. 30-12-2006 | Отправлено: 22:17 23-08-2008
IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SAOD
понял, спасибо еще раз

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 22:19 23-08-2008
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
IIoH9TJluBblu
Может, все же, исправим ошибки в названии темы?


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 01:57 24-08-2008
IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
если вы имели в виду пропущенную согласную в слове "поздравление" - то я исправил
 
 
 
назрел еще один вопрос по теме:
я хотел бы, чтобы в поздравлении было имя и фамилия, однако, чтобы их написать, приходится ставить между ними нижнее тире "_". Как можно сделать, чтобы они были написаны через пробел?  пробовал тег "&nbsp" - не помогло
 

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 18:37 24-08-2008
SAOD

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А что если взять в кавычки?
 

Код:
 
var bd={
                     'Иванов Сергей': '23.4',
                     'Петров Василий': '5.3'
               }
 

Всего записей: 228 | Зарегистр. 30-12-2006 | Отправлено: 19:17 24-08-2008 | Исправлено: SAOD, 00:04 25-08-2008
IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SAOD
то что надо, спасибо

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 21:18 24-08-2008
IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а как можно сделать, чтобы выводилось, сколько дней до ближайшей днюхи?
 
в этой проге или написать новую - все равно. Список поздравляемых тот же

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 09:36 25-08-2008
SAOD

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1) поменять формат "бд" с число.месяц  на месяц.число (добавить к числу нолик если оно меньше десяти), кавычки с чисел в объявлении хеша (базы) можно убрать, т.к это обычные десятичные дроби и далее они будут рассматриваться именно как числа.
2) соответствующим образом изменить формирование сегодняшней даты (today) не забыв про нолик если число меньше десяти
3) в цикле поиска дней рождений ищем минимальное число (bd[i]), которое больше today
4) на выходе из цикла имеем число ближайшего др. Разобьем полученное др на два числа (месяц и число: см. метод split() для строк), тоже самое сделаем для today. Переведем месяц в колв-во дней прошедших с начала года (здесь нужно не забыть про всякие высокосные года). Сложим переведенные месяца с соответствующими им числами и вычислим разность между полученными суммами. Эта разность и будет искомое кол-во дней.
5) запрограммируем все это.

Всего записей: 228 | Зарегистр. 30-12-2006 | Отправлено: 12:49 25-08-2008 | Исправлено: SAOD, 12:52 25-08-2008
IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
<script>  
var bd = {  
                           'Вася': '4.23',  
                           'Петя': '3.5',  
                           'Миша': '9.7'  
                 }; // формат: месяц.число
var date = new Date();  
var today = date.getMonth()+'.'+(date.getDate()+1);  
for(var i in bd)  
{  
          if(today<bd[i])   document.write('С днем рождения '+i+'!<br>');  
}  
</script>  
 
 
 
попробовал изменить, по-моему даже до сути не добрался

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 13:33 26-08-2008
SAOD

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да до сути тут далековато еще...
 
Во первых не добавили нолик если число < 10 как я вам писал. Соответственно надо не 'Петя': '3.5', а 'Петя': '3.05'.
Далее нолик нужно учесть и при формировании сегодняшнего дня, и зачем вы прибавляете к date.getDate() еденицу когда ее нужно прибавлять к date.getMonth() (иногда очень полезно вывести данные на экран если не уверены что возвращает та или инная ф-ция, например alert(date.getMonth()) тогда поймете, что выдает месяц который на 1 меньше текущего (т.к в JS месяцы считаются с нуля) и именно к нему надо прибавлять 1)). С учетом нолика будет что-то вроде  

Код:
 
var d=date.getDate()+"";
var today = (date.getMonth()+1)+'.'+(d.length==2 ? d : '0'+d);  
 

 
Затем я писал о поиске в цикле минимального числа больше данного, а вы что сделали? Условие if(today==bd[i])   document.write('С днем рождения '+i+'!<br>'); убирать не нужно было, но нужно было добавить еще условие  для поиска того самого минимального числа больше данного. Перед началом цикла объявляете var min=20; Затем в цикле проверяете условие если today<bd[i] и bd[i]<min тогда присваеваем min значение bd[i]. На выходе из цикла в переменной min имеем ближайшее месяц.число если оно есть в этом году иначе там будет 20. От этого дальше можно будет отталкиваться.
Ну а до остальных пунктов вы пока еще не дошли

Всего записей: 228 | Зарегистр. 30-12-2006 | Отправлено: 08:31 27-08-2008 | Исправлено: SAOD, 08:37 27-08-2008
IIoH9TJluBblu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
боюсь не сделаю (( спасибо тем не менее

Всего записей: 124 | Зарегистр. 28-10-2006 | Отправлено: 14:17 28-08-2008
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » поздравление с ДР в html


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.B0ard 2000-2026

LiteCoin: LgY72v35StJhV2xbt8CpxbQ9gFY6jwZ67r

Рейтинг.ru

Рейтинг.ru