Foros del Web » Programando para Internet » PHP »

SQL coger campos

Estas en el tema de SQL coger campos en el foro de PHP en Foros del Web. Bueno, la verdad es que no he sido muy descriptivo con el título, pero es que tampoco sabía que poner. Ahora explicaré detalladamente mi problema. ...
  #1 (permalink)  
Antiguo 06/04/2007, 04:53
 
Fecha de Ingreso: octubre-2006
Ubicación: Quart de Poblet, Valencia
Mensajes: 767
Antigüedad: 17 años, 5 meses
Puntos: 8
SQL coger campos

Bueno, la verdad es que no he sido muy descriptivo con el título, pero es que tampoco sabía que poner. Ahora explicaré detalladamente mi problema.

Tengo una tabla (descargas_descargas), con los campos:
id, titulo y id_categoria (tiene más pero solo necesito estos)

Y otra tabla llamada (descargas_categorias), con los campos:
id, n_categoria (nombre escrito de la categoria)

La cuestión es que no sé cómo hacer lo siguiente:
Cita:
$ultimas_descargas = mysql_query("SELECT * FROM descargas_descargas ORDER BY 'id' DESC LIMIT 10");

while($descargas = mysql_fetch_array($ultimas_descargas)){

echo "-<a href='miweb.com/descargas.php?id=$descargas[id]' title='$descargas[titulo]'>".$descargas[titulo]." [$descargas[id_categoria]]</a><br/>"; }
?>
De esta forma me aparecerá:
Ejemplo:
Cita:
-Crazy cars [2]
-Supermario [2]
-Firefox 2.0 [1]
-Dreamweaver [3]
Siendo: 2=Juegos, 1=Navegación, 3=Webmasters, etc...... (es un ejemplo)

Ahora sí, la pregunta
Cómo puedo coger el campo n_categoria, habiendo cogido primero el campo id_categoria, que están en tablas distintas y tiene que ser el mismo id para ambos.

Saludos y gracias de antemano!!
  #2 (permalink)  
Antiguo 06/04/2007, 05:38
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 18 años, 10 meses
Puntos: 7
Re: SQL coger campos

Algo asi:

Código PHP:
$ultimas_descargas mysql_query("SELECT * FROM descargas_descargas ORDER BY 'id' DESC LIMIT 10");

while(
$descargas mysql_fetch_array($ultimas_descargas)){
 
$sql "SELECT * FROM archivos WHERE  id='$descargas[id_categoria]'";
$consulta mysql_query($sql) or die ("No se pudo ejecutar la consulta");
if (
mysql_num_rows($consulta)!=0){
While (
$registro=mysql_fetch_assoc($consulta)){

echo 
"-<a href='miweb.com/descargas.php?id=$descargas[id]' title='$descargas[titulo]'>".$descargas[titulo]." [$registro['n_categoria']</a><br/>"
};
};
};
?> 
Echale un ojo y revisa las llaves ({}) por si me comi alguna, pero de todos modos se entiende la idea ¿no? .

Saludos.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #3 (permalink)  
Antiguo 06/04/2007, 08:19
 
Fecha de Ingreso: mayo-2003
Ubicación: Buenos Aires
Mensajes: 97
Antigüedad: 20 años, 10 meses
Puntos: 0
Re: SQL coger campos

Una pregunta, ¿el id de la tabla descarga_categorias, es el id de la categoria o el id de una descarga??. Asumo que es el id de la categoria asi que para mi la respuesta sería hacerlo del lado del mysql con un join

Te quedaria algo asi

Select dd.id_categoria, dd.titulo,dc.n_categoria From descargas_descargas dd inner join descargas_categorias dc
on dd.id_categoria = dc.id_categoria
order by dd.id

Eso te traeria

-Crazy cars Juegos
-Supermario Juegos
-Firefox 2.0 Browsers
-Dreamweaver Programacion

Si es eso lo que querias te recomiendo que leas el tema joins que los vas a usar muchisimo, sobre todo para tener una base de datos bien estructurada y normalizada (leete algo de normalizacion de tablas tambien)

saludos
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 10:56.