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



 

Здравствуйте, гость (

| Вход | Регистрация )

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


Хочу поставить Таймер обратного отсчета на сайт, но вот в чем проблема: ставлю на 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


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


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


(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


(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


(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


можно с помощью 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


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

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



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


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


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


Свернуть

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

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Разработка сайтов Joomla Wordpress Opencart
Разработка, верстка, оптимизация веб сайтов.
77 WoWeb 40296 3.9.2023, 16:52
автор: Sawich
Открытая тема (нет новых ответов) [Продам] базы сайтов на CMS Wordpress/Joomla/Drupal/Magento/...
14 phosphoruss 13673 16.8.2023, 15:27
автор: SmmPanelUS
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыТехподдержка сайтов на движках Joomla, Netcat, Opencart
5 54web 4259 22.1.2023, 13:27
автор: kikimora17
Открытая тема (нет новых ответов) Доработка сайта Joomla + VirtuMart
0 Intuit_Design 1170 4.2.2021, 15:05
автор: Intuit_Design
Горячая тема (нет новых ответов) ВНИМАНИЕ: Тема имеет прикрепленные файлыКомплекс услуг по движку Joomla и верстка
61site.ru - Верстаем и делаем сайты под ключ
321 lostprophet 434639 1.7.2020, 12:02
автор: shamil918


 



RSS Текстовая версия Сейчас: 29.3.2024, 3:06
Дизайн