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: 13 años, 2 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 )
       {
           
$rest1 = ($rest 3600);
           
$hours = ($rest $rest1) / 3600;

           if( 
$rest1 60 )
           {
               
$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 :)