1. ¡OFERTA! con cupón "DIRVPS": hosting por $0,01 y también VPS Linux y Windows por $0,01 el primer mes por Interserver ← publi
    Descartar aviso
Descartar aviso
Al usar este sitio web, aceptas que nosotros y nuestros socios podamos establecer cookies para fines tales como personalizar el contenido y la publicidad. Más información.

Tutorial Web de Bienes Raices o Inmobiliarias PHP y MySQL

Tema en 'Tutoriales Desarrollo Web' iniciado por elQuique, 22 Feb 2007.

  1. rkotik

    rkotik Nuevo usuario

    Nooooooo elQuique solo para saludar no, que estoy todavia con la mano derecha levantada desde el miercoles... ya no siento el brazo...
    Jajaja!!!

    Saludos...
     
  2. elQuique

    elQuique Usuario activo

    Me han tocado el corazon jaja sabado 1.17 am :p aca les cuelgo la septima.

    Bueno, este es el que les debo desde hace días la Sexta Parte, ahora en unos días publico el siguiente la Septima Parte, ni bien se aprendan este jaja :p

    <b>Web de Bienes Raíces o Inmobiliarias Búsqueda Avanzada PHP MySQL</b>
    Formulario de Busqueda Avanzada, para consultas con PHP y MySQL
    <a href="http://www.tallerwebmaster.com/Tutorial-Web-de-Bienes-Raices-Inmobiliarias-Busqueda-Avanzada-c-105.html" target="_blank">http://www.tallerwebmaster.com/Tutorial-We...zada-c-105.html</a>

    Si bien, la idea era realizar el mantenimiento de ciudades, y como he visto que los formularios, los filtros, las búsquedas, y los listados son fruto de consultas concurrentes, decidí hacer una búsqueda avanzada, agregando una lista desplegable de ciudades y mostrar como filtrar el reporte por ciudades.
     
  3. tquishi

    tquishi Nuevo usuario

    Wenas una preguntilla destas tontas... ya veo que haces muy buenos tutos, me gustaria si pudieras acer dos tutos que para mi entender son bastantes utiles.. uno es para hacer registro de usuario ( no solo guardarlo en la bd sino que quede logeado con los cookies y demas), y uno para un carrito de la compra, los dos en php.

    Gracias de antemano :p, un saludo.
     
  4. rkotik

    rkotik Nuevo usuario

    Buenas elQuique, muy buen tuto, como siempre, y por fin pude descansar mi brazo, jajaja.
    Ahora esperamos impacientes la continuacion (ya lo aprendi este).
    Un abrazo y saludos para todos los PADRES en su dia.

    :banana: :clapping: :adios:
     
  5. elQuique

    elQuique Usuario activo

    tquishi, bienvenido al foro :)

    Esos tutoriales están en mis planes, pero lo que falta es tiempo. Igualmente sabiendo hacer el de Bienes Raíces, te sera fácil hacer el carrito de compra.

    rkotik, me alegro que sirva el tuto :), ya seguiremos con la siguiente parte ni bien tenga otro tiempillo.
     
  6. dubenla

    dubenla Guest

    Gracias el elQuique por ser tan rápido con la septima, es lo que he estado intentando hacer yo solo y ni de coña,jejeje.
    pero tengo un problema en la sexta entrega no me salian las zonas y rkotik y elQuique me dieron la solucion, ahora me pasa lo mismo pero no me sale nigun dato, se abre la tabla como si tuviera datos pero no salen, selecciono alguna zona y la tabla modifica el tamaño pero sin datos, no se si me explico bien, lo siento pero no domino los tecnicismos, creo que ya se nota, posteo el codigo por si alguien encuentra el error y me puede ayudar, gracias.
    <?php
    $conexion = mysql_connect('localhost', 'root', 'root');
    mysql_select_db('inmobiliaria');
    ?>
    <html>
    <head>
    <title>Tipo de Inmuebles</title>
    </head>
    <body>
    <h1>B&uacute;squeda de Inmuebles</h1>

    <form name="form1" method="post" action="selInmuebles.php">
    <label>Buscar:
    <input name="txtBusqueda" type="text" id="txtBusqueda">
    Zona:
    <select name="selZona" id="selZona">
    <option value="-1" selected>Todas</option>
    <?php
    $tablazona = mysql_query("SELECT * FROM zona ORDER BY nombre ASC");
    while ($registrozona = mysql_fetch_array($tablazona)) {
    ?>
    <option value="<?php echo $registrozona['id'];?>"><?php echo $registrozona['nombre']; ?></option>
    <?php
    }
    mysql_free_result($tablazona);
    ?>
    </select>
    </label>
    <input name="cdmBuscar" type="submit" id="cdmBuscar" value="Buscar">
    </form>
    <table border="1">
    <tr>
    <td>ID Inmueble </td>
    <td>Tipo Inmueble</td>
    <td>Zona</td>
    <td>Descripci&oacute;n</td>
    <td>Precio</td>
    </tr>
    <?php
    $sql = "SELECT inmuebles.*, zona.* FROM inmuebles, zona WHERE inmuebles.idzona = zona.id ";
    if (isset($_POST['txtBusqueda'])) {
    $sql .= " AND inmuebles.tipo LIKE '%" . $_POST['txtBusqueda'] . "%' ";
    if (intval($_POST['selZona']) > 0) {
    $sql .= " AND inmuebles.idzona = '" . intval($_POST['selZona']) . "'";
    }
    }
    $sql .= " ORDER BY zona.nombre ASC";
    $tablazona = mysql_query($sql);
    while ($registrozona = mysql_fetch_array($tablazona)) {
    ?>
    <tr>
    <td><?php echo $registroinmuebles['id']; ?></td>
    <td><?php echo $registroinmuebles['tipo']; ?></td>
    <td><?php echo $registroinmuebles['idzona']; ?>)<?php echo $registroinmuebles['nombre']; ?></td>
    <td><?php echo $registroinmuebles['descripcion']; ?></td>
    <td><?php echo $registroinmuebles['precio']; ?>€</td>
    </tr>
    <?php
    }
    mysql_free_result($tablainmuebles);
    mysql_close($conexion);
    ?>
    </table>
    </body>
    </html>
    por cierto tambien me sale este error:

    Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\selInmuebles.php on line 60
     
  7. dubenla

    dubenla Guest

    ya encontre le error :banana: jejejeje.
    el error era este, tenia puesto zona y era inmuebles.

    $tablazona = mysql_query($sql);
    while ($registrozona = mysql_fetch_array($tablazona)) {

    $tablainmuebles = mysql_query($sql);
    while ($registroinmuebles = mysql_fetch_array($tablainmuebles)) {

    ya funciona perfectamente, gracias :clapping:
     
  8. elQuique

    elQuique Usuario activo

    :) por lo general siempre son esos los errores, nombrar mal o apuradamente algo jeje.
     
  9. rkotik

    rkotik Nuevo usuario

    Coincido con elQuique, es algo comun no ver esos errores y lo que mas sucede es que uno tenga campos o tablas y les agregue alguna letra en el codigo y no se de cuenta, por escribir rapido y lo peorrrrr de todo es que uno lo lee el codigo y no ve el error, en esos casos recomiendo descansar un buen rato y luego volver al codigo para tener la mente abierta a descubrir el error. ;-)
     
  10. santiago2811

    santiago2811 Nuevo usuario

    Grande Quique! si necesitas ayuda en algo avisa che! no se te corto el pasto algo...:arriba:
     
  11. Tatum

    Tatum Nuevo usuario

    Genio Quique!!! la verdad es que tu tuto me ayudo muchisimo!!!
    Antes que nada saludos a todos ya que soy nuevo en este foro...
    Mi consulta esta relacionada con los menus desplegables...
    Es que me gustaria saber como hacer para que la busqueda se haga directamente con menus desplegables, por ejemplo "ciudad" y otro que sea "cantidad de ambientes"
    Ya se que para hacer eso deberiamos tener dentro de la tabla propiedades un campo que sea id_ambientes, pero en realidad mi pregunta esta mas orientada a la forma que debe tomar la parte de programacion.
    Jejeje... a lo mejor es una pavada... pero sinceramente no me doy cuenta como hacerlo.

    Un saludo a todos...

    PD: Se viene la parte 8 de este tuto o hasta aca llegamos?:)
     
  12. elQuique

    elQuique Usuario activo

    Tatum, bienvenido al foro.

    En cuanto a la busqueda que dices, en la tabla propiedades solo debes poner un campo "numero_ambientes" del tipo numerico (entero). Luego en tu formulario, no necesitas cargar nada desde la base de datos, ya que no tiene sentido guardar 1,2, 3, 4, 5, etc jeje, en ese caso vas a cargar directo el option html con un for (que permite contar en php), algo asi:

    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    <select name="selAmbientes" id="selAmbientes">
    <option value="-1" selected>Todos</option>
    <?php
    for($i=1;$i<=10;$i++) {
    ?>
    <option value="<?php echo $i;?>"><?php echo $i; ?></option>
    <?php
    }
    ?>
    </select>
    <!--c2--></div><!--ec2-->

    El for, lo que hace es contar del 1 al 10, ahi ves que dice $i=1 (ese es el comienzo) y va a repetir mientras $i sea menor o igual a 10 (o sea hasta 10), y va a ir aumentando por cada vez $i++ (cuenta 1, 2, 3, ... etc).

    Y el codigo que repite es el option que se cargara con el value (valor) de $i por tanto obtendras una listita desplegable del 1 al 10.

    Luego en la consulta SELECT del mysql agregas asi:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    if (intval($_POST['selAmbientes']) > 0) {
    $sql .= " AND inmuebles.numero_ambientes = '" . intval($_POST['selAmbientes']) . "'";
    }
    <!--c2--></div><!--ec2-->

    o igual o < si quieres hasta 3 ambientes, o > si quieres mas de 3 ambientes, etc

    :)
     
  13. elQuique

    elQuique Usuario activo

    pd: si, hay mas partes planificadas, el tema es moldear este mega ejemplo a las consultas y dudas típicas para llevar adelante un sitio completo en php y mysql.
     
  14. Tatum

    Tatum Nuevo usuario

    Esta muy bien! muchisimas gracias!!! de todas maneras te puedo pedir que me envies el codigo completo de como quedaria?

    La ultima: si yo quisiera que la busqueda se realice por menues desplegables como por ejemplo "pais" y que este menu me limite la cantidad de opciones en un segundo menu desplegable que puede ser por ejemplo "provincia"... como lo puedo hacer?

    Te agradezco infinitamente de antemano...

    Tatum
     
  15. elQuique

    elQuique Usuario activo

    La idea de estos tutoriales es que aprendan a hacerlo, por tanto no envio el codigo completo, igualmente es copiar y pegar donde se debe.

    Lo del pais y provincia implica listas enlazadas y lo hemos visto en otro tutorial aca:

    Listas dinamicas enlazadas
    <a href="http://www.tallerwebmaster.com/Tutorial-Listas-dinamicas-enlazadas-c-77.html" target="_blank">http://www.tallerwebmaster.com/Tutorial-Li...zadas-c-77.html</a>
     
  16. dmpitu

    dmpitu Nuevo usuario

    Hola de nuevo elQuique, y nuevamente :aplausos: :clapping: !!! después de recorrer (y casi perder) varios días buscando como sumar varios registros de un campo (por no preguntar aquí algo fuera de lugar) vuelvo y me encuentro con la 6º y 7º entrega! :arriba: ! Un maestro. Esto se pone + interesante cada vez.

    Ya está asimilado, y esperando la 8º! Me sorprendo de la facilidad de comprensión de los tutos. Para mi escribir código es una sopa de letras. Nunca nos hicimos amigos. :unsure:

    Una curiosidad. Que diferencia hay entre esto? Por el punto antes del = pregunto.
    $sql = "
    $sql .= "

    Y otra duda. Veo que ponés la variable $sql = varias veces antes del query. Es como si se fuera armando por partes? Como ir agrandándola, por decirlo de alguna manera?

    Adeu y GRACIAS!
     
  17. elQuique

    elQuique Usuario activo

    No temas nunca preguntar, que esa es la idea, y si es muy por fuera, abrire yo mismo otro post para responderte jeje, y si es de algo parecido lo agregamos aca para beneficio de todos. Me han preguntado varias veces cuando termina esto, y en realidad no se, y no se, justamente porque cada duda que ve que tienen todos, le agrego esa parte para dejarlo claro a mi idea original :)

    En cuanto a tu duda, te lo aclaro con numeros que capaz es mas facil.

    $a = 1;

    $a = $a + 3;

    por tanto el valor de $a sera ahora 4 (o sea era 1, luego le agregamos 3).

    ok ??

    Bien, decir $a = $a + 3 es lo mismo que decir, $a += 3;

    Si es de 1 en 1 es mas facil, ya que decir $a = $a + 1 es lo mismo que $a++

    Y bueno cuando sumamos letras, no se usa el + se usa el . (punto)

    Por tanto si tenemos:

    $a = 'hola';
    $b = $a . ' como estan?';

    el contenido final de $b sera 'hola como estan?'

    o sea que suma, o concatena ;)

    conclusion cuando digo:

    $sql = "SELECT .... blalalbl";

    le digo que $sql contenga eso, pero si le digo

    $sql .= " WHERE balblabl";

    le digo que va a dejar lo que tenia antes, y le agrega al final ese nuevo texto ;)
     
  18. dubenla

    dubenla Guest

    siguientodo la 8ª entrega estoy intentado avanzar un poquito mas y puse una segunda lista/menu con habitaciones pero nada no me sale, al darle al boton buscar me da estos errores:

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\busquedapropiedad.php on line 109

    Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\busquedapropiedad.php on line 121

    y no tengo ni idea de donde puede estar el error, dejo el codigo por si alguien me puede echar una mano, gracias.

    <form action="busquedapropiedad.php" method="post" name="form1" id="form1">
    <label>Buscar:
    <input name="txtBusqueda" type="text" id="txtBusqueda" />
    Zona:
    <select name="selZona" id="selZona">
    <option value="-1" selected="selected">Todas</option>
    <?php
    $tablazona = mysql_query("SELECT * FROM zona ORDER BY nombre ASC");
    while ($registrozona = mysql_fetch_array($tablazona)) {
    ?>
    <option value="<?php echo $registrozona['id'];?>"><?php echo $registrozona['nombre']; ?></option>
    <?php
    }
    mysql_free_result($tablazona);
    ?>
    </select>
    </label>
    <label>Habitaciones
    <select name="selHabitaciones" id="selHabitaciones">
    <option value="-1">-Indistinto-</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">M&aacute;s de 5</option>
    <?php
    $tablainmuebles = mysql_query("SELECT habitaciones FROM inmuebles ORDER BY nombre ASC");
    while ($registinmuebles = mysql_fetch_array($tablainmuebles)) {
    ?>
    <option value="<?php echo $registroinmuebles['id']; ?>"><?php echo $registroinmuebles['habitaciones']; ?></option>
    <?php
    }
    mysql_free_result($tablainmuebles);
    ?>
    </select>
    </label>
    <input name="cdmBuscar" type="submit" id="cdmBuscar" value="Buscar" />
    </form>
    <table border="1">
    <tr>
    <td><font size="3">ID Inmueble </font></td>
    <td><font size="3">Tipo Inmueble</font></td>
    <td><font size="3">Zona</font></td>
    <td><font size="3">Habitaciones</font></td>
    <td><font size="3">Descripci&oacute;n</font></td>
    <td><font size="3">Precio</font></td>
    </tr>
    <?php
    $sql = "SELECT inmuebles.*, zona.* FROM inmuebles, zona WHERE inmuebles.idzona = zona.id ";
    if (isset($_POST['txtBusqueda'])) {
    $sql .= " AND inmuebles.tipo. LIKE '%" . $_POST['txtBusqueda'] . "%' ";
    if (intval($_POST['selZona']) > 0) {
    $sql .= " AND inmuebles.idzona = '" . intval($_POST['selZona']) . "'";
    $sql .= " AND inmuebles.habitaciones. LIKE '%" . $_POST['txtBusqueda'] . "%' ";
    if (intval($_POST['selHabitaciones']) > 0) {
    $sql .= " AND inmuebles.habitaciones = '" . intval($_POST['selHabitaciones']) . "'";
    }
    }
    }
    $sql .= " ORDER BY zona.nombre ASC";
    $tablainmuebles = mysql_query($sql);
    while ($registroinmuebles = mysql_fetch_array($tablainmuebles)) {
    ?>
    <tr>
    <td><font size="3"><?php echo $registroinmuebles['id']; ?></font></td>
    <td><font size="3"><?php echo $registroinmuebles['tipo']; ?></font></td>
    <td><font size="3"><?php echo $registroinmuebles['nombre']; ?></font></td>
    <td><font size="3"><?php echo $registroinmuebles['habitaciones']; ?></font></td>
    <td><font size="3"><?php echo $registroinmuebles['descripcion']; ?></font></td>
    <td><font size="3"><?php echo $registroinmuebles['precio']; ?>&euro;</font></td>
    </tr>
    <?php
    }
    mysql_free_result($tablainmuebles);
    mysql_close($conexion);
    ?>


    perdon la 7ª entrega, jejeje, con estos fallos normal que no me salga, jejeje.

    perdon la 7ª entrega, jejeje, con estos fallos normal que no me salga, jejeje.

    :rolleyes: perdon la 7ª entrega, jejeje, con estos fallos normal que no me salga,jejeej
     
  19. elQuique

    elQuique Usuario activo

    Acá esta mal:

    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    $sql .= " AND inmuebles.habitaciones. LIKE '%" . $_POST['txtBusqueda'] . "%' ";
    <!--c2--></div><!--ec2-->

    debe ser así:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    $sql .= " AND inmuebles.habitaciones LIKE '%" . $_POST['txtBusqueda'] . "%' ";
    <!--c2--></div><!--ec2-->

    Debes tener cuidado, cada punto cuenta, y además te lo dice claro, el error esta en el mysql_fetch_array que llama una sentencia SQL y bueno lo que esta mal es la SQL, por tanto mirarla con calma te lleva a darte cuenta.
     
  20. dubenla

    dubenla Guest

    Gracias elQuique ya funciona, pero con algun fallo.
    ej:si selecciono un tipo inmueble y una zona no muestra ninguna propiedad.
    si selecciono un tipo de inmueble y un número de habitaciones muetra todos los tipos de inmuebles seleccionado indistintamente del nº de habitaciones que tenga.
    si selecciono tipo inmueble, zona y nº habitaciones no muestra niguna propiedad.
    si selecciono zona y nº habitaciones el resultado es correcto.
    y si selecciono sólo nº habitaciones tampoco muestra ningún resultado.
    Bueno me estoy enrollando mucho, es muy dificil solucionar.
     


Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·