[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Динамическое отображение времени?
Ярослав
<div id="datetime">
<?php echo (strftime(_DATE_FORMAT_LC)); ?>, <?php echo (date("H:i:s",time()))."\n"; ?>
</div>

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




Спустя 18 минут, 48 секунд (14.01.2009 - 18:27) Adamant написал(а):
Если у вас нет в планах обновлять(перезагружать) вашу страницу каждые 1 секунду, то никак. Для таких целей используют jаvаscript. PHP-скрипты выполняются на стороне сервера и для того "чтобы этот скрипт отображал время на страничке динамически" его нужно будет запускать на сервере тоже динамически. Юзер видит в своем браузере html-код который ему отдал сервер, а jаvаscript работает непосредственно "в браузере" юзера и поэтому может выводит динамическую информацию в браузер.
Если уж очень надо то можно ваш php-скрипт вставить через ифрэйм в нужную страницу, но это ужасное извращение. Так что в вашем случае только jаvаscript. Вот один из простых:

Код

<head>
<script type=text/jаvаscript>
function getCurrentTime()
{
 var now = new Date();
 var mySecs = now.getSeconds();
 var curHour = now.getHours();
 var curMin = now.getMinutes();
 var day = now.getDay();
 var date = now.getDate();
 var year = now.getFullYear();
 var month = now.getMonth();
 var days = new Array();
  days[0] = "Sunday";
  days[1] = "Monday";
  days[2] = "Tuesday";
  days[3] = "Wednesday";
  days[4] = "Thursday";
  days[5] = "Friday";
  days[6] = "Saturday";
 var suffix = "AM";
  if(mySecs < 10)
  {
   mySecs = "0" + mySecs;
  }
  if(curMin < 10)
  {
   curMin = "0" + curMin;
  }
  if(curHour == 12 && curMin >= 1)
  {
   suffix = "PM";
  }
  if(curHour == 24 && curMin >= 1)
  {
   curHour-= 12;
   suffix = "AM";
  }
  if(curHour > 12)
  {
   curHour-= 12;
   suffix = "PM";
  }
document.getElementById('time').innerHTML=(days[day] + " " + (month +1) + "/" + date + "/"  + year + " " + curHour + ":" + curMin + ":" + mySecs + " " + suffix);
}
</script>
</head>
<body text=#000000 bgColor=#ffffff onload="setInterval('getCurrentTime()', 1000);">  
 <div id=time>
 </div>
</body>

Спустя 44 минуты, 44 секунды (14.01.2009 - 19:11) Ярослав написал(а):
Спасибо

Спустя 30 минут, 19 секунд (14.01.2009 - 19:42) FatCat написал(а):
ИМХО, проще и лучше использовать часы на флеш.

Спустя 18 минут, 43 секунды (14.01.2009 - 20:00) Adamant написал(а):
Цитата (FatCat @ 14.01.2009 - 23:42)
ИМХО, проще и лучше использовать часы на флеш.

Такой вариант тоже хорош (по сути он и красивее будет). Но есть и такой нюанс - в современных браузерах есть возможность "отключать" флэш анимацию. Которую при желании юзер может просмотреть (кликнув на "значек" отключенной флэшки). А юзеров отключающих яваскрипт в браузере думается мне меньше. Хотя статистику я не знаю так что ваш вариант может быть и будет оптимальнее.
user posted image

Спустя 5 часов, 2 минуты, 25 секунд (15.01.2009 - 01:03) Ярослав написал(а):
Первый скрипт так и не запустил, а вот этот працюе

<form action="" name="clock">
<input type="text" name="full_time" style="border: none; background: #fff; width: 250px;" />
</form>

<script type="text/jаvаscript">
function fulltime()
{
var time = new Date();
document.clock.full_time.value = time.toLocaleString();
setTimeout('fulltime()', 500)
}

fulltime();
</script>

Всем спасибо!
Если тема не нужна можно удалить.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.