X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Таймер обратного отсчета в joomla
stops2012
stops2012
Topic Starter сообщение 2.11.2011, 20:24; Ответить: stops2012
Сообщение #1


Бывалый
****

Группа: User
Сообщений: 278
Регистрация: 20.6.2011
Из: Первая столица
Поблагодарили: 52 раза
Репутация:   16  


Хочу поставить Таймер обратного отсчета на сайт, но вот в чем проблема: ставлю на 1-ый сайт и все работает как и надо, ставлю на 2-ой вовсе ничего не работает. Оба сайте на одном хостинге, у обоих cms joomla.
С чем это может быть связанно?
Так на 1-м сайте

а так на 2-м


Сам таймер
PHP


Развернуть/Свернуть



<?php
// we will be sending Javascript codes, remember...
header('Content-Type: text/javascript');

// select the timezone for your countdown
$timezone = trim($_GET['timezone']);
putenv("TZ=$timezone");

// Counting down to New Year's on 2020
$countdown_to = trim($_GET['countto']); // 24-Hour Format: YYYY-MM-DD HH:MM:SS"

// Getting the current time
$count_from = date("Y-m-d H:i:s"); // current time -- NO NEED TO CHANGE

// Date difference function. Will be using below
function datediff($interval, $datefrom, $dateto, $using_timestamps = false) {
  /*
    $interval can be:
    yyyy - Number of full years
    q - Number of full quarters
    m - Number of full months
    y - Difference between day numbers
      (eg 1st Jan 2004 is "1", the first day. 2nd Feb 2003 is "33". The datediff is "-32".)
    d - Number of full days
    w - Number of full weekdays
    ww - Number of full weeks
    h - Number of full hours
    n - Number of full minutes
    s - Number of full seconds (default)
  */
  
  if (!$using_timestamps) {
    $datefrom = strtotime($datefrom, 0);
    $dateto = strtotime($dateto, 0);
  }
  $difference = $dateto - $datefrom; // Difference in seconds
  
  switch($interval) {
  
    case 'yyyy': // Number of full years

      $years_difference = floor($difference / 31536000);
      if (mktime(date("H", $datefrom), date("i", $datefrom), date("s", $datefrom), date("n", $datefrom), date("j", $datefrom), date("Y", $datefrom)+$years_difference) > $dateto) {
        $years_difference--;
      }
      if (mktime(date("H", $dateto), date("i", $dateto), date("s", $dateto), date("n", $dateto), date("j", $dateto), date("Y", $dateto)-($years_difference+1)) > $datefrom) {
        $years_difference++;
      }
      $datediff = $years_difference;
      break;

    case "q": // Number of full quarters

      $quarters_difference = floor($difference / 8035200);
      while (mktime(date("H", $datefrom), date("i", $datefrom), date("s", $datefrom), date("n", $datefrom)+($quarters_difference*3), date("j", $dateto), date("Y", $datefrom)) < $dateto) {
        $months_difference++;
      }
      $quarters_difference--;
      $datediff = $quarters_difference;
      break;

    case "m": // Number of full months

      $months_difference = floor($difference / 2678400);
      while (mktime(date("H", $datefrom), date("i", $datefrom), date("s", $datefrom), date("n", $datefrom)+($months_difference), date("j", $dateto), date("Y", $datefrom)) < $dateto) {
        $months_difference++;
      }
      $months_difference--;
      $datediff = $months_difference;
      break;

    case 'y': // Difference between day numbers

      $datediff = date("z", $dateto) - date("z", $datefrom);
      break;

    case "d": // Number of full days

      $datediff = floor($difference / 86400);
      break;

    case "w": // Number of full weekdays

      $days_difference = floor($difference / 86400);
      $weeks_difference = floor($days_difference / 7); // Complete weeks
      $first_day = date("w", $datefrom);
      $days_remainder = floor($days_difference % 7);
      $odd_days = $first_day + $days_remainder; // Do we have a Saturday or Sunday in the remainder?
      if ($odd_days > 7) { // Sunday
        $days_remainder--;
      }
      if ($odd_days > 6) { // Saturday
        $days_remainder--;
      }
      $datediff = ($weeks_difference * 5) + $days_remainder;
      break;

    case "ww": // Number of full weeks

      $datediff = floor($difference / 604800);
      break;

    case "h": // Number of full hours

      $datediff = floor($difference / 3600);
      break;

    case "n": // Number of full minutes

      $datediff = floor($difference / 60);
      break;

    default: // Number of full seconds (default)

      $datediff = $difference;
      break;
  }    

  return $datediff;
}

// getting Date difference in SECONDS
$diff = datediff("s", $count_from, $countdown_to);
?>

// Here’s where the Javascript starts
countdown = <?=$diff?>;

// Converting date difference from seconds to actual time
function convert_to_time(secs)
{
    secs = parseInt(secs);    
    hh = secs / 3600;    
    hh = parseInt(hh);    
    mmt = secs - (hh * 3600);    
    mm = mmt / 60;    
    mm = parseInt(mm);    
    ss = mmt - (mm * 60);    
        
    if (hh > 23)    
    {    
       dd = hh / 24;    
       dd = parseInt(dd);    
       hh = hh - (dd * 24);    
    } else { dd = 0; }    
        
    if (ss < 10) { ss = "0"+ss; }    
    if (mm < 10) { mm = "0"+mm; }    
    if (hh < 10) { hh = "0"+hh; }    
    if (dd == 0) { return (hh+":"+mm+":"+ss); }    
    else {    
        if (dd > 1) { return (dd+" дней "+hh+":"+mm+":"+ss); }
        else { return (dd+" день "+hh+":"+mm+":"+ss); }
    }    
}

// Our function that will do the actual countdown
function do_cd()
{
    if (countdown < 0)    
    {     
        <?php
            if(strtolower(trim($_GET['do'])) == 'r' )
            {
        ?>
        // redirect web page
        document.location.href = "<?=$_GET['data']?>";
        <?php } ?>

        <?php
            if(strtolower(trim($_GET['do'])) == 't' )
            {
        ?>
        // change text
        document.getElementById('cd').innerHTML = "<?=$_GET['data']?>";
        <?php } ?>

    }    
    else    
    {    
        document.getElementById('cd').innerHTML = convert_to_time(countdown);
        setTimeout('do_cd()', 1000);
    }    
    countdown = countdown - 1;    
}

document.write("<div id='cd'></div>\n");

do_cd();

<? exit(); ?>





+HTML


Развернуть/Свернуть



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>До ЧАСА Х осталось...</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
<!--
#cd {
    margin: auto;
    height: 50px;
    width: 450px;
    font-family: "Courier New", Courier, mono;
    font-size: 24pt;
    color: #000;
    text-align: center;
    font-weight: bold;
    background-image: url(back.jpg);
    vertical-align: middle;
}
-->
</style>
</head>

<body>
<h1 align="center"> До ЧАСА X осталось  </h1>
<script language="JavaScript" SRC="countdown.php?timezone=Asia/Yekaterinburg&countto=2015-01-01 12:00:00&do=r&data=http://www.maultalk.com"></SCRIPT>
<!--Тайм-зона http://www.php.net/manual/en/timezones.php
do=t&data= - текст, который будет написан вместо таймера по наступлению часа Х
do=r&data= Когда наступит час X, отправим посетителя на какую-нибудь страницу, например : http://www.maultalk.com
-->
<p> </p>
<a></a>
</body>
</html>






Сообщение отредактировал stops2012 - 2.11.2011, 20:25


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Armal
Armal
сообщение 2.11.2011, 20:39; Ответить: Armal
Сообщение #2


Участник
***

Группа: User
Сообщений: 222
Регистрация: 16.7.2008
Из: Москва
Поблагодарили: 44 раза
Репутация:   -1  


На сегодняшний день у Джумлы есть 4 версии 1, 1.5, 1.6, 1.7
Возможно, что стоят разные версии и идет несовместимость расширения с какой то из версий.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
stops2012
stops2012
Topic Starter сообщение 2.11.2011, 21:16; Ответить: stops2012
Сообщение #3


Бывалый
****

Группа: User
Сообщений: 278
Регистрация: 20.6.2011
Из: Первая столица
Поблагодарили: 52 раза
Репутация:   16  


(Armal @ 2.11.2011, 19:39) *
На сегодняшний день у Джумлы есть 4 версии 1, 1.5, 1.6, 1.7
Возможно, что стоят разные версии и идет несовместимость расширения с какой то из версий.

На 1-м сайте Версия 1.5.15
На 2-м сайте Версия 1.5.24


Хм, вот что получается .. на 1-м сайте в результате тоже не работает, вернее работает, но не так как. Вот посмотрите кому не трудно http://vksecrets.pp.ua/
Видно, что таймер работает, но при переходе на страницу (кликаем по заголовку) уже не работает!
Что может быть, чтобы на главной работал, а непосредственно на странице нет? ohmy.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
BelCoder
BelCoder
сообщение 2.11.2011, 21:28; Ответить: BelCoder
Сообщение #4


клоновод
**


Группа: Banned
Сообщений: 63
Регистрация: 22.5.2011
Поблагодарили: 26 раз
Репутация:   6  


(stops2012 @ 2.11.2011, 20:16) *
Что может быть, чтобы на главной работал, а непосредственно на странице нет?

SRC="countdown.php?tim...

Заменить
SRC="/countdown.php?tim...


--------------------
клоновод


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
stops2012
stops2012
Topic Starter сообщение 2.11.2011, 21:58; Ответить: stops2012
Сообщение #5


Бывалый
****

Группа: User
Сообщений: 278
Регистрация: 20.6.2011
Из: Первая столица
Поблагодарили: 52 раза
Репутация:   16  


(BelCoder @ 2.11.2011, 20:28) *

Фух, спасибо вам огромное! evrika.gif

Это это же .. аа, дурацкая / , помучила меня rjunimagu.gif




И ещё один маленький вопрос blush.gif
Там фон вот, изображение back.jpg. Как его сделать кликабельным? Это ведь CSS, но прописан между тегами <head></head>
Есть какой то обход, чтобы можно добавить ссылку к изображению?
background-image: url(back.jpg);


Сообщение отредактировал stops2012 - 2.11.2011, 21:58


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
BelCoder
BelCoder
сообщение 2.11.2011, 22:09; Ответить: BelCoder
Сообщение #6


клоновод
**


Группа: Banned
Сообщений: 63
Регистрация: 22.5.2011
Поблагодарили: 26 раз
Репутация:   6  


можно с помощью JS, а можно в php скрипте заменить
document.write("<div id='cd'></div>\n");

на
document.write("<a href="ссылка"><div id='cd'></div></a>\n");

не красиво конечно, зато работает)


--------------------
клоновод


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
stops2012
stops2012
Topic Starter сообщение 3.11.2011, 0:55; Ответить: stops2012
Сообщение #7


Бывалый
****

Группа: User
Сообщений: 278
Регистрация: 20.6.2011
Из: Первая столица
Поблагодарили: 52 раза
Репутация:   16  


BelCoder, и ещё раз вам большое спасибо за помощь!

Облазил несколько специализирующихся форумом, нигде не смогли помочь! А на SEO форуме помогли, удивительно)



Ещё вопрос по данному таймеру, помогите пожалуйста! blush.gif Нужно, что бы по истечению времени все следы от таймера просто пропадали..
Вот так сделал, таймер убирается, но фон(изображение) остается, можно ли как-то, чтобы и он исчезал?
<script language="JavaScript" SRC="/countdown.php?timezone=Asia/Yekaterinburg&countto=201-10-03 23:48:00&do=delete cd</SCRIPT>


Сообщение отредактировал stops2012 - 3.11.2011, 0:56


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Вёрстка, натяжка на WordPress, Joomla, качественно, доступно
53 WhiteIce 23730 Вчера, 19:41
автор: WhiteIce
Горячая тема (нет новых ответов) Разработка сайтов Joomla Wordpress Opencart
Разработка, верстка, оптимизация веб сайтов.
48 WoWeb 7306 Вчера, 13:37
автор: serg5777
Открытая тема (нет новых ответов) Адаптивная вёрстка и натяжка на Wordpress, DLE, Joomla и др. Создание мобильных версий.
Хороший код с оптимизацией по скорости. Сайты и лендинги "под ключ
11 Nell 1082 11.12.2017, 15:21
автор: Nell
Горячая тема (нет новых ответов) Услуги по CMS Wordpress, DLE, Joomla!. Правки, ремонт, настройка.
Редактирование и правки. Низкие цены.
142 contex1 65049 5.12.2017, 12:13
автор: contex1
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыСоздание недорогих сайтов под ключ на CMS Joomla!
Качественное и недорогое создание сайтов на CMS Joomla
111 LoraDi 43349 23.11.2017, 6:15
автор: igorm54


 



RSS Текстовая версия Сейчас: 13.12.2017, 6:11
Дизайн