Foros del Web » Programando para Internet » PHP »

Sacar infomación de MySQL

Estas en el tema de Sacar infomación de MySQL en el foro de PHP en Foros del Web. Bueno, recurro a estos foros porque cada vez que tengo un problema me lo han podido resolver, muchas gracias desde ya ;D Mi consulta es ...
  #1 (permalink)  
Antiguo 05/11/2005, 14:00
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
Sacar infomación de MySQL

Bueno, recurro a estos foros porque cada vez que tengo un problema me lo han podido resolver, muchas gracias desde ya ;D

Mi consulta es muy sencilla (i think o_o..), la cosa es que hice un script donde voy agregando articulos a la base de datos, y ahora quiero que en el menu me aparesca un listado en orden alfabético de todos los artículos que he agregado, pero nosé porque no funciona lo que estoy haciendo:
- Los datos de config.php están bien configurados
- Mi tabla se llama "articulos" y el campo de nombre (que es lo que quiero que aparesca, y en orden alfabético) se llama "nombre"
lo que estoy haciendo:
Código PHP:
require ("config.php");
$sql "SELECT nombre FROM articulos ORDER BY nombre";
$query mysql_query($sql);
while (
$result mysql_fetch_array($query)) {
    
$nombre stripslashes($result["nombre"]);
    echo 
"$nombre"

El código es totalmente improvizado XD, soy nuevo en PHP y estoy tratando de aprender.
¿Cómo debo hacerlo?
Gracias de antemano.
__________________
http://www.xtasy.cl
  #2 (permalink)  
Antiguo 05/11/2005, 15:17
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 13 años, 6 meses
Puntos: 2
después de esta línea:
Código PHP:
$query mysql_query($sql); 
pon esto:
Código PHP:
echo mysql_error(); 
Y dinos el error que te sale
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #3 (permalink)  
Antiguo 05/11/2005, 15:29
Avatar de gonzalezmfrank  
Fecha de Ingreso: julio-2005
Ubicación: Maracaibo - Venezuela
Mensajes: 266
Antigüedad: 12 años, 4 meses
Puntos: 0
Indica por favor como tienes el connect .... lo tienes en el config?... será que te hace falta ?

Frank
  #4 (permalink)  
Antiguo 05/11/2005, 15:31
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
Hola, gracias a los dos por responder, ya logré hacerlo bien, pero aún tengo un problema.. nosé como hacer que los resultados aparescan como listado, osea mis artículos aparecen de la siguiente manera:
Artículo1Artículo2Artículo3

Si pongo
Código PHP:
    echo "$nombre<br>"
Al final de todo el listado habría un <br> por lo tanto un espacio vacío y no quiero que esto pase, como hago para mostrar los resultados como listado?
Gracias.
__________________
http://www.xtasy.cl
  #5 (permalink)  
Antiguo 05/11/2005, 15:39
Avatar de gonzalezmfrank  
Fecha de Ingreso: julio-2005
Ubicación: Maracaibo - Venezuela
Mensajes: 266
Antigüedad: 12 años, 4 meses
Puntos: 0
Manualmente lo puedes hacer con

$num = mysql_nom_rows($sql);

I dentro del while coloca un if con un contador de regostros leidos , algo como

Código PHP:
$leidos=0;
$query mysql_query($sql);
while (
$result mysql_fetch_array($query)) {
    
$leidos++;
    
$nombre stripslashes($result["nombre"]);
   if ( 
$leidos != $num ) {
    echo 
"$nombre <br>";
  } else {
    echo 
"$nombre";
  }

  #6 (permalink)  
Antiguo 05/11/2005, 15:54
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
Gracias Frank, cambié algunas de las cosas que me dijiste y funciona de maravilla.
Código final:
Código PHP:
<? 
require ("config.php");
$sql "SELECT nombre FROM articulos ORDER BY nombre";
$query mysql_query($sql);
$num mysql_num_rows($query);
$leidos=0;
$query mysql_query($sql);
while (
$result mysql_fetch_array($query)) {
    
$leidos++;
    
$nombre stripslashes($result["nombre"]);
   if ( 
$leidos != $num ) {
    echo 
"$nombre <br>";
  } else {
    echo 
"$nombre";
  }

?>
__________________
http://www.xtasy.cl
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 09:00.