Foros del Web » Programando para Internet » PHP »

Problema con una consulta en ubuntu

Estas en el tema de Problema con una consulta en ubuntu en el foro de PHP en Foros del Web. Hola, pues me pasa lo siguiente: El código php que tengo en una página me funciona bien en windows pero al probarlo en ubuntu me ...
  #1 (permalink)  
Antiguo 24/08/2014, 06:15
 
Fecha de Ingreso: agosto-2014
Mensajes: 26
Antigüedad: 9 años, 7 meses
Puntos: 0
Problema con una consulta en ubuntu

Hola, pues me pasa lo siguiente:
El código php que tengo en una página me funciona bien en windows pero al probarlo en ubuntu me da el siguiente error:
warning mysql_num_rows() expects parameter 1 to be resource boolean given in ...

No se si será por algún problema de permisos o por la instalación. Tengo instalado el xampp en windows y en ubuntu.
¿Sabéis de que puede ser? Del código no creo que sea porque en windows funciona bien.
Gracias.
  #2 (permalink)  
Antiguo 24/08/2014, 10:52
 
Fecha de Ingreso: agosto-2014
Mensajes: 26
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problema con una consulta en ubuntu

Os dejo el código, vaya a ser que sea el fallo de eso.
Código PHP:
<?php
require_once ("../include/inicia_ses.inc.php"); 
require_once (
"../include/datos.inc.php");
mysql_connect($_SESSION['servidor'], $_SESSION['login'], $_SESSION['clave']);
mysql_select_db($_SESSION['basedatos']);
$user $_POST["nombre"];
$pass $_POST["pass"];
$consulta=mysql_query("SELECT * FROM alumnos, bloqueados WHERE alumnos.usuario='$user' and alumnos.clave='$pass' and bloqueados.bloqueado='0' and alumnos.dni=bloqueados.dni");
if (
mysql_num_rows($consulta)!=0){
    
$row mysql_fetch_array($consulta);
    
$_SESSION['NombreApellidos']=$row["nombre"]." ".$row["apellidos"];
}
?>
  #3 (permalink)  
Antiguo 24/08/2014, 11:07
 
Fecha de Ingreso: abril-2014
Mensajes: 37
Antigüedad: 9 años, 11 meses
Puntos: 2
Respuesta: Problema con una consulta en ubuntu

Estás seguro que la comparacion de bloqueados.bloqueado es '0'? es un string o un entero?

En caso de ser entero, se pone simplemente:

Código PHP:
Ver original
  1. bloqueados.bloqueado=0
  #4 (permalink)  
Antiguo 24/08/2014, 11:13
 
Fecha de Ingreso: agosto-2014
Mensajes: 26
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problema con una consulta en ubuntu

Cita:
Iniciado por robertty55 Ver Mensaje
Estás seguro que la comparacion de bloqueados.bloqueado es '0'? es un string o un entero?

En caso de ser entero, se pone simplemente:

Código PHP:
Ver original
  1. bloqueados.bloqueado=0
Debería ser un booleano. En el phpmyadmin lo tengo como: tinyint(1), ya no se si lo he definido bien a la hora de hacer la base de datos.
  #5 (permalink)  
Antiguo 24/08/2014, 11:15
 
Fecha de Ingreso: abril-2014
Mensajes: 37
Antigüedad: 9 años, 11 meses
Puntos: 2
Respuesta: Problema con una consulta en ubuntu

No amigo, esta bien, mysql transforma los booleanos en tinyint, compara con TRUE o FALSE, asì, debería funcionarte bien.

en este caso:

Código PHP:
Ver original
  1. bloqueados.bloqueado=FALSE
  #6 (permalink)  
Antiguo 24/08/2014, 11:31
 
Fecha de Ingreso: agosto-2014
Mensajes: 26
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problema con una consulta en ubuntu

Gracias robertty55, lo he puesto como dices y me sigue pasando lo mismo, en Windows me funciona perfecto y en ubuntu me sigue saliendo el error. ¿Será cosa de los permisos o de la instalación del mysql?
  #7 (permalink)  
Antiguo 24/08/2014, 12:04
 
Fecha de Ingreso: abril-2014
Mensajes: 37
Antigüedad: 9 años, 11 meses
Puntos: 2
Respuesta: Problema con una consulta en ubuntu

no, no lo creo.

Me di cuenta de algo más.

Prueba en vez de:
Código PHP:
Ver original
  1. if (mysql_num_rows($consulta)!=0){
  2.     $row = mysql_fetch_array($consulta);
  3.     $_SESSION['NombreApellidos']=$row["nombre"]." ".$row["apellidos"];
  4. }

Esto:
Código PHP:
Ver original
  1. if (mysql_num_rows($consulta)){
  2.     $row = mysql_fetch_array($consulta);
  3.     $_SESSION['NombreApellidos']=$row["nombre"]." ".$row["apellidos"];
  4. }

Si puedes, instala tail a ver qué te dice.
  #8 (permalink)  
Antiguo 24/08/2014, 12:24
 
Fecha de Ingreso: agosto-2014
Mensajes: 26
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problema con una consulta en ubuntu

He cambiado lo del !0 pero sigue igual.
Lo del tail, ¿cómo funciona? He hecho: tail -f procesa_acceso.php y solo me muestra las ultimas lineas

Etiquetas: mysql, ubuntu
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 06:44.