Foros del Web » Programando para Internet » PHP »

¿Quien me ayuda con fechas? PLIS!!

Estas en el tema de ¿Quien me ayuda con fechas? PLIS!! en el foro de PHP en Foros del Web. Estimados: Necesito que por favor alguien me ayude...tengo un campo datetime en MySql para un fixture de futbol y resulta que anda perfecto. Tengo el ...
  #1 (permalink)  
Antiguo 18/11/2008, 18:24
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
¿Quien me ayuda con fechas? PLIS!!

Estimados:

Necesito que por favor alguien me ayude...tengo un campo datetime en MySql para un fixture de futbol y resulta que anda perfecto. Tengo el siguiente codigo:
Código PHP:
      <?
      
include("../conexion.php");
$result=mysql_db_query("$db""select * from mundial_primerafase where fecha >= curdate() order by fecha asc") or die(mysql_error());
while (
$row=mysql_fetch_array($result))

      if(
date("d/m/Y"strtotime($row["fecha"])) !== $fecha_anterior)
      {
      echo 
date("d/m/Y"strtotime($row["fecha"])).'<br>';
      
$fecha_anterior=date("d/m/Y"strtotime($row["fecha"]));
      }
      
?>
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">&bull; <?=date("H:i"strtotime($row["fecha"]));?> :: <?=$row["local"];?> v/s <?=$row["visita"];?></font><br><?
 
}
 
mysql_free_result($result);
 
?>
Que me imprime lo siguiente:
19/11/2008
• 12:00 :: China v/s Argentina
• 15:00 :: Francia v/s EEUU
• 15:00 :: Nueva Zelanda v/s Nigeria
• 21:00 :: Chile v/s Inglaterra
20/11/2008
• 16:00 :: Alemania v/s Japon
• 16:00 :: Mexico v/s Noruega
• 19:00 :: Canada v/s Congo
• 19:00 :: Brasil v/s Korea
22/11/2008
• 12:00 :: EEUU v/s Argentina
• 15:00 :: China v/s Francia
• 18:00 :: Nigeria v/s Inglaterra
• 21:00 :: Chile v/s Nueva Zelanda

Y mas fechas para abajo.

Como veran, se ven las fechas mediante un IF y despues solo las horas. Lo que necesito saber es como lo puedo hacer para mostrar solo UNA fecha...es decir, q solo aparezca la primera fecha mas proxima a la actual pero con todas sus horas.

Gracias
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
  #2 (permalink)  
Antiguo 18/11/2008, 20:18
Avatar de cleek  
Fecha de Ingreso: diciembre-2006
Ubicación: Atras del cocodrilo
Mensajes: 122
Antigüedad: 17 años, 4 meses
Puntos: 1
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Sería algo así en una sola sentencia.


SELECT * FROM (SELECT fecha FROM mundial_primerafase GROUP BY fecha ORDER BY fecha ASC LIMIT 1) as T LEFT INNER JOIN mundial_primerafase ON T.fecha = mundial_primerafase.fecha ORDER BY fecha ASC;

No aseguro que esté bien porque lo voy haciendo de rápido. De cualquier modo, si no funciona, sería muy util que pusieras un sql dump de tus tablas para ver como están puestas.

Saludos
__________________
:: nocturno ::
inGenia soluciones
  #3 (permalink)  
Antiguo 19/11/2008, 08:15
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

No entiendo el codigo :$
Ni menos como imprimirlo...lo cambie por mi select textualmente y me salio este error:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INNER JOIN mundial_primerafase ON T.fecha = mundial_primerafase.fecha ORDER BY f' at line 1
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
  #4 (permalink)  
Antiguo 19/11/2008, 09:05
Avatar de cleek  
Fecha de Ingreso: diciembre-2006
Ubicación: Atras del cocodrilo
Mensajes: 122
Antigüedad: 17 años, 4 meses
Puntos: 1
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Puedes poner la descripción de la tabla (campos y tipos) por favor, eso sería muy útil.
__________________
:: nocturno ::
inGenia soluciones
  #5 (permalink)  
Antiguo 19/11/2008, 09:24
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Y porque no tratas cambiando donde sale esto:
Código php:
Ver original
  1. "select * from mundial_primerafase where fecha >= curdate() order by fecha asc"
Por esto:
Código php:
Ver original
  1. "select * from mundial_primerafase where fecha = curdate() order by fecha asc"

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #6 (permalink)  
Antiguo 19/11/2008, 12:01
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Te envio la informacion de la tabla:

DROP TABLE IF EXISTS `mundial_primerafase`;
CREATE TABLE `mundial_primerafase` (
`local` varchar(250) NOT NULL default '',
`visita` varchar(250) NOT NULL default '',
`goles_local` varchar(11) NOT NULL default '',
`goles_visita` varchar(11) NOT NULL default '',
`fecha` datetime NOT NULL default '0000-00-00 00:00:00',
`grupo` varchar(2) NOT NULL default '',
`sede` varchar(200) NOT NULL default '',
`id` int(11) NOT NULL auto_increment,
`id_local` int(7) NOT NULL,
`id_visita` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=50 DEFAULT CHARSET=utf8;


Y marvin...si habia pensando ese codigo, pero por ejemplo...Si hoy no hay partidos y el proximo partido es mañana...me quedaria vacio...me entiendes? lo que quiero es que me salgan los partidos proximos, pero de un solo dia.
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
  #7 (permalink)  
Antiguo 19/11/2008, 12:11
 
Fecha de Ingreso: diciembre-2005
Mensajes: 39
Antigüedad: 18 años, 4 meses
Puntos: 0
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

podrias cambiar el ciclo por un 'For' y que haga una sola busqueda y no todas como tienes en tu codigo.

Espero averte ayudado :)
  #8 (permalink)  
Antiguo 19/11/2008, 12:54
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

y que pongo en el For? te entiendo mas o menos la idea...CREO jeje...pero no se como terminarla.
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
  #9 (permalink)  
Antiguo 19/11/2008, 13:07
 
Fecha de Ingreso: diciembre-2005
Mensajes: 39
Antigüedad: 18 años, 4 meses
Puntos: 0
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Código PHP:
for($i=0, $i==1, $i++)
{

$row=mysql_fetch_array($result)

      if(date("d/m/Y", strtotime($row["fecha"])) !== $fecha_anterior)
      {
      echo date("d/m/Y", strtotime($row["fecha"])).'<br>';
      $fecha_anterior=date("d/m/Y", strtotime($row["fecha"]));
      }
      ?>
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">&bull; <?=date("H:i"strtotime($row["fecha"]));?> :: <?=$row["local"];?> v/s <?=$row["visita"];?></font><br><?
 
}
algo asi quedaria xD. espero te sirva :)


}
  #10 (permalink)  
Antiguo 19/11/2008, 13:29
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

no me funciona! :(
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
  #11 (permalink)  
Antiguo 20/11/2008, 00:53
Avatar de cleek  
Fecha de Ingreso: diciembre-2006
Ubicación: Atras del cocodrilo
Mensajes: 122
Antigüedad: 17 años, 4 meses
Puntos: 1
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Creo que ya está.

SELECT * FROM (SELECT fecha FROM mundial_primerafase GROUP BY fecha ORDER BY fecha ASC LIMIT 1) as T LEFT JOIN mundial_primerafase ON T.fecha = mundial_primerafase.fecha ORDER BY mundial_primerafase.fecha ASC

A ver si te funciona.
__________________
:: nocturno ::
inGenia soluciones
  #12 (permalink)  
Antiguo 20/11/2008, 09:07
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

y eso mismo...como lo imprimo? normal con un mysql_fetch_array?
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
  #13 (permalink)  
Antiguo 20/11/2008, 12:14
Avatar de cleek  
Fecha de Ingreso: diciembre-2006
Ubicación: Atras del cocodrilo
Mensajes: 122
Antigüedad: 17 años, 4 meses
Puntos: 1
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Igual que lo tenías, nadamas saca las cosas ordenadas en una consulta que se ve algo grande.

$result=mysql_db_query("$db", "SELECT * FROM (SELECT fecha FROM mundial_primerafase GROUP BY fecha ORDER BY fecha ASC LIMIT 1) as T LEFT JOIN mundial_primerafase ON T.fecha = mundial_primerafase.fecha ORDER BY mundial_primerafase.fecha ASC") or die(mysql_error());

Y con esa ya debía quedar bien.
__________________
:: nocturno ::
inGenia soluciones
  #14 (permalink)  
Antiguo 21/11/2008, 09:07
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Lo Siento..

imprimio solo:

19/11/2008
• 12:00 :: China v/s Argentina

Es decir...solo el primer ID y no el primer dia siguiente a hoy :(
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
  #15 (permalink)  
Antiguo 21/11/2008, 09:21
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Y algo como:
Código php:
Ver original
  1. "SELECT * FROM mundial_primerafase where fecha = (SELECT fecha FROM mundial_primerafase WHERE fecha >= curdate() ORDER BY fecha ASC LIMIT 1) ORDER BY fecha ASC"

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #16 (permalink)  
Antiguo 21/11/2008, 09:54
Avatar de cleek  
Fecha de Ingreso: diciembre-2006
Ubicación: Atras del cocodrilo
Mensajes: 122
Antigüedad: 17 años, 4 meses
Puntos: 1
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

A falta de tiempo para hacer la consulta decentemente, vamos a hacerlo de la manera poco divertida.


$fecha_query = mysql_db_query($db, "SELECT fecha FROM mundial_primerafase GROUP BY fecha ORDER BY fecha ASC LIMIT 1") or die(mysql_error());
$fecha = mysql_fetch_assoc($fecha_query);

$result = mysql_db_query($db, 'SELECT * FROM mundial_primerafase WHERE mundial_primerafase.fecha="'.$fecha['fecha'].'" ORDER BY mundial_primerafase.fecha ASC') or die(mysql_error());

Saludos.
__________________
:: nocturno ::
inGenia soluciones
  #17 (permalink)  
Antiguo 21/11/2008, 10:55
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Estimados:

Creo que logro entender las ultimas dos formas de mostrar la fecha y tambien creo entender el problema de porque me muestra UN solo resultado.

El tipo de campo "fecha" es un campo DATETIME...y donde las hjoras obviamente no son iguales...existe alguna forma de cambiar el formato en el where? En el primer codigo por ejemplo, donde dice fecha = ..... en que ese fecha llevara un formato del tipo "aaaa-mm-dd" y asi poder solo buscar lo que el DIA sea amyor a hoy. Asi me mostraria todos los del mismo dia y diferentes horas o no?

Gracias
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
  #18 (permalink)  
Antiguo 21/11/2008, 11:13
Avatar de cleek  
Fecha de Ingreso: diciembre-2006
Ubicación: Atras del cocodrilo
Mensajes: 122
Antigüedad: 17 años, 4 meses
Puntos: 1
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

Tienes toda la razón del mundo, intentemos otra vez.

$fecha_query = mysql_db_query($db, "SELECT fecha FROM mundial_primerafase GROUP BY fecha ORDER BY fecha ASC LIMIT 1") or die(mysql_error());
$fecha = mysql_fetch_assoc($fecha_query);

$result = mysql_db_query($db, 'SELECT * FROM mundial_primerafase
WHERE
YEAR(mundial_primerafase.fecha) = YEAR("'.$fecha['fecha'].'")
AND MONTH(mundial_primerafase.fecha) = MONTH("'.$fecha['fecha'].'")
AND DAY(mundial_primerafase.fecha) = DAY("'.$fecha['fecha'].'")
ORDER BY mundial_primerafase.fecha ASC') or die(mysql_error());


A ver si esta es la buena, jajaja. Saludos.
__________________
:: nocturno ::
inGenia soluciones
  #19 (permalink)  
Antiguo 21/11/2008, 14:07
 
Fecha de Ingreso: diciembre-2004
Mensajes: 354
Antigüedad: 19 años, 4 meses
Puntos: 2
Respuesta: ¿Quien me ayuda con fechas? PLIS!!

ahi siiiiiii...funciona perfecto!!

De verdad muchas gracias!!
__________________
Pedro Pablo Vivanco D.
Webmaster todoalbo.cl
[email protected]
http://www.todoalbo.cl
"Dios creo el Cielo, Colo-Colo le puso todas sus Estrellas"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:24.