Ver Mensaje Individual
  #7 (permalink)  
Antiguo 14/11/2010, 11:50
Avatar de Sherly
Sherly
 
Fecha de Ingreso: septiembre-2008
Ubicación: Valles
Mensajes: 58
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Ayuda con for

Ya tengo la solución se las dejo por si alguien la ocupa.

Código PHP:
$result2pg_query("SELECT * FROM hemeroteca WHERE dia='$dd' AND mes='$m' AND anyo='$anyo'");
         
        if (!
$result2
            {    
                 echo 
"error al procesar la busqueda pruebe mas tarde o reportelo a\n";
                exit;
            }
$pag_listas = array(); //Te genera un array vacio, aqui vamos a guardar las que ya tienes.
$pag_faltantes = array(); //Aqui las que no.
while($g pg_fetch_assoc($result2) ){ //Este seria el while donde haces el pg_fetch_assoc
  
$id_archivo=$g['id_archivo'];
$año=$g['anyo'];
$mes=$g['mes'];
$dia=$g['dia'];
$nombre=$g['nombre'];
$ruta=$g['ruta'];
$pag $g['pagina'];
$pag_listas[] = $pag//En esta parte solo guardas las que ya tienes
}
//El for debe ir afuera del while
for($i 1$i <= 50$i++){
  if(!
in_array($i$pag_listas) ){ //Aqui checas si el num NO esta en las que ya tienes
    
$pag_faltantes[] = $i// La añadimos al arreglo de las faltantes
  
}
}

//Ya que termina el for, teoricamente deberias tener todos los numeros que te faltan, y ordenados, pero por cualquier cosa que no estuvieran ordenados le pasas un metodo de ordenacion.

natsort($pag_faltantes); //Le da un orden "natural" al arreglo, es decir 1, 2, 3, ..., 48, 49, 50

//Aqui ya podrias hacer lo que quieras con el arreglo, como imprimirlo con un foreach
if(!$id_archivo)
{

}
else{
echo 
"<h3>Las paginas faltantes del $dia de $mes del $año son:</h3>";
echo 
"<ol>";
foreach(
$pag_faltantes as $pf)
{

  echo 
"<li>$pf</li>";
}
echo 
"</ol>";