Foros del Web » Programando para Internet » PHP »

Dos nombres iguales y quiero eliminar uno

Estas en el tema de Dos nombres iguales y quiero eliminar uno en el foro de PHP en Foros del Web. Estoy haciendo organizando la biblioteca de mi casa (quiero ver si sirve mi nuevo juguete lector de codigos de barras ) y tengo cuatro libros ...
  #1 (permalink)  
Antiguo 09/12/2008, 16:40
 
Fecha de Ingreso: diciembre-2008
Mensajes: 35
Antigüedad: 15 años, 5 meses
Puntos: 0
Pregunta Dos nombres iguales y quiero eliminar uno

Estoy haciendo organizando la biblioteca de mi casa (quiero ver si sirve mi nuevo juguete lector de codigos de barras) y tengo cuatro libros del mismo autor, como hago para que me aparezca el autor una sola vez y los titulos de los libros que tengo de el.
Ejemplo:

de Gabriel Garcias Marquez tengo 3 libros y quiero hacer la consulta de tal manera que me de lo siguiente:

Gabriel Garcia Marquez
Corinicas de una muerte anunciada
El coronel no tiene quien le escriba
100 años de soledad

lo que me aparece es:

Gabriel Garcia Marquez
Corinicas de una muerte anunciada
Gabriel Garcia Marquez
El coronel no tiene quien le escriba
Gabriel Garcia Marquez
100 años de soledad

hay alguna forma de excluir eso, vi un articulo que hablaba del array_unique, me servira??

Gracias
  #2 (permalink)  
Antiguo 09/12/2008, 17:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Dos nombres iguales y quiero eliminar uno

Puedes hacer array_unique, o en dado caso filtrar en PHP por autor, todo depende de como hagas la impresion.

Saludos.
  #3 (permalink)  
Antiguo 09/12/2008, 17:15
 
Fecha de Ingreso: diciembre-2008
Mensajes: 35
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Dos nombres iguales y quiero eliminar uno

y como haria un array_unique o filtrar el alutor??
  #4 (permalink)  
Antiguo 09/12/2008, 17:19
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Dos nombres iguales y quiero eliminar uno

Pues como te comento, depende de como a) extraigas la informacion y b) muestres la informacion.

Saludos.
  #5 (permalink)  
Antiguo 09/12/2008, 17:22
 
Fecha de Ingreso: diciembre-2008
Mensajes: 35
Antigüedad: 15 años, 5 meses
Puntos: 0
Código PHP:
$cat "SELECT autor,titulo FROM libros";
$cqe mysql_query($cat);
while (
$cvat mysql_fetch_array($cqe)) {
echo 
'<img src="imagenes/libros.gif" /><span class="Estilo11"> ' .array_unique($cvat['autor']). '</span><br>
      <img src="imgs/libros32x22.gif" /><span class="Estilo9"> ' 
.$cvat['titulo']. '</span><br>';


Esta es mi consulta

y me da este error:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource

mi consulta es:
Código PHP:
$cat "SELECT autor,titulo FROM libros";
$cqe mysql_query($cat);
while (
$cvat mysql_fetch_array($cqe)) {
echo 
'<img src="imagenes/libros.gif" /><span class="Estilo11"> ' .array_unique($cvat['autor']). '</span><br>
      <img src="imgs/libros32x22.gif" /><span class="Estilo9"> ' 
.$cvat['titulo']. '</span><br>';


Última edición por GatorV; 09/12/2008 a las 21:35
  #6 (permalink)  
Antiguo 09/12/2008, 17:59
 
Fecha de Ingreso: septiembre-2008
Mensajes: 18
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Dos nombres iguales y quiero eliminar uno

El error que te da es que la sql no te la esta realizando correctamente, es decir, que debe haber un error en la sql.

Yo haria algo como esto. Es un poco mas artesanal pero te va a funcionar la mar de bien:

$cat = "SELECT autor, titulo FROM libros ORDER BY autor";
$cqe = mysql_query($cat);
$autor = '';
while ($cvat = mysql_fetch_array($cqe))
{
if($autor != $cvat['autor'])
{
$autor = $cvat['autor'];
echo '<span class="Estilo11"> ' .array_unique($cvat['autor']). '</span><br>';
}
echo '<img src="imgs/libros32x22.gif" /><span class="Estilo9"> ' .$cvat['titulo']. '</span><br>';
}

Lo unico que no entiendo es la imagen que pones al lado del autor. No se esa imagen a quien hace referencia. Si es una imagen del autor, solo debes ponerla junto al primer echo y ya esta.
  #7 (permalink)  
Antiguo 09/12/2008, 18:00
 
Fecha de Ingreso: diciembre-2008
Mensajes: 35
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Dos nombres iguales y quiero eliminar uno

eso era lo que queria, lo probare y te aviso
  #8 (permalink)  
Antiguo 09/12/2008, 18:03
Avatar de david_f  
Fecha de Ingreso: mayo-2007
Ubicación: Santiago De Los Caballeros, Santiago, Dominican Republic, Dominican Republic
Mensajes: 52
Antigüedad: 17 años
Puntos: 3
Respuesta: como extraigo una dato y elimino su repeticion??

Cual es la pregunta?
  #9 (permalink)  
Antiguo 09/12/2008, 18:03
 
Fecha de Ingreso: diciembre-2008
Mensajes: 35
Antigüedad: 15 años, 5 meses
Puntos: 0
nop, me aparece este error

Warning: array_unique() [function.array-unique]: The argument should be an array

eliminar el campo autor que se repite dos veces

es decir

Autor
Titulo
Autor
Titulo

Pero si el autor es el mismo deberis de decir

Autor
titulo
Titulo
titulo

la imagen es diferente, se llaman similar pero son diferentes

Gracias amigo ya me funciona,

hice lo que me dijo raurodse pero no me funcionaba, le quite el array_unique() y perfecto

Gracias muchas gracias

Como siempre los mejores en el mejor foro

Última edición por GatorV; 09/12/2008 a las 21:35
  #10 (permalink)  
Antiguo 09/12/2008, 19:50
Avatar de Breaklo  
Fecha de Ingreso: junio-2008
Ubicación: Buenos Aires
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Dos nombres iguales y quiero eliminar uno

Este tema me interesa...

jsurname como quedo el script al final y en funcionamiento?
  #11 (permalink)  
Antiguo 09/12/2008, 19:53
Avatar de david_f  
Fecha de Ingreso: mayo-2007
Ubicación: Santiago De Los Caballeros, Santiago, Dominican Republic, Dominican Republic
Mensajes: 52
Antigüedad: 17 años
Puntos: 3
Respuesta: como extraigo una dato y elimino su repeticion??

Seguro que no tienes los registros repetidos en la base de datos?

Te recomiendo que cuando haces mysql_fetch_array() en vez de darle salida lo metas en un arreglo y lo haces un array_unique.

http://www.php.net/manual/en/function.array-unique.php
  #12 (permalink)  
Antiguo 09/12/2008, 21:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Dos nombres iguales y quiero eliminar uno

Temas unidos, por favor no dupliques temas.
  #13 (permalink)  
Antiguo 09/12/2008, 21:40
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Dos nombres iguales y quiero eliminar uno

Echale un ojo a este tema:
http://www.forosdelweb.com/f18/lista...-foros-651610/

Se trata algo parecido a lo que tu deseas.
  #14 (permalink)  
Antiguo 10/12/2008, 02:43
 
Fecha de Ingreso: septiembre-2008
Mensajes: 18
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Dos nombres iguales y quiero eliminar uno

Uy, perdona por lo de array_unique, era muy tarde y se me paso, en realidad no se necesita para nada. La solucion es la misma que la que da ronruby.
  #15 (permalink)  
Antiguo 10/12/2008, 10:17
Avatar de Breaklo  
Fecha de Ingreso: junio-2008
Ubicación: Buenos Aires
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Dos nombres iguales y quiero eliminar uno

Yo tengo el mismo problema, pero tengo las "noticias" y caetgorias en la misma tabla..
Hay forma de hacerlo, o tengo que separar en dos tablas?
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 00:59.