Foros del Web » Programando para Internet » PHP »

Problemita con consultas MySQL.

Estas en el tema de Problemita con consultas MySQL. en el foro de PHP en Foros del Web. Muy buenas foreros. Este es mi primer post y bueno aprovecho para introducirme un poco, me llamo Alejandro y no soy programador ni nada por ...
  #1 (permalink)  
Antiguo 07/10/2011, 11:09
 
Fecha de Ingreso: octubre-2011
Mensajes: 7
Antigüedad: 12 años, 6 meses
Puntos: 0
Problemita con consultas MySQL.

Muy buenas foreros.
Este es mi primer post y bueno aprovecho para introducirme un poco, me llamo Alejandro y no soy programador ni nada por el estilo, pero me gusta aparender cosas interesantes y saber de todo un poco, que nunca es malo, me interesaron los lenguajes de programación y más me interesó si cabe, el diseño web.

[No me explayo más, aquí no os voy a contar si me gusta cazar patos o fumar porros, a poca gente (me incluyo) le gusta ver introducciones largas, por que admitamos que lo último que te gusta encontrarte en un post es una parrafada de texto que en definitiva a ti no te sirve.]


Una vez hecha la toma de contacto, quiero deciros que este foro me ha servido de mucha ayuda, he encontrado muchas soluciones e ideas que buscaba incluso antes de registrarme, así que una gran enhorabuena a todos.


Aquí empieza la duda

Estoy haciendo una base de datos para la inmobiliaria de un familiar, esta base de datos será una simple ayuda para mostrar información a sus clientes en persona, decidí escribirla en php por que me pareció la manera más amigable de intractuar con una base de datos de este estilo.

Hasta hace un par de días todo iba como la seda conseguí crear la tabla en MySQL:
Código PHP:
CREATE TABLE IF NOT EXISTS `inmobiliaria` (
  `
idint(11NOT NULL AUTO_INCREMENT,
  `
referenciamediumint(9NOT NULL,
  `
poblacionint(20NOT NULL,
  `
tipoterrenovarchar(10NOT NULL,
  `
superficievarchar(20NOT NULL,
  `
superficiecasavarchar(10NOT NULL,
  `
preciovarchar(20NOT NULL,
  `
nombrevarchar(70NOT NULL,
  `
apellidosvarchar(50NOT NULL,
  `
dnivarchar(11NOT NULL,
  `
direccionvarchar(255NOT NULL,
  `
telefonobigint(20NOT NULL,
  `
posttext NOT NULL,
  `
fotovarchar(255NOT NULL,
  `
DATEdatetime NOT NULL,
  
PRIMARY KEY (`id`)

Después vino el código para poder insertar datos a esta tabla, esto lo pongo con la finalidad de poder ofrecer algo de ayuda al que quiera montarse su base de datos, está bien aprender, pero mejor aun enseñar lo aprendido al que quiere aprender.

Hice un documento en el que puse los datos de la base de datos, basicamente para dejarlo todo más claro.

conectar_mysql.php
Código PHP:
    <?php
    DEFINE 
('DB_USER''root'); // Insert your database username into the quotes.
    
DEFINE ('DB_PASSWORD'''); // Insert your database password into the quotes.
    
DEFINE ('DB_HOST''localhost'); // This will most likely stay the same.
    
DEFINE ('DB_NAME''pruebas'); 
     
    
$dbc = @mysql_connect (DB_HOSTDB_USERDB_PASSWORD) OR die ('No se pudo conectar a MySql: ' mysql_error());
    @
mysql_select_db (DB_NAME) OR die('No se pudo seleccionar la tabla: ' mysql_error() );
    
?>
Luego creé el código que escribirá en la base de datos cogiendo los valores de los campos de texto y convirtiéndolos en variables, luego solo tenemos que conectar con la base de datos y decirle que la información de nuestras variables ha de ser situada en los campos correspondientes.
Código PHP:
     <?php
    
if (isset($_POST['submitted'])) {
    include (
'conectar_mysql.php');
    
        if (empty(
$_POST['ref'])) {
    echo 
'<p><font color="red">Introduce un numero de referencia.</font></p>';
    } else {
    
$referencia $_POST['ref'];
    }
     
    if (empty(
$_POST['poblacion'])) {
    echo 
'<p><font color="red">Introduce una poblacion.</font></p>';
    } else {
    
$poblacion $_POST['poblacion'];
    }
         
        if (empty(
$_POST['superficie'])) {
    echo 
'<p><font color="red">Introduce las medidas de la parcela.</font></p>';
    } else {
    
$superficie $_POST['superficie'];
    }
    
    if (empty(
$_POST['mcasa'])) {
    echo 
'<p><font color="red">Introduce las medidas de la parcela.</font></p>';
    } else {
    
$mcasa $_POST['mcasa'];
    }
         
    if (empty(
$_POST['tipoterreno'])) {
    echo 
'<p><font color="red">Introduce un tipo de propiedad</font></p>';
    } else {
    
$tipoterreno $_POST['tipoterreno'];
    }
    
    if (empty(
$_POST['precio'])) {
    echo 
'<p><font color="red">Introduce uel precio de la propiedad</font></p>';
    } else {
    
$precio $_POST['precio'];
    }
     
         if (empty(
$_POST['foto'])) {
    echo 
'<p><font color="red">Introduce uel precio de la propiedad</font></p>';
    } else {
    
$foto $_POST['foto'];
    }
     
     
    if (empty(
$_POST['nombre'])) {
    echo 
'<p><font color="red">Introduce un nombre.</font></p>';
    } else {
    
$nombre $_POST['nombre'];
    }
     
    if (empty(
$_POST['apellidos'])) {
    echo 
'<p><font color="red">Introduce un apellido.</font></p>';
    } else {
    
$apellidos $_POST['apellidos'];
    }
    
    if (empty(
$_POST['dni'])) {
    echo 
'<p><font color="red">Introduce el D.N.I.</font></p>';
    } else {
    
$dni $_POST['dni'];
    }
    
    if (empty(
$_POST['tfn'])) {
    echo 
'<p><font color="red">Introduce un numero de telefono.</font></p>';
    } else {
    
$tfn $_POST['tfn'];
    }
    
    if (empty(
$_POST['direccion'])) {
    echo 
'<p><font color="red">Introduce una direccion.</font></p>';
    } else {
    
$direccion $_POST['direccion'];
    }
     
    if (empty(
$_POST['observaciones'])) {
    echo 
'<p><font color="red">Agrega alguna observación.</font></p>';
    } else {
    
$message $_POST['observaciones'];
    }
    
        if (empty(
$_POST['foto'])) {
    echo 
'<p><font color="red">Introduce una foto.</font></p>';
    } else {
    
$foto $_POST['foto'];
    }
     
    if (
$referencia && $poblacion && $superficie && $mcasa && $precio && $tipoterreno && $nombre && $apellidos && $dni && $direccion && $tfn && $foto && $message) {
    
$query "INSERT INTO inmobiliaria (referencia, poblacion, superficie, superficiecasa, precio, tipoterreno, nombre, apellidos, dni, direccion, telefono, foto, post, date) VALUES ($referencia, '$poblacion', $superficie, $mcasa, $precio, '$tipoterreno' ,'$nombre', '$apellidos', '$dni', '$direccion', $tfn, '$foto', '$message', NOW())";
    
$result = @mysql_query($query);
     
    if (
$result) {
    echo 
'<p><font color="red">Los datos han sido guardados correctamente</font></p>';
    } else {
    echo 
'<font color="red"><p>No se pudieron añadir los datos, probablemente habras insertado un caracter que no corresponde, por ejemplo una letra en precio o viceversa, un numero en el campo nombre por poner un ejemplo.</p></font>';
    }
    } else {
    echo 
'<p><font color="red">Has de rellenar todos los campos.</font></p>';
    }
    }
    
?>
     
    <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
    
        <p><b>Referencia :</b><br />
    <input type="input" name="ref" size="25" maxlength="60" value="<?php if(isset($_POST['referencia'])) echo $_POST['referencia']; ?>" /></p>
         
    <p><b>Poblacion :</b><br />
    <input type="input" name="poblacion" size="25" maxlength="60" value="<?php if(isset($_POST['poblacion'])) echo $_POST['poblacion']; ?>" /></p>
    
    <p><b>Tipo de terreno :</b><br />
    <input type="input" name="tipoterreno" size="25" maxlength="60" value="<?php if(isset($_POST['tipoterreno'])) echo $_POST['tipoterreno']; ?>" /></p>
    


    <p><b>Superficie m²:</b><br />
    <input type="input" name="superficie" size="25" maxlength="60" value="<?php if(isset($_POST['superficie'])) echo $_POST['superficie']; ?>" /> <i>El signo ² es agregado autmaticamente.</i></p>
    
     <p><b>Superficie construida m²:</b><br />
    <input type="input" name="mcasa" size="25" maxlength="60" value="<?php if(isset($_POST['mcasa'])) echo $_POST['mcasa']; ?>" /> <i>Si no tiene casa simplemente pon NO.</i></p>
      
       <p><b>Precio :</b><br />
    <input type="input" name="precio" size="25" maxlength="60" value="<?php if(isset($_POST['precio'])) echo $_POST['precio']; ?>" /></p>

    <p><b>Nombre :</b><br />
    <input type="input" name="nombre" size="25" maxlength="60" value="<?php if(isset($_POST['nombre'])) echo $_POST['nombre']; ?>" /></p>
     
    <p><b>Apellidos :</b><br />
    <input type="input" name="apellidos" size="15" maxlength="35" value="<?php if(isset($_POST['apellidos'])) echo $_POST['apellidos']; ?>" /></p>
    
    <p><b>D.N.I. :</b><br />
    <input type="input" name="dni" size="15" maxlength="35" value="<?php if(isset($_POST['dni'])) echo $_POST['dni']; ?>" /></p>
     
    <p><b>Telefono. :</b><br />
<input type="input" name="tfn" size="15" maxlength="35" value="<?php if(isset($_POST['tfn'])) echo $_POST['tfn']; ?>" /></p>

    <p><b>Direccion. :</b><br />
<input type="input" name="direccion" size="15" maxlength="35" value="<?php if(isset($_POST['direccion'])) echo $_POST['direccion']; ?>" /></p>
     
    <p><b>Observaciones :</b><br />
     
    <textarea rows="7" cols="55" name="message"><?php if(isset($_POST['observaciones'])) echo $_POST['message']; ?></textarea></p>     
    
    <b>foto :</b><br />
<input type="input" name="foto" size="15" maxlength="35" value="<?php if(isset($_POST['foto'])) echo $_POST['foto']; ?>" />
    <p><input type="submit" name="submit" value="Agregar" /></p>
    <input type="hidden" name="submitted" value="TRUE" /></p>
    </form>
  #2 (permalink)  
Antiguo 07/10/2011, 11:14
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 2 meses
Puntos: 128
Respuesta: Problemita con consultas MySQL.

hola hidra, bienvenido no entendi el problema real que te sucede, puedes ser un poco mas especifico (si te arroja error, no trae lo que deseas, etc..)


Saludos.


__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #3 (permalink)  
Antiguo 07/10/2011, 11:19
 
Fecha de Ingreso: octubre-2011
Mensajes: 7
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Problemita con consultas MySQL.

La siguiente fase fue un sistema en el que yo pudiera hacer consultas a MySQL a través de un código, así que me dispuse a crear un archivo HTML en el que recojo los datos introducidos.


Consultas.html
Código PHP:
<html>
<
head>
</
head>
<
body>

    <
h2>Digite la referencia del terreno.</h2>
        <
form method="POST" action="consultar.php">

        <
input type="text" name="referencia"></input><br />
        <
br />
        
        <
h2>Precio</h2><br />
        <
input type="text" name="precio"></input>
        
        <
h2>Tipo de propiedad</h2><br />
        <
input type="text" name="tipo"></input>  Escribe cortijo para ver cortijos o terreno para ver los terrenos.
        
        
    </
br></br>
        <
input type="submit" value="Consultar"></input>


</
form>

</
body>
</
html
Pero aquí viene el problema, yo creé un documento PHP en el que recogía los datos introducidos los pasaba a variables y luego solo tenía que conectar con la base de datos y darle mis variables, o eso pensaba yo aquí os lo dejo

consultar.php

Código PHP:
<?php

include('conectar_mysql.php');
include(
'cargarestilo.php');

$referencia $_POST['referencia'];  

$precio $_POST['precio'];

$tipo $_POST['tipo'];

    
$consultamysql_query("SELECT * FROM inmogea WHERE referencia='$referencia' AND precio=$precio AMD tipo=$tipo");  
     

     if(
$row mysql_fetch_array($consulta)) {
        
        echo 
'<div id="base"><div id="titulobox"><p><b><h1>Consulta existosa<h1></b></div>
        
        <br /> <br /> <br />

        <div id="ref"><b>Numero de referencia</b></div><div id="texto">'
.$row['referencia'].'</div><br />

        <div id="poblacion"><b>Poblacion</b></div><div id="texto">'
.$row['poblacion'].'</div><br />
        
        <div id="terreno"><b>¿tiene cortijo o solo terreno?</b></div><div id="texto">'
.$row['tipoterreno'].'</div><br />
        
        <div id="superficie"><b>Superficie</b></div><div id="texto">'
.$row['superficie'].'m²</div><br />
        
        <div id="superficiecasa"><b>Superficie construida</b></div><div id="texto">'
.$row['superficiecasa'].'m²</div><br />
        
        <div id="superficiecasa"><b>Precio</b></div><div id="texto">'
.$row['precio'].'€</div><br />
        
        <div id="imagen"><img src="imagenes/casas/'
.$row['foto'].'"></div>';
        
        
while(
$row=mysql_fetch_array($consulta));
print
"</div>";
}
else {
print 
"No hay registros en la base de datos";
}

 

?>
Llevo dándole vueltas al código dos días, pero no consigo que me muestre el resultado de la base de datos después de haber filtrado con las 3 consultas.
Me vuelvo loco y me imagino que no será muy difícil pero mi conocimiento de SQL es reducido.

De antemano muchas gracias y de nuevo mi enhorabuena.

Alejandro.
  #4 (permalink)  
Antiguo 07/10/2011, 11:22
 
Fecha de Ingreso: octubre-2011
Mensajes: 7
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Problemita con consultas MySQL.

Cita:
Iniciado por bUllan9ebrio Ver Mensaje
hola hidra, bienvenido no entendi el problema real que te sucede, puedes ser un poco mas especifico (si te arroja error, no trae lo que deseas, etc..)


Saludos.


Hubo un pequeño percance, mi artículo era demasiado largo y lo he tenido que escribir en 2 partes, ya lo he publicado, muchas gracias por la rápida respuesta.

Pdt: si, es verdad tardé lo mio entre uno y otro.
  #5 (permalink)  
Antiguo 07/10/2011, 11:27
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 2 meses
Puntos: 128
Respuesta: Problemita con consultas MySQL.

Mira prueba con esto :

Código PHP:
Ver original
  1. <?php
  2. include('conectar_mysql.php');
  3. include('cargarestilo.php');
  4. $referencia = $_POST['referencia'];  
  5. $precio = $_POST['precio'];
  6. $tipo = $_POST['tipo'];
  7. $consulta= mysql_query("SELECT * FROM inmogea WHERE referencia='$referencia' AND precio=$precio AMD tipo=$tipo");  
  8. $total=mysql_num_rows($consulta);
  9. if ($total > 0)
  10. {
  11.     while($row=mysql_fetch_array($consulta))
  12.     {
  13.         echo
  14.             '
  15.                 <div id="base"><div id="titulobox"><p><b><h1>Consulta existosa<h1></b></div>
  16.                 <br /> <br /> <br />
  17.                 <div id="ref"><b>Numero de referencia</b></div><div id="texto">'.$row['referencia'].'</div><br />
  18.                 <div id="poblacion"><b>Poblacion</b></div><div id="texto">'.$row['poblacion'].'</div><br />
  19.                 <div id="terreno"><b>¿tiene cortijo o solo terreno?</b></div><div id="texto">'.$row['tipoterreno'].'</div><br />
  20.                 <div id="superficie"><b>Superficie</b></div><div id="texto">'.$row['superficie'].'m²</div><br />
  21.                 <div id="superficiecasa"><b>Superficie construida</b></div><div id="texto">'.$row['superficiecasa'].'m²</div><br />
  22.                 <div id="superficiecasa"><b>Precio</b></div><div id="texto">'.$row['precio'].'€</div><br />
  23.                 <div id="imagen"><img src="imagenes/casas/'.$row['foto'].'"></div>
  24.             ';
  25.     }
  26. }
  27. else
  28. {
  29.     echo "No hay registros en la base de datos";
  30. }
  31. ?>

Tenias mal hecho el if, el if es una condición que tú aplicas para que realize el flujo deseado, con mysql_num_rows cuentas la cantidad de registros que trae la consulta, luego realizas la condición de que si trae más que 0 te muestre lo que deseas sino que aparezca el mensaje, espero que te quede claro, sino comentalo y trataré de explicarlo mejor.


Saludos.


__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #6 (permalink)  
Antiguo 07/10/2011, 11:30
Avatar de Ryo
Ryo
 
Fecha de Ingreso: marzo-2008
Ubicación: Bilbao
Mensajes: 269
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: Problemita con consultas MySQL.

Entiendo que no tienes ningún error y que solo buscas compartir la información, servir de inspiración y recibir consejo. Primero de todo, ánimo con tu proyecto.

No tengo mucho tiempo ahora, pero te daré un par de consejos rápidos si me lo permites, sobre todo orientados a la base de datos.

1. Entiendo que la referencia de una vivienda es única y por tanto no tienes necesidad de un id, aunque tampoco pasa nada grave por tener dos claves posibles.

2. El tipo de superficie es varchar. Te aconsejo que hagas lo mismo que has hecho con población y le des un código que haga referencia a otra tabla de la base de datos de donde cojas realmente el varchar. Un código no es visible de cara al usuario y no va a cambiar nunca. Si lo dejas libre, un tipo podrá ser "casa de campo", otro "casa en el campo", otro "casa en la naturaleza"... Y las búsquedas serán muchísimo más complicadas.

3. Haría también otra tabla aparte para fotos con dos campos: referencia a la vivienda y la foto en sí. De esa forma, una vivienda puede tener varias fotos, porque ahora mismo lo limitas a una sola.

Edit: Vaya, sí que había un problema. Me he puesto a escribir y hasta después de enviarlo no he visto que has puesto un nuevo mensaje explicándolo...
  #7 (permalink)  
Antiguo 07/10/2011, 11:34
Avatar de Ryo
Ryo
 
Fecha de Ingreso: marzo-2008
Ubicación: Bilbao
Mensajes: 269
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: Problemita con consultas MySQL.

Ahora, respondiendo a tu consulta.

Si tipo es el tipoterreno que definías al principio, ten en cuenta que es un varchar y por tanto requiere comillas simples (tipo='$tipo').
  #8 (permalink)  
Antiguo 07/10/2011, 11:49
 
Fecha de Ingreso: octubre-2011
Mensajes: 7
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Problemita con consultas MySQL.

Cita:
Iniciado por Ryo Ver Mensaje
Entiendo que no tienes ningún error y que solo buscas compartir la información, servir de inspiración y recibir consejo. Primero de todo, ánimo con tu proyecto.

No tengo mucho tiempo ahora, pero te daré un par de consejos rápidos si me lo permites, sobre todo orientados a la base de datos.

1. Entiendo que la referencia de una vivienda es única y por tanto no tienes necesidad de un id, aunque tampoco pasa nada grave por tener dos claves posibles.

2. El tipo de superficie es varchar. Te aconsejo que hagas lo mismo que has hecho con población y le des un código que haga referencia a otra tabla de la base de datos de donde cojas realmente el varchar. Un código no es visible de cara al usuario y no va a cambiar nunca. Si lo dejas libre, un tipo podrá ser "casa de campo", otro "casa en el campo", otro "casa en la naturaleza"... Y las búsquedas serán muchísimo más complicadas.

3. Haría también otra tabla aparte para fotos con dos campos: referencia a la vivienda y la foto en sí. De esa forma, una vivienda puede tener varias fotos, porque ahora mismo lo limitas a una sola.

Edit: Vaya, sí que había un problema. Me he puesto a escribir y hasta después de enviarlo no he visto que has puesto un nuevo mensaje explicándolo...
Muchas gracias Ryo por tu respuesta y agradezco tu tiempo.

En realidad si que me lanza un error y es : mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\yasi\consultar.php on line 14.

Perdona que no lo subiera anteriormente, pero al ser un artículo tan largo perdí un poco la estructura en mi mente y me dejé cosas fuera como este error o que la imagen que quiero exponer no es una foto de la casa sino una foto desde el satélite en el que veríamos todo el terreno, por eso de solo poner una, lo que no quiere decir que desprecie tu propuesta, totalmente al contrario, agradezco tu apoyo y tu tiempo .

En relación a la segunda parte de tu post, me ha parecido de gran ayuda pero en este momento solo tenemos dos valores, cortijo y terreno.

Muchas gracias de nuevo Ryo.

Un saludo.
  #9 (permalink)  
Antiguo 07/10/2011, 11:53
 
Fecha de Ingreso: octubre-2011
Mensajes: 7
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Problemita con consultas MySQL.

Cita:
Iniciado por bUllan9ebrio Ver Mensaje
Mira prueba con esto :

Código PHP:
Ver original
  1. <?php
  2. include('conectar_mysql.php');
  3. include('cargarestilo.php');
  4. $referencia = $_POST['referencia'];  
  5. $precio = $_POST['precio'];
  6. $tipo = $_POST['tipo'];
  7. $consulta= mysql_query("SELECT * FROM inmogea WHERE referencia='$referencia' AND precio=$precio AMD tipo=$tipo");  
  8. $total=mysql_num_rows($consulta);
  9. if ($total > 0)
  10. {
  11.     while($row=mysql_fetch_array($consulta))
  12.     {
  13.         echo
  14.             '
  15.                 <div id="base"><div id="titulobox"><p><b><h1>Consulta existosa<h1></b></div>
  16.                 <br /> <br /> <br />
  17.                 <div id="ref"><b>Numero de referencia</b></div><div id="texto">'.$row['referencia'].'</div><br />
  18.                 <div id="poblacion"><b>Poblacion</b></div><div id="texto">'.$row['poblacion'].'</div><br />
  19.                 <div id="terreno"><b>¿tiene cortijo o solo terreno?</b></div><div id="texto">'.$row['tipoterreno'].'</div><br />
  20.                 <div id="superficie"><b>Superficie</b></div><div id="texto">'.$row['superficie'].'m²</div><br />
  21.                 <div id="superficiecasa"><b>Superficie construida</b></div><div id="texto">'.$row['superficiecasa'].'m²</div><br />
  22.                 <div id="superficiecasa"><b>Precio</b></div><div id="texto">'.$row['precio'].'€</div><br />
  23.                 <div id="imagen"><img src="imagenes/casas/'.$row['foto'].'"></div>
  24.             ';
  25.     }
  26. }
  27. else
  28. {
  29.     echo "No hay registros en la base de datos";
  30. }
  31. ?>

Tenias mal hecho el if, el if es una condición que tú aplicas para que realize el flujo deseado, con mysql_num_rows cuentas la cantidad de registros que trae la consulta, luego realizas la condición de que si trae más que 0 te muestre lo que deseas sino que aparezca el mensaje, espero que te quede claro, sino comentalo y trataré de explicarlo mejor.


Saludos.


Muchisimas gracias bUllan9ebrio a ti tambien, he modificado el código pero me sigue dando el mismo fallo que antes, por cierto como le comenté a Ryo se me olvidó publicar y es el siguiente :

mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\yasi\consultar.php on line 14.

No se que puede ser, pero tiene pinta de que nos vamos a reir cuando lo averigüemos, mucisimas gracias de nuevo.

Un saludo.
  #10 (permalink)  
Antiguo 07/10/2011, 12:07
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 2 meses
Puntos: 128
Respuesta: Problemita con consultas MySQL.

Hidra , creo que encontré el error

Fijate en esto:

Código PHP:
Ver original
  1. AMD tipo='$tipo'";

Amd deberia ser AND



Saludos.


__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #11 (permalink)  
Antiguo 07/10/2011, 12:30
 
Fecha de Ingreso: octubre-2011
Mensajes: 7
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Problemita con consultas MySQL.

Cita:
Iniciado por bUllan9ebrio Ver Mensaje
Hidra , creo que encontré el error

Fijate en esto:

Código PHP:
Ver original
  1. AMD tipo='$tipo'";

Amd deberia ser AND



Saludos.


Jajaja, te dije que nos reiríamos, pero desgraciadamente compañero ese no es el problema en si, me he tomado mi tiempo y he revisado todos el proyecto y creo tener clara la información que me ayudaría a solcuionar todo esto.

En primer lugar, me gustaría saber como hacer para que pudiera hacer todas las consultas a la vez aunque una de ellas no tenga ningún valor y que claro MySQL entendiera, es decir, que de igual lo que escriba en los campos, que mientras haya algo en común en las 3 consultas en total o por separado, me lo mostrará.

Y en segundo y último lugar, no tengo claro si sería necesario lo que he leido en algunas páginas de establecer un orden jerárquico.

De nuevo gracias por tu tiempo y suerte.

Un saludo.
  #12 (permalink)  
Antiguo 07/10/2011, 12:51
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 2 meses
Puntos: 128
Respuesta: Problemita con consultas MySQL.

Prueba con esto y ejecutalo en PhpMyAdmin:

Código PHP:
Ver original
  1. <?php
  2. include('conectar_mysql.php');
  3. include('cargarestilo.php');
  4. $referencia = $_POST['referencia'];  
  5. $precio = $_POST['precio'];
  6. $tipo = $_POST['tipo'];
  7. $consulta= "SELECT * FROM inmogea WHERE referencia='$referencia' AND precio='$precio' AND tipo='$tipo'";
  8. echo "$consulta <br>";
  9. $ejecuta=mysql_query($consulta);
  10. $total=mysql_num_rows($ejecuta);
  11. if ($total > 0)
  12. {
  13.     while($row=mysql_fetch_array($consulta))
  14.     {
  15.         echo
  16.             '
  17.                 <div id="base"><div id="titulobox"><p><b><h1>Consulta existosa<h1></b></div>
  18.                 <br /> <br /> <br />
  19.                 <div id="ref"><b>Numero de referencia</b></div><div id="texto">'.$row['referencia'].'</div><br />
  20.                 <div id="poblacion"><b>Poblacion</b></div><div id="texto">'.$row['poblacion'].'</div><br />
  21.                 <div id="terreno"><b>¿tiene cortijo o solo terreno?</b></div><div id="texto">'.$row['tipoterreno'].'</div><br />
  22.                 <div id="superficie"><b>Superficie</b></div><div id="texto">'.$row['superficie'].'m²</div><br />
  23.                 <div id="superficiecasa"><b>Superficie construida</b></div><div id="texto">'.$row['superficiecasa'].'m²</div><br />
  24.                 <div id="superficiecasa"><b>Precio</b></div><div id="texto">'.$row['precio'].'€</div><br />
  25.                 <div id="imagen"><img src="imagenes/casas/'.$row['foto'].'"></div>
  26.             ';
  27.     }
  28. }
  29. else
  30. {
  31.     echo "No hay registros en la base de datos";
  32. }
  33. ?>


Saludos.


__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #13 (permalink)  
Antiguo 07/10/2011, 13:05
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Problemita con consultas MySQL.

Agregale esto a tus mysql_query para no estar adivinando el error:

Código PHP:
Ver original
  1. mysql_query('AQUI LA CONSULTA') or die(mysql_error());

PD: comenta que error te da.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Etiquetas: mysql, tabla, variables
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 10:22.