Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.04.2011, 21:58   #1
ilushka2306
Пользователь
 
Регистрация: 19.06.2010
Сообщений: 48
По умолчанию "Ходящие" часы на php

на php можно написать, чтобы отображалось время
например:
Код:
<?php
echo date("H:i:s");
?>
время обновляется только при обновлении страницы, а можно ли как-нибудь сделать так, чтобы время само изменялось?
ilushka2306 вне форума Ответить с цитированием
Старый 23.04.2011, 22:49   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Это можно сделать на Яваскрипте или посылать запрос к серверу, что хуже.
motorway вне форума Ответить с цитированием
Старый 23.04.2011, 23:44   #3
xDyPx
Форумчанин
 
Аватар для xDyPx
 
Регистрация: 21.01.2009
Сообщений: 148
По умолчанию

Это в <head>...</head> засунуть:
Код:
<script language="JavaScript">
function vrem()
{
ndata = new Date();
hours = ndata.getHours();
mins = ndata.getMinutes();
secs = ndata.getSeconds();
tochki='<span style="opacity: 0.2;">:</span>';
if(mins<10) {mins="0"+mins}
if(secs<10) {secs ="0"+secs}
if (secs%2==0) {document.getElementById("vremya").innerHTML=hours+":"+mins;} else {document.getElementById("vremya").innerHTML=hours+tochki+mins;}
setTimeout("vrem()", 1000);
}
</script>
к тегу <body> подписать onload="vrem()" (чтобы как-то так было: <body onload="vrem()">)

и в нужном месте страницы разместить <div id="vremya">00:00</div>
МОЙ САЙТ
Компьютер позволяет решать все те проблемы, которые до появления компьютера не существовали.
xDyPx вне форума Ответить с цитированием
Старый 09.10.2018, 13:16   #4
intersk
Пользователь
 
Регистрация: 07.09.2014
Сообщений: 14
По умолчанию

пытаюсь создать шорткод с часами - не работает (
Код:
<?php

add_shortcode ( 'clock', 'my_shortcode_clock' );

function my_shortcode_clock ( $attr, $content = null ) {

	$Hour = date("H");
	$Minute = date("i");
	$Second = date("s");

echo <<<EOT
<html>
    <head></head>
        <body>
			<form name="d"><p><strong>Точное время:</strong><input type="text" size="8" name="d2"></p></form>
			
			<script>var second=<?php echo $Second ?>; var minute=<?php echo $Minute ?>; var hour=<?php echo $Hour ?>; document.d.d2.value='0' function display(){ second++; if (second>=60){ second=0 minute++ } if (minute>=60){ minute=0 hour++ } if (hour>23){ hour=0 minute=0 second=0 } var cHour = hour; var cMinute = minute; var cSecond = second if (second < 10) cSecond = "0" + second; if (minute < 10) cMinute = "0" + minute; if (hour < 10) cHour = "0" + hour; document.d.d2.value=cHour+":"+cMinute+":"+cSecond setTimeout("display()",1000) } display()</script>
		</body>
	</html>
EOT;
}
?>
intersk вне форума Ответить с цитированием
Старый 09.10.2018, 13:53   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от intersk Посмотреть сообщение
пытаюсь создать шорткод с часами - не работает (
во-первых, Вы с основами знакомы, где, как и когда работает PHP, JS и т.д. ?
Это знаете — Самые основы. Как работает PHP. ?


Цитата:
Сообщение от intersk Посмотреть сообщение
создать шорткод с часами
тогда, во-вторых, простите меня за неграмотность, но что такое "шорткод"?
и как он не работает?

м.б. нужно что-то типа такого:
Код:
<?php
$Hour = date("H");
$Minute = date("i");
$Second = date("s");
?>
<html>
<head></head>
<body>
<form name="d"><p><strong>Точное время:</strong><input type="text" size="8" name="d2"></p></form>
		
<script>var second=<?php echo $Second ?>; var minute=<?php echo $Minute ?>; var hour=<?php echo $Hour ?>; 
document.d.d2.value='0'; 
function display(){ second++; 
if (second>=60){ second=0; minute++ } 
  if (minute>=60){ minute=0; hour++ } 
   if (hour>23){ hour=0; minute=0; second=0 } 
  var cHour = hour; 
  var cMinute = minute; 
  var cSecond = second; 
  if (second < 10) cSecond = "0" + second; 
  if (minute < 10) cMinute = "0" + minute; 
  if (hour < 10) cHour = "0" + hour; 
  document.d.d2.value=cHour+":"+cMinute+":"+cSecond;
  setTimeout("display()",1000) 
} 
display()
</script>
</body>
</html>
сразу говорю - код этот ужасный, я к нему отношения никакого не имею, все претензии к тому, кто его написал!!

Последний раз редактировалось Serge_Bliznykov; 09.10.2018 в 14:08.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 09.10.2018, 17:26   #6
intersk
Пользователь
 
Регистрация: 07.09.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Вы с основами знакомы, где, как и когда работает PHP, JS и т.д. ?
с основами - да
Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
но что такое "шорткод"?
не пояснил - у меня WordPress. Создается шорткод через функцию:
add_shortcode ( 'liveclock', 'my_shortcode_liveclock' );
function my_shortcode_liveclock ( $attr, $content = null ) {.........}

Вы привели код (как мне его подключить к сайту в месте виджета?) - мне его надо встроить в WordPress как шорткод
intersk вне форума Ответить с цитированием
Старый 09.10.2018, 17:52   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от intersk Посмотреть сообщение
Вы привели код (как мне его подключить к сайту в месте виджета?) - мне его надо встроить в WordPress как шорткод
ну, это Вы лучше меня должны уметь

я бы Вам предложил Вам вставить в functions.php (или куда там надо) такой код:
Код:
<?php

function my_shortcode_liveclock( $attr, $content = null ) {
$Hour = date("H");
$Minute = date("i");
$Second = date("s");
echo "<html>
<head></head>
<body>
<form name=\"d\"><p><strong>Точное время: </strong><input type=\"text\" size=\"8\" name=\"d2\"></p></form>
<script>var second=$Second; var minute=$Minute; var hour=$Hour; 
document.d.d2.value='0'; 
function display(){ second++; 
if (second>=60){ second=0; minute++ } 
  if (minute>=60){ minute=0; hour++ } 
   if (hour>23){ hour=0; minute=0; second=0 } 
  var cHour = hour; 
  var cMinute = minute; 
  var cSecond = second; 
  if (second < 10) cSecond = '0' + second; 
  if (minute < 10) cMinute = '0' + minute; 
  if (hour < 10) cHour = '0' + hour; 
  document.d.d2.value=cHour+':'+cMinute+':'+cSecond;
  setTimeout('display()',1000) 
} 
display()
</script>
</body>
</html>";
}

?>
но а как Вы его будете добавлять и использовать - думайте сами.
Кроме того, совсем не понимаю, зачем Вам подобный шоркод, когда Вы там описываете ЦЕЛИКОМ HTML страницу. Неужели этот код в WP нельзя в какой-нибудь шаблон страницы вставить? Впрочем, это Вам виднее, что и куда вставлять и для чего это вообще нужно.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 09.10.2018, 18:48   #8
intersk
Пользователь
 
Регистрация: 07.09.2014
Сообщений: 14
По умолчанию

вот такой получился рабочий код, если можете подкорректируйте
и кстати время показывает на 3 часа меньше
Код:
<?php
/**
 * Created by jurvrn.
 * User: jurvrn
 */

/**
 * Plugin Name: my-shortcode-liveclock
 */

add_shortcode ( 'liveclock', 'my_shortcode_lc' );

function my_shortcode_lc ( $attr, $content = null ) {
   
$Hour = date("H");
$Minute = date("i");
$Second = date("s");
	
	echo "<html>
	<head></head>
	<body>
	<form name=\"d\"><p><strong>Точное время: </strong><input type=\"text\" size=\"8\" name=\"d2\"></p></form>
	<script>var second=$Second; var minute=$Minute; var hour=$Hour; 
	document.d.d2.value='0'; 
	function display(){ second++; 
	if (second>=60){ second=0; minute++ } 
	  if (minute>=60){ minute=0; hour++ } 
	   if (hour>23){ hour=0; minute=0; second=0 } 
	  var cHour = hour; 
	  var cMinute = minute; 
	  var cSecond = second; 
	  if (second < 10) cSecond = '0' + second; 
	  if (minute < 10) cMinute = '0' + minute; 
	  if (hour < 10) cHour = '0' + hour; 
	  document.d.d2.value=cHour+':'+cMinute+':'+cSecond;
	  setTimeout('display()',1000) 
	} 
	display()
	</script>
	</body>
	</html>";
}

Последний раз редактировалось intersk; 09.10.2018 в 19:02.
intersk вне форума Ответить с цитированием
Старый 09.10.2018, 18:50   #9
intersk
Пользователь
 
Регистрация: 07.09.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Кроме того, совсем не понимаю, зачем Вам подобный шоркод, когда Вы там описываете ЦЕЛИКОМ HTML страницу. Неужели этот код в WP нельзя в какой-нибудь шаблон страницы вставить? Впрочем, это Вам виднее, что и куда вставлять и для чего это вообще нужно.
не хочу вставлять коды в шаблоны страниц, более нравятся шорткоды - меньше места
intersk вне форума Ответить с цитированием
Старый 09.10.2018, 22:08   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от intersk Посмотреть сообщение
и кстати время показывает на 3 часа меньше
установите корректную временную зону в PHP, будет показывать то, что Вы ожидаете.

например, для Москвы нужно поставить в коде (или в настройках PHP.ini):
Код:
date_default_timezone_set('Europe/Moscow');
или
Код:
date_default_timezone_set('Etc/GMT-3');
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как написать программу "часы" JESSIE1000005 Помощь студентам 3 03.11.2011 14:59
Что происходит на странице с такие JS: <script src="cmp.php?complete&amp;" id="las..." ...>? TwiX JavaScript, Ajax 0 05.02.2010 17:38
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
PHP(или другой язык): Получить все пары "имя" -> "значение" переданные методом POST KingOfNothing PHP 4 12.04.2009 14:06