Listar resultados - como hacerlo

Desde
10 Sep 2012
Mensajes
1.073
Hola nuevamente..

Buen les explico, tengo la web de peliculas, en la tabla de peliculas se guarda la fecha de estreno, por ejemplo (id titulo sinopsis fechaestreno) - (1 el rey leon (sinopsis) 27-06-2013).. lo que quiero hacer es listar las peliculas por la fecha de estreno... es decir..

Insertar CODE, HTML o PHP:
Jueves 27 de Junio de 2013

El rey leon 

" otra pelicula " 

" otra pelicula "

Insertar CODE, HTML o PHP:
Jueves 4 de Julio de 2013

" otra pelicula " 

" otra pelicula " 

" otra pelicula "

Lo que hice yo fue armar un bucle, que empieza mostrando las peliculas de la base de datos que contengan la fecha 27 - 06 - 2013, cuando no hay mas resultados suma 1 semana. y se fija que peliculas hay con la fecha 04 - 07 - 2013, si no hay mas datos, suma otra semana y muestra las peliculas del 11 - 07 - 2013.

Es programado " a lo negro " pero funciona perfectamente... pero a la hora de listar por paginas de 15 peliculas por ejemplo es el problema, ya que realiza una consulta por cada fecha, quizas el dia 27-06-2013 hay 7 estrenos y el 4-07-2013 hay 5 estrenos.. Osea no puedo usar un limit en una consulta mysql. Yo quisiera que se muestren 15 peliculas por cada pagina independientemente de la fecha de estreno..

Que quilombo... Se que esta mal pensado, pero nose como se hace.

lo que yo tengo hecho es esto...
 
Última edición:

padawanluke

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 Jun 2013
Mensajes
96
Creo que el problema esta en que haces una consulta por cada fecha, creo que podrias solucionar el tema con un anidando consultas SQL , creo que el problema viene por el lado de la sentencia SQL . Ayudaria muchisimo si pones la consulta SQL que tenes, por mas que este "programado a lo negro" asi te podemos ayudar mejor.
 

gmsegui

Dseda
Desde
10 Sep 2012
Mensajes
1.073
[MENTION=45047]padawanluke[/MENTION]

basicamente el codigo es esto, muestra las peliculas que tengan un 1 en estreno y que el estreno sea en la fecha X, si no hay mas resultados suma una semana y vuelve a repetir la secuencia, asi hasta que falle 2 veces seguidas y cierra el bucle (a lo negro el cierre tambien) ja.

Insertar CODE, HTML o PHP:
  $fuerabucle = 0;
  $fechaa = date("Y-m-d",strtotime("2013-06-20 + 1 week")); 
  
  do {
		
		
	  	$resultadonuevo=mysql_query("select * from ms_peliculas WHERE p_estreno='1' and p_fechita = '{$fechaa}' ",$conn);
		if(mysql_fetch_array($resultadonuevo)>0){
				
			echo '<br />';
		    echo $fechaa;
		    echo '<br />';
			while ($peli=mysql_fetch_array($resultadonuevo)){
				echo $peli[p_id];
				echo $peli[p_titulo];
				echo '<br>';
				}
				 $fechaa = date("Y-m-d",strtotime("$fechaa + 1 week"));
		}
		else {
			 $fuerabucle = $fuerabucle + 1;
			 }
				 
   }while ($fuerabucle != 2);


---------- Post agregado el 25-jun-2013 hora: 15:08 ----------

Solucionado, lo resolvi haciendo solo una consulta, y e imprimiendo la fecha cada vez que es distinta... Cerrar por favor !
 

padawanluke

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 Jun 2013
Mensajes
96
[MENTION=45047]padawanluke[/MENTION]

basicamente el codigo es esto, muestra las peliculas que tengan un 1 en estreno y que el estreno sea en la fecha X, si no hay mas resultados suma una semana y vuelve a repetir la secuencia, asi hasta que falle 2 veces seguidas y cierra el bucle (a lo negro el cierre tambien) ja.

Insertar CODE, HTML o PHP:
  $fuerabucle = 0;
  $fechaa = date("Y-m-d",strtotime("2013-06-20 + 1 week")); 
  
  do {
		
		
	  	$resultadonuevo=mysql_query("select * from ms_peliculas WHERE p_estreno='1' and p_fechita = '{$fechaa}' ",$conn);
		if(mysql_fetch_array($resultadonuevo)>0){
				
			echo '<br />';
		    echo $fechaa;
		    echo '<br />';
			while ($peli=mysql_fetch_array($resultadonuevo)){
				echo $peli[p_id];
				echo $peli[p_titulo];
				echo '<br>';
				}
				 $fechaa = date("Y-m-d",strtotime("$fechaa + 1 week"));
		}
		else {
			 $fuerabucle = $fuerabucle + 1;
			 }
				 
   }while ($fuerabucle != 2);


---------- Post agregado el 25-jun-2013 hora: 15:08 ----------

Solucionado, lo resolvi haciendo solo una consulta, y e imprimiendo la fecha cada vez que es distinta... Cerrar por favor !

Mira, te iba a decir exactamente lo mismo. Hacia falta una sola consulta y un corte de control . Excelente que lo hayas podido solucionar !!!
 
Arriba