Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con consulta SELECT en servidor web

Estas en el tema de Problema con consulta SELECT en servidor web en el foro de PHP en Foros del Web. Hola! Tengo el siguiente problema y me urge solucionarlo! Resulta que tengo instalado PHP 5.3.13 en mi servidor local y la aplicación me funciona perfecto, ...
  #1 (permalink)  
Antiguo 09/09/2013, 14:55
 
Fecha de Ingreso: septiembre-2013
Mensajes: 4
Antigüedad: 10 años, 7 meses
Puntos: 0
Exclamación Problema con consulta SELECT en servidor web

Hola! Tengo el siguiente problema y me urge solucionarlo! Resulta que tengo instalado PHP 5.3.13 en mi servidor local y la aplicación me funciona perfecto, pero cuando la subo a un servidor web que tiene instalado PHP 5.2.17 me arroja el siguiente error cuando intento loguearme en la aplicación con un usuario y una password que existen en la base de datos:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/serviplo/public_html/catastro/funciones.php on line 13

Por lo que pude averiguar el problema es que no está haciendo el SELECT, pero no entiendo por qué en mi servidor local si lo hace y en el servidor web no. Les dejo el extracto del código por si alguien me ayuda a iluminarme.

//sentencia sql para consultar el nombre del usuario
$sql = "SELECT * FROM `u_comunas` WHERE `usuario`='$usuario' AND `password`='$clave'";
//ejecucion de la sentencia anterior
$ejecutar_sql=mysql_query($sql,$conectar);
//si existe inicia una sesion y guarda el nombre del usuario
if (mysql_num_rows($ejecutar_sql)!=0){
//inicio de sesion
session_start();
//configurar un elemento usuario dentro del arreglo global $_SESSION
$_SESSION['usuario']=$usuario;
//retornar verdadero
return true;
} else {
//retornar falso
return false;
}


Gracias de antemano!
  #2 (permalink)  
Antiguo 09/09/2013, 14:58
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Problema con consulta SELECT en servidor web

Después de
$ejecutar_sql=mysql_query($sql,$conectar);

haz mysql_error(); y ve el error que e devuelva
  #3 (permalink)  
Antiguo 09/09/2013, 15:02
 
Fecha de Ingreso: septiembre-2013
Mensajes: 4
Antigüedad: 10 años, 7 meses
Puntos: 0
Respuesta: Problema con consulta SELECT en servidor web

Me arroja lo mismo.

Código:

$result = "SELECT * FROM `usuarios` WHERE `nombre`=$usuario AND `password`=$clave";
//ejecucion de la sentencia anterior
$ejecutar_sql=mysql_query($result,$conectar);
mysql_error();

Muestra la pantalla:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/serviplo/public_html/catastro/funciones.php on line 13
  #4 (permalink)  
Antiguo 09/09/2013, 16:01
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problema con consulta SELECT en servidor web

Asumo que $usuario y $clave deben ser cadenas de texto, y las estás poniendo como si fuesen numéricas.
Acuérdate que SQL y PHP no son lo mismo. No estás poniendo variables de PHP en MySQL, estás construyendo una cadena de texto que es una sentencia SQL, lenguaje independiente, con sus propias reglas sintácticas.

Código PHP:
Ver original
  1. $result = "SELECT * FROM `usuarios` WHERE `nombre`='$usuario' AND `password`='$clave'";
  2. //ejecucion de la sentencia anterior
  3. $ejecutar_sql=mysql_query($result,$conectar);
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 09/09/2013, 16:19
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Problema con consulta SELECT en servidor web

Bueno, es que no es sólo mysql_error(); tal cual, si no

echo mysql_error();

Este tipo de error se da cuando hay algo mal en tu consulta, ya sea escribir mal un campo o pedir un campo que no existe, o tener mal los datos de conexión, etc.
  #6 (permalink)  
Antiguo 09/09/2013, 18:31
 
Fecha de Ingreso: septiembre-2013
Mensajes: 4
Antigüedad: 10 años, 7 meses
Puntos: 0
Respuesta: Problema con consulta SELECT en servidor web

Hola! $usuario y $clave son campos de texto, en este caso son pasados por un textbox que escribo usuario: admin y password: hola123

mysql_select_db('serviplo_tt',$conectar);
$result = "SELECT * FROM `usuarios` WHERE `nombre`='$usuario' AND `password`='$clave'";
//ejecucion de la sentencia anterior
$ejecutar_sql=mysql_query($result,$conectar);
//si existe inicia una sesion y guarda el nombre del usuario
echo mysql_error();


Me arroja:

No database selected
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/serviplo/public_html/catastro/funciones.php on line 14

Pero la base de datos está seleccionada arriba en mysql_select_db

Les adjunto una imagen del phpmyadmin del servidor:
http://imm.io/1hEzW
  #7 (permalink)  
Antiguo 09/09/2013, 18:51
 
Fecha de Ingreso: septiembre-2013
Mensajes: 4
Antigüedad: 10 años, 7 meses
Puntos: 0
Respuesta: Problema con consulta SELECT en servidor web

Ya lo solucioné!! Tenía que asignar mi usuario MySQL a la base de datos en el CPanel!!

Gracias por su tiempo!!

Etiquetas: html, mysql, select, servidor, sql
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 11:49.