Ver Mensaje Individual
  #4 (permalink)  
Antiguo 08/05/2012, 14:25
Avatar de linuxzero
linuxzero
 
Fecha de Ingreso: noviembre-2011
Ubicación: Argentina
Mensajes: 778
Antigüedad: 12 años, 5 meses
Puntos: 160
Respuesta: random de 2 consultas a bd sin repetirse

Si tu codigo anterior funciona bien podes hacer lo siguiente:

Código PHP:
Ver original
  1. $sql = ("SELECT id, archivo_nombre, titul, registro, link FROM Banners ORDER BY RAND() LIMIT 0, 2");
  2. $consulta = mysql_query($sql) or die ("No se pudo ejecutar la consulta");
  3.  
  4. while($fila = mysql_fetch_array($consulta)) {  
  5.     $ids[] = $fila['id']; // Vector con los id de los banne que ya selecciono y que se va a utilizar para la segunda consulta
  6.     $imagen = $fila['archivo_nombre'];
  7.     $link = $fila['link'];  
  8.     $titul = $fila['titul'];  
  9.     $registro = $fila['registro'];  
  10.     if($fila["link"] == ""){  
  11.         echo "<div style='margin-top:5px; style='z-index:-3000''><img src=\"banners/$imagen\" width='140' height='179' border='0'></div>";
  12.     } else {        
  13.         echo "<div style='margin-top:5px;'> <a href=\"$link\"><img src=\"banners/$imagen\" width='140' height='179' border='0'></a></div>";/*mostramos el valor del campo especificado*/  
  14.     }
  15. }

y ahora haces lo siguiente;

Código PHP:
Ver original
  1. // Al tener $ids[] de la conuslta anterior haces lo siguiente
  2. $sql = ("SELECT id, archivo_nombre, titul, registro, link FROM Banners WHERE id NOT IN (" . join(',', $ids) . ") ORDER BY RAND() LIMIT 0, 2");
  3. $consulta = mysql_query($sql) or die ("No se pudo ejecutar la consulta");
  4.  
  5. while($fila = mysql_fetch_array($consulta)) {  
  6.     $imagen = $fila['archivo_nombre'];
  7.     $link = $fila['link'];  
  8.     $titul = $fila['titul'];  
  9.     $registro = $fila['registro'];  
  10.     if($fila["link"] == ""){  
  11.         echo "<div style='margin-top:5px; style='z-index:-3000''><img src=\"banners/$imagen\" width='140' height='179' border='0'></div>";
  12.     } else {        
  13.         echo "<div style='margin-top:5px;'> <a href=\"$link\"><img src=\"banners/$imagen\" width='140' height='179' border='0'></a></div>";/*mostramos el valor del campo especificado*/  
  14.     }
  15. }

Fijate si te sirve
__________________
Si todo fuera tan sencillo como un symfony cc la vida seria más fácil.
http://phpnico.wordpress.com