Foros del Web » Programando para Internet » PHP »

Error en mysql

Estas en el tema de Error en mysql en el foro de PHP en Foros del Web. Ke falla aki?: <? $db = mysql_connect(); $num = 0; $sql = "SELECT * FROM usuarios where PG order by $num DESC"; $result= mysql_db_query('xxx_es_db',$sql,$db); while($row ...
  #1 (permalink)  
Antiguo 27/07/2003, 13:00
 
Fecha de Ingreso: noviembre-2002
Ubicación: Almeria
Mensajes: 131
Antigüedad: 21 años, 5 meses
Puntos: 0
Error en mysql

Ke falla aki?:
<?
$db = mysql_connect();
$num = 0;
$sql = "SELECT * FROM usuarios where PG order by $num DESC";
$result= mysql_db_query('xxx_es_db',$sql,$db);
while($row = mysql_fetch_array($result)) {
$num++;
echo ''.$num.' - '.$row["nombrep"].' '.$row["nick"].' '.$row["PG"].' '.$row["PP"].' ';

}
?>


Quiero que se ordenen todos los registros de la tabla usuarios por PG de mayor a menor
Acias :)
  #2 (permalink)  
Antiguo 27/07/2003, 13:23
Avatar de dwaks  
Fecha de Ingreso: agosto-2002
Ubicación: Panamá
Mensajes: 962
Antigüedad: 21 años, 8 meses
Puntos: 15
De acuerdo MIRA ESTO A VER SI TE SIRVE

Verifica lo que esta en rojo y cambialo por mi opcion:

Ke falla aki?:
<?
$db = mysql_connect();

Este valor $num = 0 no es necesario ni para la sentencia sql ni para el bucle while

$num = 0;

En el sql tu debes marcar en Where una forma de como elejir resultados dependiendo al tipo de dato que quieras extraer de la base, ejemplo: Where nombre = 'carlos' , y te dara todos los registros carlos

Al usar el order by quieres definir ya sea numero o fechas o horas que existan actualmente en tu base de datos no como una variable que declaras aqui en el codigo php.
ejemplo: order by fecha desc, o order by fecha asc.


$sql = "SELECT * FROM usuarios where PG order by $num DESC ";

La sentencia debe ser $result= mysql_db_query($sql,$db):

$result= mysql_db_query('xxx_es_db',$sql,$db);

Como te dije anteriormente no necesitas el $num ++ ya que no estara dando valor a la sentencia sql si lo que quieres es valores que se sumen mas uno.

while($row = mysql_fetch_array($result)) {
$num++;
echo ''.$num.' - '.$row["nombrep"].' '.$row["nick"].' '.$row["PG"].' '.$row["PP"].' ';

}
?>


Quiero que se ordenen todos los registros de la tabla usuarios por PG de mayor a menor
Acias :)


quiero que me digas que contiene el campo PG ya sea numero o que le tienes a ese campo.
Asi te podre ayudar mejor., aqui en el foro y dime que estas haciendo a ver si te doy ideas.

Suerte,
  #3 (permalink)  
Antiguo 27/07/2003, 13:28
 
Fecha de Ingreso: noviembre-2002
Ubicación: Almeria
Mensajes: 131
Antigüedad: 21 años, 5 meses
Puntos: 0
PG Numero, Son Peleas Ganadas, tamos aciendo un proyecto de peleas virtuales desde internet mu wapo, kuando lo tengamos en septiembre os avisaremos :)
Muchas acias oy a probarlo ;)
  #4 (permalink)  
Antiguo 27/07/2003, 13:39
Avatar de dwaks  
Fecha de Ingreso: agosto-2002
Ubicación: Panamá
Mensajes: 962
Antigüedad: 21 años, 8 meses
Puntos: 15
ok,

Esta bueno ese proyecto me avisas cuando lo termines.

Pienso que si son numero debes hacerlo asi solamente:

SELECT * FROM usuarios order by PC DESC
SELECT * FROM usuarios order by PC ASC

Prueba jugando con esos dos y veras que habran cambios de posicion y bueno suerte.
  #5 (permalink)  
Antiguo 27/07/2003, 13:53
 
Fecha de Ingreso: noviembre-2002
Ubicación: Almeria
Mensajes: 131
Antigüedad: 21 años, 5 meses
Puntos: 0
Gracias xo me sigue fallando, weno no me da error, lo k pasa eske no me sale nada la pagina se keda en blanco y no me salen ni los nicks ni los niveles ni na de na:
<?
$db = mysql_connect();
$sql = "SELECT * FROM usuarios order by PG DESC";
$result= mysql_db_query($sql,$db);
while($row = mysql_fetch_array($result)) {
echo ' '.$row["nombrep"].' '.$row["nick"].' '.$row["PG"].' '.$row["PP"].' ';

}
?>
:-p
  #6 (permalink)  
Antiguo 27/07/2003, 16:28
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Usa:

Código PHP:
$resultmysql_db_query($sql,$db) or die (mysql_error()); 
Por lo menos para detectar el error si es de conexión a tu BD o del SQL que estás empleando ..

Ahí veras como se te informa de un detallito acerca de la selección de tu BD . pues mysql_db_query() no son correctos los parámetros que has puesto ..

Usa preferentemente:

Código PHP:
mysql_connect("host","user","pass");
mysql_select_db("tu_BD");
$sql="el que sea";
mysql_query($sql); 
Repasa la sintax de las funciones que usas:
www.php.net/mysql

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 27/07/2003, 19:48
 
Fecha de Ingreso: noviembre-2002
Ubicación: Almeria
Mensajes: 131
Antigüedad: 21 años, 5 meses
Puntos: 0
<?
mysql_connect("localhost","XXX","XXX");
mysql_select_db("usuarios order by PG DESC");
mysql_query($sql);
echo ' '.$row["nombrep"].' '.$row["nick"].' '.$row["PG"].' '.$row["PP"].' ';
?>
Sigue sin salir nada :(
__________________
Nunca dejes de aprender.
  #8 (permalink)  
Antiguo 27/07/2003, 21:05
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 22 años, 3 meses
Puntos: 0
Cita:
mysql_connect("localhost","XXX","XXX");
Esas xxx, están con ese usuario y pass?.

Y la consulta $sql?

Al $row no le asignas valores.
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 22:59.