Foros del Web » Programando para Internet » PHP »

Error en consulta

Estas en el tema de Error en consulta en el foro de PHP en Foros del Web. Hola , He hecho este código con el fin de poder recojer el numero de usuarios registrados: En el configuracion.php : Código: <?php @define(USER,'root'); @define(PASS,''); ...
  #1 (permalink)  
Antiguo 06/02/2013, 07:00
 
Fecha de Ingreso: abril-2010
Mensajes: 267
Antigüedad: 14 años
Puntos: 1
Error en consulta

Hola ,
He hecho este código con el fin de poder recojer el numero de usuarios registrados:
En el configuracion.php:
Código:
<?php
@define(USER,'root');
@define(PASS,'');
@define(SERVER,'localhost');
@define(BASEURL,'http://localhost/chat/');
@define(DATABASE,'users');
?>
Y cuando llamo al archivo , recojo los datos del msql .
En el de incio:
Código:
<?php 
require_once('class_users/configuracion.php');
$host = SERVER;
$db = DATABASE;
$usuario = USER;
$password = PASS;
mysql_connect($host,$usuario,$password);
mysql_select_db($db);
$tabla = mysql_query("select * from users");
$registrados = mysql_num_rows($tabla);
print_r $registrados ;
?>
Y me da..

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /homepages/21/d407259815/htdocs/wsb6818340901/chat/index.php on line 12
  #2 (permalink)  
Antiguo 06/02/2013, 07:17
 
Fecha de Ingreso: enero-2011
Ubicación: España
Mensajes: 7
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Error en consulta

Hola probe tu código en dreamweaver y a mi me funciono, tal cual a mi me funciona te lo dejo.

Código PHP:
Ver original
  1. <?php
  2. $host = "localhost";
  3. $db = "mibase";
  4. $usuario = "root";
  5. $password = "";
  6. mysql_connect($host,$usuario,$password) or die ("error en la conexion");
  7. $tabla = mysql_query("select * from mitabla") or die("error en la sql");
  8. $registrados = mysql_num_rows($tabla);
  9. [B]print_r ($registrados);[/B] //<- fijate en esta linea cuando llamas a una funcion debes pasar los parametros entre corchetes.
  10. ?>

me devuelve 15, que es el número de filas que tengo en mitabla.
  #3 (permalink)  
Antiguo 06/02/2013, 07:25
 
Fecha de Ingreso: abril-2010
Mensajes: 267
Antigüedad: 14 años
Puntos: 1
Respuesta: Error en consulta

Hola leo ,
Gracias por tu ayuda , lo que pasa es que no quiero que recoja los datos de la conexion de la variable en ese archivo ... , quiero que los coja de configuracion.php , ¿Es lo mismo?
  #4 (permalink)  
Antiguo 06/02/2013, 07:39
 
Fecha de Ingreso: enero-2011
Ubicación: España
Mensajes: 7
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Error en consulta

Cita:
Iniciado por alejandromaringomez Ver Mensaje
Hola leo ,
Gracias por tu ayuda , lo que pasa es que no quiero que recoja los datos de la conexion de la variable en ese archivo ... , quiero que los coja de configuracion.php , ¿Es lo mismo?
Si es lo mismo lo probe de las dos formas y me funciono;
forma 1ª
Código PHP:
Ver original
  1. <?php
  2. @define(USER,'root');
  3. @define(PASS,'');
  4. @define(SERVER,'localhost');
  5. @define(BASEURL,'http://localhost/misito/');
  6. @define(DATABASE,'mibase');
  7. $host = SERVER;
  8. $db = DATABASE;
  9. $usuario = USER;
  10. $password = PASS;
  11. mysql_connect($host,$usuario,$password) or die ("error en la conexion");
  12. $tabla = mysql_query("select * from mitabla") or die("error en la sql");
  13. $registrados = mysql_num_rows($tabla);
  14. print_r($registrados);
  15. ?>
Funciona perfectamente y me devuelve 12.

Forma 2ª.
EN configuracion.php
Código PHP:
Ver original
  1. <?php
  2. @define(USER,'root');
  3. @define(PASS,'');
  4. @define(SERVER,'localhost');
  5. @define(BASEURL,'http://localhost/misito/');
  6. @define(DATABASE,'mibase');
  7. ?>
Y en archivo.php
Código PHP:
Ver original
  1. <?php
  2. require_once("configuracion.php");
  3. $host = SERVER;
  4. $db = DATABASE;
  5. $usuario = USER;
  6. $password = PASS;
  7. mysql_connect($host,$usuario,$password) or die ("error en la conexion");
  8. $tabla = mysql_query("select * from mitabla") or die("error en la sql");
  9. $registrados = mysql_num_rows($tabla);
  10. print_r($registrados);
  11. ?>

Y si devuelve exactamente lo mismo 12.

A mi me funciona perfectamente este código.
  #5 (permalink)  
Antiguo 06/02/2013, 08:42
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años
Puntos: 270
Respuesta: Error en consulta

"select * from <tabla>" y luego "mysql_num_rows"??
Supongamos que tu tabla tenga 2000 registros.Cada registro tenga 15 columnas.Cada columna, una media de 20 bytes.Eso hace que "select * from <tabla>" necesite 600000 bytes "raw" de almacenamiento (mas toda la metadata, estructura de control, etc), pon 1 Mega, que mysql tiene que llenar y enviar, y php tiene que leer.De ese mega no te interesa nada, sólo el número de filas.

"select count(*) as N from <tabla>"
Usarás en torno a los 15-30 bytes con eso.

Etiquetas: mysql, select, sql, tabla
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:25.