Ver Mensaje Individual
  #5 (permalink)  
Antiguo 04/03/2011, 08:34
kechu
 
Fecha de Ingreso: febrero-2011
Ubicación: define ('Ubicación', 'Mi_casa');
Mensajes: 21
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Necesito un contador de minutos y segundos

Hola, perdón por el retraso, tenía cosas que hacer (estudiar para el instituto, que tenía muchos exámenes). Creo que ya tengo la solución.

Primero:
Crea un archivo PHP (si no sabes lo que es, métete [URL="http://es.wikipedia.org/wiki/PHP"]aquí[/URL] )

Segundo:

En su contenido pega este código :

Código PHP:
<?php
$dateFrom 
= date("d-m-Y H:i:s", strtotime('now'));
$dateTo = "XX-XX-XXXX XX:XX:XX";//(Dias-meses-años Horas:minutos:segundos)

$diffd = getDateDifference($dateFrom, $dateTo, 'd');
$diffh = getDateDifference($dateFrom, $dateTo, 'h');
$diffm = getDateDifference($dateFrom, $dateTo, 'm');
$diffs = getDateDifference($dateFrom, $dateTo, 's');
$diffa = getDateDifference($dateFrom, $dateTo, 'a');



echo 
$diffd . ' Dias.<br />';
echo 
$diffh . ' Horas.<br />';
echo 
$diffm . ' Minutos.<br />';
echo 
$diffs . ' Segundos.<br />';

$diffa['days'] = abs($diffa['days']);
$diffa['hours'] = abs($diffa['hours']);
$diffa['minutes'] = abs($diffa['minutes']);
$diffa['seconds'] = abs($diffa['seconds']);
echo 
'<br />Faltan ' . $diffa['days'] . ' dias, ' . $diffa['hours'] . ' horas, ' . $diffa['minutes'] . ' minutos y ' . $diffa['seconds'] . ' segundos para lo que sea (acabar el partido)<br>';

?>


<?php

function getDateDifference($dateFrom, $dateTo, $unit = 'd')
{
   
$difference = null;

   
$dateFromElements = split(' ', $dateFrom);
   
$dateToElements = split(' ', $dateTo);

   
$dateFromDateElements = split('-', $dateFromElements[0]);
   
$dateFromTimeElements = split(':', $dateFromElements[1]);
   
$dateToDateElements = split('-', $dateToElements[0]);
   
$dateToTimeElements = split(':', $dateToElements[1]);

   
//Unix timestamp para ambas fechas.

   
$date1 = mktime($dateFromTimeElements[0], $dateFromTimeElements[1], $dateFromTimeElements[2], $dateFromDateElements[1], $dateFromDateElements[0], $dateFromDateElements[2]);
   
$date2 = mktime($dateToTimeElements[0], $dateToTimeElements[1], $dateToTimeElements[2], $dateToDateElements[1], $dateToDateElements[0], $dateToDateElements[2]);



   
$diff = $date1 - $date2;

   
$days = 0;
   
$hours = 0;
   
$minutes = 0;
   
$seconds = 0;

   if (
$diff % 86400 <= 0)  //Hay 86400 segundos en un dia.
   
{
       
$days = $diff / 86400;
   }

   if(
$diff % 86400 > 0)
   {
       
$rest = ($diff % 86400);
       
$days = ($diff - $rest) / 86400;

       if( 
$rest % 3600 > 0 )
       {
           
$rest1 = ($rest % 3600);
           
$hours = ($rest - $rest1) / 3600;

           if( 
$rest1 % 60 > 0 )
           {
               
$rest2 = ($rest1 % 60);
               
$minutes = ($rest1 - $rest2) / 60;
               
$seconds = $rest2;
           }
           else
           {
               
$minutes = $rest1 / 60;
           }
       }
       else
       {
           
$hours = $rest / 3600;
       }
   }

   switch(
$unit)
   {
       case 
'd':
       case 
'D':

           
$partialDays = 0;

           
$partialDays += ($seconds / 86400);
           
$partialDays += ($minutes / 1440);
           
$partialDays += ($hours / 24);

           
$difference = $days + $partialDays;

           break;

       case 
'h':
       case 
'H':

           
$partialHours = 0;

           
$partialHours += ($seconds / 3600);
           
$partialHours += ($minutes / 60);

           
$difference = $hours + ($days * 24) + $partialHours;

           break;

       case 
'm':
       case 
'M':

           
$partialMinutes = 0;

           
$partialMinutes += ($seconds / 60);

           
$difference = $minutes + ($days * 1440) + ($hours * 60) + $partialMinutes;

           break;

       case 
's':
       case 
'S':

           
$difference = $seconds + ($days * 86400) + ($hours * 3600) + ($minutes * 60);

           break;

       case 
'a':
       case 
'A':

           
$difference = array (
               
"days" => $days,
               
"hours" => $hours,
               
"minutes" => $minutes,
               
"seconds" => $seconds
           
);

           break;
   }

   return 
$difference;
}
?>
Bueno es muy fácil como he explicado cambias las 'X' por las fechas y ya esta.
Ah, una cosa al principio habra un cuenta atras hasta la hora escrita, a partir de allí, irá creciendo hasta que la modifiques o quites (asi llegara a 45 min).
Tambien puedes hacer un reload de solo el parrafo para que vaya actualizandose cada X tiempo(con javascript).
Bueno y por la demora te dejo el codigo de un reloj javascript.

Código Javascript:
Ver original
  1. <script language="javascript">
  2. // Muestra la hora y la fecha, actualizandas cada segundo, en una caja de texto
  3.  
  4.  
  5. //Muestra segundos
  6. function muestraSeg()
  7.   {
  8.   hoyseg=new Date();
  9.   document.formi.seg.value=hoyseg.getSeconds();
  10.   setTimeout("muestraSeg()",1000);
  11.   }
  12.  
  13. //Muestra minutos
  14. function muestraMin()
  15.   {
  16.   hoymin=new Date();
  17.   document.formi.min.value=hoymin.getMinutes();
  18.   setTimeout("muestraMin()",1000);
  19.   }
  20.  
  21. //Muestra horas
  22. function muestraHour()
  23.   {
  24.   hoyhour=new Date();
  25.   document.formi.hour.value=hoyhour.getHours();
  26.   setTimeout("muestraHour()",1000);
  27.   }
  28.  
  29. //Muestra dia
  30. function muestraDay()
  31.   {
  32.   hoyday=new Date();
  33.   document.formi.day.value=hoyday.getDate();
  34.   setTimeout("muestraDay()",1000);
  35.   }
  36.  
  37. //Muestra mes
  38. function muestraMon()
  39.   {
  40.   hoymonth=new Date();
  41.   document.formi.month.value=hoymonth.getMonth();
  42.  
  43.   if(document.formi.month.value==0){
  44.    document.formi.month.value="Enero"
  45.   }else if(document.formi.month.value==1){
  46.    document.formi.month.value="Febrero"
  47.   }else if(document.formi.month.value==2){
  48.    document.formi.month.value="Marzo"
  49.   }else if(document.formi.month.value==3){
  50.    document.formi.month.value="Abril"
  51.   }else if(document.formi.month.value==4){
  52.    document.formi.month.value="Mayo"
  53.   }else if(document.formi.month.value==5){
  54.    document.formi.month.value="Junio"
  55.   }else if(document.formi.month.value==6){
  56.    document.formi.month.value="Julio"
  57.   }else if(document.formi.month.value==7){
  58.    document.formi.month.value="Agosto"
  59.   }else if(document.formi.month.value==8){
  60.    document.formi.month.value="Septiembre"
  61.   }else if(document.formi.month.value==9){
  62.    document.formi.month.value="Octubre"
  63.   }else if(document.formi.month.value==10){
  64.    document.formi.month.value="Noviembre"
  65.   }else{
  66.    document.formi.month.value="Diciembre"
  67.   }
  68.  
  69.   setTimeout("muestraMon()",1000);
  70.   }
  71.  
  72. //Muestra semana
  73. function muestraSem()
  74.   {
  75.   hoysem=new Date();
  76.   document.formi.sem.value=hoysem.getDay();
  77.  
  78.   if(document.formi.sem.value==0){
  79.    document.formi.sem.value="Domingo"
  80.   }else if(document.formi.sem.value==1){
  81.    document.formi.sem.value="Lunes"
  82.   }else if(document.formi.sem.value==2){
  83.    document.formi.sem.value="Martes"
  84.   }else if(document.formi.sem.value==3){
  85.    document.formi.sem.value="Miercoles"
  86.   }else if(document.formi.sem.value==4){
  87.    document.formi.sem.value="Jueves"
  88.   }else if(document.formi.sem.value==5){
  89.    document.formi.sem.value="Viernes"
  90.   }else{
  91.    document.formi.sem.value="Sabado"
  92.   }
  93.   setTimeout("muestraSem()",1000);
  94.   }
  95.  
  96. //Muestra ano
  97. function muestraYear()
  98.   {
  99.   hoyyear=new Date();
  100.   document.formi.year.value=hoyyear.getFullYear();
  101.  
  102.   if ((document.formi.hour.value==0)&&(document.formi.min.value==0)&&(document.formi.seg.value==0)&&(document.formi.day.value==1)&&(document.formi.month.value=="Enero"))
  103.     {
  104.     alert("Feliz ano " + document.formi.year.value);
  105.     return true;
  106.     }
  107.   setTimeout("muestraYear()",1000);
  108.   }
  109.  
  110.     </script>
  111.  
  112.  
  113.  
  114. <!-- Muestra el formulario con la hora y la fecha -->
  115. <FORM name="formi">
  116. <P align="right">Fecha:
  117. <INPUT type="text" name="sem" size=8> ,
  118. <INPUT type="text" name="day" size=1> de
  119. <INPUT type="text" name="month" size=9> de
  120. <INPUT type="text" name="year" size=3>&nbsp;&nbsp;&nbsp; Reloj:
  121. <INPUT type="text" name="hour" size=1> :
  122. <INPUT type="text" name="min" size=1> :
  123. <INPUT type="text" name="seg" size=1>&nbsp;&nbsp; </P>
  124.  
  125. <SCRIPT language="javascript">
  126. muestraSeg();
  127. muestraMin();
  128. muestraHour();
  129.  
  130. muestraSem();
  131. muestraDay();
  132. muestraMon();
  133. muestraYear();
  134. </SCRIPT>
  135. </FORM>

Venga ya termine xD
Saludos!!

P.D: Haz uso del karma si quieres agradecer :)