Foros del Web » Programando para Internet » PHP »

Ayuda, no repetir el mismo valor!!!

Estas en el tema de Ayuda, no repetir el mismo valor!!! en el foro de PHP en Foros del Web. Como va gente, resulta que tengo en una tabla los nombres de galerias y otra tabla con las fotos. El punto es que recorro las ...
  #1 (permalink)  
Antiguo 25/02/2007, 01:35
 
Fecha de Ingreso: diciembre-2004
Ubicación: Cordoba - Argentina
Mensajes: 503
Antigüedad: 19 años, 11 meses
Puntos: 1
Ayuda, no repetir el mismo valor!!!

Como va gente, resulta que tengo en una tabla los nombres de galerias y otra tabla con las fotos.

El punto es que recorro las fotos antes de mostrarlas y guardo el id_galeria de la tabla fotos que identifica de que galeria proviene para solo imprimir los nombres de aquellas galerias que no esten vacias.

La idea es grabar en una pocicion del array el id_galeria de las fotos, PERO SOLO UNA VEZ, ya que 1 foto significa que la galeria no estara vacia.

De esta forma podria usar el array luego para imprimir solo los nombres de aquellas galerias que tengan fotos.

El tema es que no me sale, les dejo el codigo:

Código:
$res=mysql_query("select id_usr,id_galeria from fotos WHERE id_usr=$id");
$i=0;
while ($row=mysql_fetch_array($res)){
	
	if ($arraygals !== $row[id_galeria]) {
		$arraygals[$i]=$row[id_galeria];
		echo "<b style='color:#3399FF'>$row[id_galeria]</b><br>";
	}
	$i=$i+1;
}

$res2=mysql_query("select * from galerias WHERE id_usr=$id and id_galeria=$arraygals");
while ($row2=mysql_fetch_array($res2)){
//TATATATA
Saludos y gracias.
  #2 (permalink)  
Antiguo 25/02/2007, 02:11
 
Fecha de Ingreso: octubre-2004
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 20 años, 1 mes
Puntos: 7
Re: Ayuda, no repetir el mismo valor!!!

Tienes que utilizar la función in_array para poder saber si el elemento está en el array. Tal como lo tenías comparabas el array entero con un valor concreto. Tampoco te funcionaría la siguiente búsqueda... te lo he medio apañado aquí, pero mejor que te revises el manual de SQL, que controles que se han encontrado resultados, cuantos son para poner lo en un WHERE ... IN o no, etc

Aparte de esto en PHP no hace falta que vayas aumentando una variable para añadir elementos a un array, con $arraygals[] ya funciona.

Código:
$res=mysql_query("select id_usr,id_galeria from fotos WHERE id_usr=$id");
$arraygals = array ();
while ($row=mysql_fetch_array($res)){
	
	if (!in_array ($row[id_galeria],$arraygals) {
		$arraygals[]= $row[id_galeria];
		echo "<b style='color:#3399FF'>$row[id_galeria]</b><br>";
	}
}
$lista = implode (',',$arraygals);
$res2=mysql_query("select * from galerias WHERE id_usr=$id and id_galeria IN ($lista)");
while ($row2=mysql_fetch_array($res2)){
//TATATATA

Última edición por pintix; 25/02/2007 a las 02:36
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 21:47.