Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - programador independiente

Páginas: 1 2 [3]
41
Que tal amigo dongo de nueva cuenta yo!!

He hecho una modificación en esta parte del código:

antes estaba así:
Código: [Seleccionar]
$id_anuncio = $_GET['id_mun'];
    echo "el id recibido es: $id <br><br>";

ahora ha quedado así:
Código: [Seleccionar]
$id_anuncio = $_GET['id_mun'];
    echo "el id recibido es: $id_anuncio <br><br>";

y se me ha desaparecido un segundo error y ahora veo que si muestra en pantalla el id_mun perteneciente a cada registro.

Espero no estarme equivocando y enredando más las cosas :o

Ahora sólo me muestra en pantalla 1 error, adjunto la imagen para que le des una mirada por favor. Dios te Bendiga y te Conserve la Salud.

42
Saludos amigo dongo!!

Creo que vamos abanzando, todo gracias a tu ayuda, quité el símbolo de $ de la parte que me indicaste y desapareció 1 de los 3 errores que me mandaba en pantalla.

ahora el código de esa parte ha quedado así:

Código: [Seleccionar]
<a href="detalles_prueba.php?id_anuncio=<?php echo $id?>"><img id="img_llave" src="../img/llave_detalle.png"/></a><label id="llave">Ver Detalles</label>
adjunto la imagen de los 2 errores que aun me marca. Trato de resolverlo poniendo y quitando varias cosas, pero mis esfuerzos son infructuosos  :-\

Gracias por todo Dios te Bendiga y te Conserve la Salud.

43
Saludos amigo dongo!!!  Gracias por tomarte siempre la molestia y el tiempo de ayudarme, y por convertirte en mi maestro  ;D!!

Me sigue dando fallos, pero con tu ayuda y volviendo a leer todo lo que comentan en el enlace que dejé más arriba, me doy cuenta de que el id que debo poner en mi caso es el "id_mun" de la tabla llamada propiedades, bueno eso creo yo, porque cuando doy un click al enlace de la página busca_grand_prueba.php para ir a detalles_prueba.php en la url si me pone el id correcto de cada registro.

Voy poniendo el código por partes y voy expresando mis dudas

En la siguiente línea de código no entiendo que campo se toma entre los corchetes, por lo que he leído es el campo de la tabla "propiedades" que enlaza con la tabla "municipios_monterrey" si es así en mi caso es 'id_mun'sino me equivoco:
Código: [Seleccionar]
<?php $id $registro['id_mun'];?>
La siguiente línea de código la dejé igual
Código: [Seleccionar]
<a href="detalles_prueba.php?$id_anuncio=<?php echo $id?>"><img id="img_llave" src="../img/llave_detalle.png"/></a><label id="llave">Ver Detalles</label>
Hasta aquí todo este código es en lapágina llamada busca_grand_prueba.php

Ahora el código de la página detalles_prueba.php

En la siguiente línea de código tomó la variable que mande que es $id_anuncio
Código: [Seleccionar]
$id_anuncio = $_GET['id_anuncio'];
Aquí esta la query
Código: [Seleccionar]
$sql=mysql_query ("
                    SELECT propiedades.imagen, propiedades.direccion, propiedades.colonia,propiedades.municipio, propiedades.estado, propiedades.estatus,propiedades.precio, propiedades.superficie, propiedades.construccion,propiedades.plantas, propiedades.recamaras, propiedades.baños,
                    FROM propiedades, municipios_monterrey
                    WHERE propiedades.id_mun = municipios_monterrey.id_mun AND propiedades.id_mun = $id_anuncio");

Y el código para que me muestre los campos que deseo
Código: [Seleccionar]
while ($registro = mysql_fetch_array($sql))
        {     
        echo "Imagen: ".$registro['imagen']."<br>";
        echo "Direccion: ".$registro['direccion']."<br>";
        echo "Colonia: ".$registro['colonia']."<br>";
        echo "Municipio: ".$registro['municipio']."<br>";
        echo "Estado: ".$registro['estado']."<br>";
        echo "Estatus: ".$registro['estatus']."<br>";
        echo "Precio: ".$registro['precio']."<br>";
        echo "Superficie: ".$registro['superficie']."<br>";
        echo "Construccion: ".$registro['construccion']."<br>";
        echo "Plantas: ".$registro['plantas']."<br>";
        echo "Recamaras: ".$registro['recamaras']."<br>";
        echo "Baños: ".$registro['baños']."<br>";       
        }
?>

dejo una imagen de los errores que me arroja, estos errores me los arroja en la página detalles_prueba.php

Gracias por todo amigo y maestro dongo, Dios te Bendiga y te Conserve la Salud.

44
Buen día amigos. (Voy de nuevo con toda mi ignorancia  :-[ amigo dongo).

Quiero pedir su ayuda para crear la página detalles.php

Estoy haciendo una web con código php para una inmobiliaria, ya tengo casi terminado el enlace donde esta el buscador de las viviendas (digo casi porque aún me falta la paginación), pero ya funciona el motor de búsqueda; ahora lo que intento hacer es la página donde me muestre dinámicamente los detalles de la vivienda que elija el ususrio.

Soy novato en PHP, tomé el ejemplo de cómo hacer una página detalles.php de la siguiente dirección:

http://www.forosdelweb.com/f18/como-crear-pagina-detalle-php-925191/

Fui adaptando el código al mío, pero no me da resultado. Dejo mi código esperando me pudiesen ayudar, además de unas imágenes de los errores que me aparecen y de la informacion de la base de datos a la que me conecto.

nombre del archivo:
busca_grand_prueba.php
Código: [Seleccionar]
<?php
$tablaciudades mysql_query("SELECT * FROM municipios_monterrey ORDER BY nombre_mun ASC"); // Seleccionamos las ciudades de la tabla ciudades
while ($registrociudad mysql_fetch_array($tablaciudades)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>

<option value="<?php echo $registrociudad['id_mun']; ?>"><?php echo $registrociudad['nombre_mun']; ?></option>
<?php
// termina la zona de repeticion
mysql_free_result($tablaciudades); // se libera la memoria usada por la tabla
?>

</select>

<input type="submit" name="cmdBuscar" id="cmdBuscar" value="&nbsp;Buscar&nbsp;">
</form>

<h5>Los campos marcados con (*) son obligatorios</h5>
</aside>
<article id="derecha">
<h2>Resultados de su b&uacute;squeda</h2>
<?php
$sql "SELECT propiedades.*, municipios_monterrey.* FROM propiedades, municipios_monterrey WHERE propiedades.id_mun = municipios_monterrey.id_mun ";
if (isset($_POST['txtBusqueda'])) {
$sql .= " AND propiedades.colonia LIKE '%" $_POST['txtBusqueda'] . "%' ";
if (intval($_POST['selCiudad']) > 0) {
$sql .= " AND propiedades.id_mun = '" intval($_POST['selCiudad']) . "'";
}
}
$sql .= " ORDER BY municipios_monterrey.nombre_mun ASC";
$tabla mysql_query($sql);
/*de aqui hasta el "else{" es el codigo para poner el mensaje de "no se encontraron resultados y el "}" que cierra esta al final, despues de "mysql_close($conexion);".*/
$num_filas=mysql_num_rows($tabla);
if($num_filas==0){
echo "<center>No se encontraron resultados para su b&uacute;squeda</center>";
}
else{
while ($registro mysql_fetch_array($tabla)) 
{
?>


<?php $id $registro['id_dir'];?><!--Esta línea es parte del código para hacer la pagina detalles.php, sin embargo no entiendo que campo debe ir entre los corchetes-->


<div class="propiedades">
<img id="img_array"src="<?php echo $registro['imagen'];?>"/><br><br>
<label>Direccion:<?php echo $registro['direccion']; ?></label><br>
<label>Colonia:<?php echo $registro['colonia']; ?></label><br>
<label>Municipio:<?php echo $registro['municipio']; ?></label><br>
<label>Estado:<?php echo $registro['estado']; ?></label><br>
<label>Estatus:<?php echo $registro['estatus']; ?></label><br>
<img id="img_precio" src="../img/etiqueta_precio.png"/><label id="precio"><?php echo $registro['precio'];?></label><br>

<!--la siguiente línea es parte del código para hacer la página detalles.php-->
<a href="detalles_prueba.php?$id_anuncio=<?php echo $id?>"><img id="img_llave" src="../img/llave_detalle.png"/></a><label id="llave">Ver Detalles</label>
</div>

<?php
}
mysql_free_result($tabla);
mysql_close($conexion);
}
?>

nombre del archivo:
detalles_prueba.php
Código: [Seleccionar]
<!--a partir de aqui van el código php que copie y que intento adaptar a mi código-->
<?php  
    
$id_anuncio $_GET['id_dir']; 
    
echo "el id recibido es: $id <br><br>"
    
$sql=mysql_query (
                     SELECT propiedades.imagen, propiedades.direccion, propiedades.colonia,propiedades.municipio, propiedades.estado, propiedades.estatus,propiedades.precio, propiedades.superficie, propiedades.construccion,propiedades.plantas, propiedades.recamaras, propiedades.baños,
                    FROM propiedades, municipios_monterrey 
                     WHERE propiedades.id_mun = municipios_monterrey.id_mun AND propiedades.id_dir = 
$id_anuncio");
     
    
while ($registro mysql_fetch_array($sql)) 
        
{     
        
echo "Imagen: ".$registro['imagen']."<br>";
        
echo "Direccion: ".$registro['direccion']."<br>";
        
echo "Colonia: ".$registro['colonia']."<br>";
        
echo "Municipio: ".$registro['municipio']."<br>";
        
echo "Estado: ".$registro['estado']."<br>";
        
echo "Estatus: ".$registro['estatus']."<br>";
        
echo "Precio: ".$registro['precio']."<br>";
        
echo "Superficie: ".$registro['superficie']."<br>";
        
echo "Construccion: ".$registro['construccion']."<br>";
        
echo "Plantas: ".$registro['plantas']."<br>";
        
echo "Recamaras: ".$registro['recamaras']."<br>";
        
echo "Baños: ".$registro['baños']."<br>";

nombre de la base de datos: grandeza

nombre de la tabla 1: municipios_monterrey
contiene 2 campos:
id_mun  (esta campo es el que se enlaza con la tabla 2)
nombre_mun

nombre de la tabla 2: propiedades
contiene 14 campos:
id_dir
imagen
direccion
colonia
municipio
estado
estatus
precio
superficie
construccion
baños
recamaras
plantas
id_mun (este campo es el que se enlaza con la tabla 1)

Gracias por todo, Dios les Bendiga y les Conserve la Salud.

45
Saludos amigo dongo.

Creo que somo compañeros del mismo dolor, también soy pobre!!

Los libros me los han prestado, y los de editorial anaya-multimedia están carísimos para mi economía.

Seguiré los cursos que me indicas y los consejos que me has brindado, pues ahora mismo el siguiente reto que tengo es ponerle a la web, la paginación y ya estoy en ello, espero poder hacerlo, sino ya sabrás que vendré a pedir tu inmejorable ayuda y es que la verdad antes de ti nadie me había echado una mano en los diferentes foros que he estado preguntando.

Bueno Amigo dongo, no me despido sólo te digo hasta pronto, Yo no puedo pagarte por la ayuda que me has brindado, pero Dios te recompensará, Dios te Bendiga y te Conserve la Salud.

46
Saludos amigo dongo.

De verdad que eres un Maestro, ha funcionado perfectamente bien.

Quisiera hacerte una pregunta.

A raíz de que me he visto en la necesidad de hacer un buscador para la web que estoy construyendo, me ha interesado mucho aprender PHP y MySQL, y la verdad es que me queda claro que tú sabes programar en PHP muy bien, quisiera pedirte tu consejo en cuanto a la orientación de Qué libros o video-tutoriales o página web, me recomiendas para iniciarme en PHP y MySQL empezando desde cero.

He visto por la red que varias personas recomiendan estos títulos:

Libro Básico:
autor: Luis Miguel Cabezas Granados
          PHP6 432 páginas

Libro Avanzado
autor: Ed Lecky-Thompson, Steven D. Nowicki y Tomas Myer
         PHP6 Profesional 752 páginas

Me prestaron un libro llamado:
USERS PHP6 Básico
Sitios dinámicos con el lenguaje más robusto
autor: Francisco Minera

Y el avanzado:
USERS PHP6 Avanzado
PHP6 Avanzado
autor: Francisco Minera

Crees que son buenos estos libros que me han prestado?

Con toda tu experiencia y conocimientos amigo dongo, qué libro me recomiendas para nivel básico y avanzado tanto para PHP y MySQL?

Saludos amigo, gracias infinitamente por tu ayuda, Dios te Bendiga y te Conserve la Salud.

47
Buen día dongo:

Amigo eres genial, se ha alineado perfectamente!!

He comprendido lo de la tabla, y el código esta correcto como lo escribiste;  sabes, en un principio era así como tenía idea de hacerlo, por lo que vi del video-tutorial, pero al final adapté el código como bien me indicaste con las "labels" y me ha gustado como quedó al final.

Amigo dongo te quisiera pedir tu ayuda de nueva cuenta con otro conflicto que tengo:

Quisiera ponerle al código php una condicional "if else" para que cuando no encuentre resultados en la búsqueda, muestre un mensaje que diga: "no se encontraron resultados"; he visto ejemplos de cómo hacerlo pero no he logrado incrustarlo en mi código.

Cómo ya te habrás dado cuenta tengo conocimientos básicos en html5 y CSS3, pero en php soy muy inexperto.

Gracias por todo amigo, Tu ayuda ha sido fundamental para mi trabajo, te agradezco infinitamente. Saludos, Dios te Bendiga y te Conserve la Salud.

Dejo mi Código nuevamente:
Código: [Seleccionar]
<section id="contenedor_buscador">
    <aside id="izquierda">
<h4>Buscar Propiedades de Nuevo Le&oacute;n</h4><br>
<form name="form1" method="post" action="busca_grand_nl.php">
<label>B&uacute;squeda por Colonia:</label>
<input type="text" name="txtBusqueda" id="txtBusqueda">
<label>Elija Municipio*:</label>
<select name="selCiudad" id="selCiudad">
<option value="-1" selected>Ver todas las Propiedades</option>
<?php
$tablaciudades mysql_query("SELECT * FROM municipios_monterrey ORDER BY nombre_mun ASC"); // Seleccionamos las ciudades de la tabla ciudades
while ($registrociudad mysql_fetch_array($tablaciudades)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>

<option value="<?php echo $registrociudad['id_mun']; ?>"><?php echo $registrociudad['nombre_mun']; ?></option>
<?php
// termina la zona de repeticion
mysql_free_result($tablaciudades); // se libera la memoria usada por la tabla
?>

</select>

<input type="submit" name="cmdBuscar" id="cmdBuscar" value="&nbsp;Buscar&nbsp;">
</form>

<h5>Los campos marcados con (*) son obligatorios</h5>
</aside>
<article id="derecha">
<h2>Resultados de su b&uacute;squeda</h2>
<?php
$sql "SELECT propiedades.*, municipios_monterrey.* FROM propiedades, municipios_monterrey WHERE propiedades.id_mun = municipios_monterrey.id_mun ";
if (isset($_POST['txtBusqueda'])) {
$sql .= " AND propiedades.colonia LIKE '%" $_POST['txtBusqueda'] . "%' ";
if (intval($_POST['selCiudad']) > 0) {
$sql .= " AND propiedades.id_mun = '" intval($_POST['selCiudad']) . "'";
}
}
$sql .= " ORDER BY municipios_monterrey.nombre_mun ASC";
$tabla mysql_query($sql);
while ($registro mysql_fetch_array($tabla)) 
{
?>


<div class="propiedades">
<img id="img_array"src="<?php echo $registro['imagen'];?>"/><br><br>
<label>Direccion:<?php echo $registro['direccion']; ?></label><br>
<label>Colonia:<?php echo $registro['colonia']; ?></label><br>
<label>Municipio:<?php echo $registro['municipio']; ?></label><br>
<label>Estado:<?php echo $registro['estado']; ?></label><br>
<label>Plantas:<?php echo $registro['plantas']; ?></label><br>
<label>Rec&aacute;maras:<?php echo $registro['recamaras']; ?></label><br>
<label>Ba&ntilde;os:<?php echo $registro['banos']; ?></label><br>
<label>Precio:<?php echo $registro['precio']; ?></label>
</div>

<?php
}
mysql_free_result($tabla);
mysql_close($conexion);
?>

</table>
</article>
</section>

48
Saludos amigo dongo.

Sabes, en un principio si le di anchura relativa al div, luego vi que el texto (el que va dentro de la variable) cuando es muy largo y pasa a la siguiente línea no respeta el margen que le doy a la izquierda, entiendo que este margen lo aplico a la etiqueta, ya intenté muchas cosas pero no logro que se elinee el texto de la variable (como digo cuando es muy largo y pasa a la siguiente línea).

Te adjunto una imagen donde señalo lo que trato de explicar en el párrafo de arriba y dejo el código:

codigo php:
Código: [Seleccionar]
<div class="propiedades">
<img id="img_array"src="<?php echo $registro['imagen'];?>" width:"100px" height="100px"/><br>
<label>Direccion:<?php echo $registro['direccion']; ?></label><br>
<label>Colonia:<?php echo $registro['colonia']; ?></label><br>
<label>Municipio:<?php echo $registro['municipio']; ?></label><br>
<label>Estado:<?php echo $registro['estado']; ?></label><br>
<label>Plantas:<?php echo $registro['plantas']; ?></label><br>
<label>Rec&aacute;maras:<?php echo $registro['recamaras']; ?></label><br>
<label>Ba&ntilde;os:<?php echo $registro['banos']; ?></label><br>
<label>Precio:<?php echo $registro['precio']; ?></label>
</div>

codigo CSS:
Código: [Seleccionar]
.propiedades{
background:#055273;
border:2px solid 053C53;
border-radius:20px;
display:block;
float:left;
    font-family: verdana;
    font-size: .8em;
    margin-bottom: 10px;
margin-left:2.3%;
margin-top:10px;
min-height: 350px;
width:30%;
}

.propiedades label{
margin: 20px;
}

Gracias de nueva cuenta!!! Dios te Bendiga y te Conserve la Salud.

49
Saludos amigo dongo:

Me da mucho gusto informarte que tu ayuda me solucionó el problema que tenía, en efecto como me lo indicaste quité la tabla y puse las divs, y pasé los nombres de los campos de la tabla dentro del array y dio resultado!!!!

En verdad estoy muy agradecido contigo, dejo el código por si le sirve a alguien en el futuro.

Mil gracias amigo y quedo a tus órdenes, si en algo puedo servirte cuenta conmigo, gracias de nuevo, Dios te Bendiga y te Conserve la Salud.

Adjunto una imagen de las divs.

El código quedó así:
Código: [Seleccionar]
<section id="contenedor_buscador">
    <aside id="izquierda">
<h1>Buscar Propiedades de Nuevo Le&oacute;n</h1>
<form name="form1" method="post" action="busca_grand_nl.php">
<label>B&uacute;squeda por Colonia:</label>
<input type="text" name="txtBusqueda" id="txtBusqueda">
<label>Elija Municipio*:</label>
<select name="selCiudad" id="selCiudad">
<option value="-1" selected>Ver todas las Propiedades</option>
<?php
$tablaciudades mysql_query("SELECT * FROM municipios_monterrey ORDER BY nombre_mun ASC"); // Seleccionamos las ciudades de la tabla ciudades
while ($registrociudad mysql_fetch_array($tablaciudades)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>

<option value="<?php echo $registrociudad['id_mun']; ?>"><?php echo $registrociudad['nombre_mun']; ?></option>
<?php
// termina la zona de repeticion
mysql_free_result($tablaciudades); // se libera la memoria usada por la tabla
?>

</select>

<input type="submit" name="cmdBuscar" id="cmdBuscar" value="&nbsp;Buscar&nbsp;">
</form>

<h5>Los campos marcados con (*) son obligatorios</h5>
</aside>
<article id="derecha">
<h2>Resultados de su b&uacute;squeda</h2>
<?php
$sql "SELECT propiedades.*, municipios_monterrey.* FROM propiedades, municipios_monterrey WHERE propiedades.id_mun = municipios_monterrey.id_mun ";
if (isset($_POST['txtBusqueda'])) {
$sql .= " AND propiedades.colonia LIKE '%" $_POST['txtBusqueda'] . "%' ";
if (intval($_POST['selCiudad']) > 0) {
$sql .= " AND propiedades.id_mun = '" intval($_POST['selCiudad']) . "'";
}
}
$sql .= " ORDER BY municipios_monterrey.nombre_mun ASC";
$tabla mysql_query($sql);
while ($registro mysql_fetch_array($tabla)) {
?>


<div class="propiedades">
<img src="<?php echo $registro['imagen'];?>" width="100" height="100"/><br>
<label>Direccion:<?php echo $registro['direccion']; ?></label><br>
<label>Colonia:<?php echo $registro['colonia']; ?></label><br>
<label>Municipio:<?php echo $registro['municipio']; ?></label><br>
<label>Estado:<?php echo $registro['estado']; ?></label><br>
<label>Plantas:<?php echo $registro['plantas']; ?></label><br>
<label>Rec&aacute;maras:<?php echo $registro['recamaras']; ?></label><br>
<label>Ba&ntilde;os:<?php echo $registro['banos']; ?></label><br>
<label>Precio:<?php echo $registro['precio']; ?></label>
</div>

<?php
}
mysql_free_result($tabla);
mysql_close($conexion);
?>

</table>
</article>
</section>

50
Saludos amigo dongo, he visto la imagen que me adjuntas y si es eso lo que deseo, que se  vean más estéticos.

Voy a estudiar y leer bien las instrucciones que me indicas y el ejemplo que me has puesto y voy a emplearlo ahora mismo, y más tarde estaré comentando cómo me ha ido, espero poder hacerlo bien, sino ya te comentaré mis dudas.

Gracias por tu ayuda y tiempo, han sido muy valiosos!!

Dios te Bendiga y te Conserve la Salud.

51
Muchas gracias por responder amigo dongo!!!

Mira el enlace del video-tutorial es este:
http://www.youtube.com/watch?v=UuxYT-loDws   esta es la parte 16 donde al inicio del video se ve como es la tabla mandada llamar con php desde mysql y por ahí del minuto 60 le mete unas divs (como bien lo mencionas tú) y muestra el código CSS.

Mi código no tiene nada que ver con el de este tutorial, pero sé que puedo hacer algo similar a lo que hizo esta persona, para que la información que manda llamar desde mysql tenga una presentación más estética y no como la de una tabla.

Mira te dejo este link de una inmobiliaria (yo también estoy creando una web para una inmobiliaria) y así como se ve en esta página, así me gustaría que me salieran los resultados cuando haga una búsqueda de casas:

http://www.inmuebles24.com/casas-o-casa-en-condominio-en-venta.html

Gracias por todo Amigo, gracias por tu ayuda y por tomarte la molestia de obsequiarme una parte de tu tiempo, Dios te Bendiga y te Conserve la Salud.

52
Hola Amigos Buenas tardes

Antes que todo gracias a los que hacen posible esta web, me esta resultando de mucha ayuda en mi proyecto web que estoy haciendo.

Mi consulta de hoy es la siguiente:

¿Cómo puedo dar estilos a una tabla para que no parezca tabla?

dejo el link de una fotografía donde muestro mi tabla donde el contenido es extraido de una bd en mysql mediante código php:
http://www.subirimagenes.com/otros-incorrecto-9050802.html

y dejo el link de otra fotografía de un video-tutorial donde la tabla que hace esta persona le ha dado diseño CSS para que se vea más estética (a la cual me gustaría que se pareciese la mía):
http://www.subirimagenes.com/otros-correcto-9050804.html

antes de poner el código mi página se estructura de esta manera

arriba en el header esta el nav
enseguida un section y dentro de este un aside a la izquierda y un article a la derecha
en el aside esta el buscador y en el article se encuentra la tabla, para efectos de mejor visualización coloque el código a partir del section.

dejo mi código php

archivo llamado: busca_grand_nl.php
Código: [Seleccionar]
    <section id="contenedor">
    <aside id="izquierda">
<h1>Buscar Propiedades de Nuevo Le&oacute;n</h1>
<form name="form1" method="post" action="busca_grand_nl.php">
<label>Buscar por Colonia:</label>
<input type="text" name="txtBusqueda" id="txtBusqueda"><br>
Seleccione Municipio*:
<select name="selCiudad" id="selCiudad">
<option value="-1" selected>Ver todas las Propiedades</option>
<?php
$tablaciudades mysql_query("SELECT * FROM municipios_monterrey ORDER BY nombre_mun ASC"); // Seleccionamos las ciudades de la tabla ciudades
while ($registrociudad mysql_fetch_array($tablaciudades)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>

<option value="<?php echo $registrociudad['id_mun']; ?>"><?php echo $registrociudad['nombre_mun']; ?></option>
<?php
// termina la zona de repeticion
mysql_free_result($tablaciudades); // se libera la memoria usada por la tabla
?>

</select>

<input type="submit" name="cmdBuscar" id="cmdBuscar" value="Buscar">
</form>

<h5>Los campos marcados con (*) son obligatorios</h5>
</aside>
<article id="derecha">

<table border="10" align="center" cellspacing="2" cellpadding="2">
<tr>
<th>Imagen</th>
<th>Dierecci&oacute;n </th>
<th>Colonia</th>
<th>Municipio</th>
<th>Estado</th>
<th>Plantas</th>
<th>Rec&aacute;maras</th>
<th>Ba&ntilde;os</th>
<th>Precio</th>
</tr>

<?php
$sql "SELECT propiedades.*, municipios_monterrey.* FROM propiedades, municipios_monterrey WHERE propiedades.id_mun = municipios_monterrey.id_mun ";
if (isset($_POST['txtBusqueda'])) {
$sql .= " AND propiedades.colonia LIKE '%" $_POST['txtBusqueda'] . "%' ";
if (intval($_POST['selCiudad']) > 0) {
$sql .= " AND propiedades.id_mun = '" intval($_POST['selCiudad']) . "'";
}
}
$sql .= " ORDER BY municipios_monterrey.nombre_mun ASC";
$tabla mysql_query($sql);
while ($registro mysql_fetch_array($tabla)) {
?>

<tr>
<th><img src="<?php echo $registro['imagen'];?>" width="80" height="80"/></th>
<th><?php echo $registro['direccion']; ?></th>
<th><?php echo $registro['colonia']; ?></th>
<th><?php echo $registro['municipio']; ?></th>
<th><?php echo $registro['estado']; ?></th>
<th><?php echo $registro['plantas']; ?></th>
<th><?php echo $registro['recamaras']; ?></th>
<th><?php echo $registro['banos']; ?></th>
<th><?php echo $registro['precio']; ?></th>
</tr>
<?php
}
mysql_free_result($tabla);
mysql_close($conexion);
?>

</table>
</article>
</section>
<footer>
copyright@ todos los derechos reservados
</footer>
</body>
</html>

y dejo el código CSS (hasta el momento es lo que llevo de estilos)

archivo llamado estilos.css
Código: [Seleccionar]
th{
border: #4E6FFF 1px solid;

}


article#derecha, aside#izquierda{
background: #1e6381;
display: inline-block;
margin: .5em;
vertical-align: top;
}

article#derecha{
width:65%;
height: auto;
border: 4px solid black;
margin: 20px 0px 20px;
border-radius: 8px;
background: green;
}


aside#izquierda{
width:30%;
}

gracias por todo, Dios les Bendiga y les Conserve la Salud.

53
Muchas gracias amigos por sus respuestas!!!

Agradecido profundamente dongo, hice lo que me indicaste y en efecto se resolvió mi problema, muchas gracias!!!

Dios les bendiga y les conserve la Salud.

54
Buenas tardes amigos.

Mi problema es que un select me despliega muy rápido y se cierra cuanto antes y no me permite elegir ninguna opción de la lista desplegable, esto me sucede con firefox y con chrome si funciona correctamente.

Dejo el enlace de la web que estoy creando, espero alguien me pueda ayudar a solucionarlo.

link:
http://proyectojch.host56.com/php/buscador_grandeza.php

Muchas gracias a todos, Saud-os.


55
Que tal amigo!!

Muchas gracias por tu orientación, me ha servido bastante, he comenzado con los cursos que me has apuntado en tus respuestas, espero pronto profundizar en conocimiento y cuando resuelva el cómo hacer el buscador, por supuesto regresaré a este apartado y pegaré el código, tal vez a alguien en el futuro le sirva.

Gracias por todo, Dios te Bendiga y te Conserve la Salud!!!

56
Saludos Amigo.

Si mira, hablé de ciudades porque no sabía que Buenos Aires o Capital Federal se le llaman Estados, pero siguiendo tus palabras es así lo que intento hacer:

primer select elijo el pais de "Argentina"
segundo select elijo el estado de "Buenos Aires"
y que me arroje en pantalla las direcciones del estado de buenos aires descriminando las direcciones pertenecientes a los demás estados.

Sé que no es fácil como bien lo dices abordar de golpe temas que involucran lenguajes que desconozco, la verdad es que fue el único código que me encontré en la red que se ajustaba a mis necesidades, aunque me gustaría hacer este traba con sólo php.

Mira te voy a comentar que es lo que estoy realizando:
Estoy haciendo una página web para una amiga que tiene una inmobiliaria, donde vende casas para el Infonavit, aqui en México, este instituto es el que se encarga de dar casas a los trabajadores registrados en el infonavit.

Bueno pues ya tengo media página hecha, pero me topé con este "muro" al querer hacer un buscador interno multicriterios, pero como lo mencioné en el primer post no obtuve información de cómo realizarlo así que me decidí por hacerlo más sencillo, de esta manera:

En México se divide así: Pais-Estados-Municipios

Mi amiga vende casas en 3 estados de México: Coahuila, Nuevo Leon, Sinaloa y dentro de cada estado hay por lo menos 20 municipios. Entonces a mi me serviría hacer un buscador con 1 sólo criterio: que me muestre las casas que hay en cada municpio, es por ello que me descargué este código hecho en php ajax y javaScript como bien lo dices.

¿Por qué me sirve este código? por que yo cambié los países por estados y los estados por municipios, quedando así:

select 1: en vez de listar Argentina, Bolivia, Brasil etc... el mío lista 3 estados que son los que necesito: Coahuila, Nuevo Leon, Sinaloa.

y automaticamente al yo elegir por ejemplo: Nuevo Leon, el select 2 se me enlista con los municipios pertenecientes al Estado de Nuevo León.

Aquí lo que me faltaría por hacer sería agregar un botón de buscar y al presionarlo me muestre en pantalla todas las direcciones que pertenecen al municipio elegido en el select 2 y eso es todo.

Te dejo el link donde estan los archivos del código modificado por mi, más mi base datos:

https://mega.co.nz/#!UI1R3LJK!7pogqC_pZUuo7jpe1R2xuY6qkdcJcAg1o_4qzKXfVDE,

En la base te darás cuenta que en la tabla "direcciones" sólo tengo las direcciones de los primeros 3 municipios del primer estado, es decir:

Estado: Coahuila (primer select)
Municipios de Coahuila: Abasolo, Allende, Frontera (segundo select)
y a cada municipio le puse 3 direcciones, 9 en total, que son las que se deberían de ver en pantalla.

Una pregunta, ¿Crees que con sólo PHP y MySQL además de HTML podría hacer un buscador así o por fuerza tengo que involucrar ajax y javaScript?

Por cierto, si tengo instalado el wampserver y uso la base de datos del phpMyadmin.

Gracias por tus respuestas, Dios te bendiga y te conserve la salud!!!


57
Gracias a Dios y a ti que respondiste a mi auxilio, he colgado este mismo mensaje como en 7 foros de paginas distintas y nadie me había respondido hasta ahora.

Estoy totalmente de acuerdo contigo y convencido de que tengo que enseñarme a programar php y a manejar bases de datos, ya en lo que respecta a html y ccs, tengo conocimientos medios de esto, gracias por los tutoriales que me dejas en tu mensaje, los seguiré paso a paso.

Aquí esta el código que me descargué de la web, dejo el link: http://www.formatoweb.com.ar/ajax/select_dependientes.php, incluso ahí viene una demo en línea y los archivos te los puedes descargar de ahí mismo, son 3 archivos php y 1 en js además del CSS y la base de datos.

archivo 1 llamado: conexion.php
Código: [Seleccionar]
<?php
function conectar()
{
mysql_connect("localhost""root""");
mysql_select_db("ajax");
}

function 
desconectar()
{
mysql_close();
}
?>

archivo 2 llamado: select_dependientes.php
Código: [Seleccionar]
<?php
function generaPaises()
{
include 'conexion.php';
conectar();
$consulta=mysql_query("SELECT id, opcion FROM lista_paises");
desconectar();

// Voy imprimiendo el primer select compuesto por los paises
echo "<select name='paises' id='paises' onChange='cargaContenido(this.id)'>";
echo "<option value='0'>Elige</option>";
while($registro=mysql_fetch_row($consulta))
{
echo "<option value='".$registro[0]."'>".$registro[1]."</option>";
}
echo "</select>";
}
?>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<!--



Este contenido es de libre uso y modificación bajo la siguiente licencia: http://creativecommons.org/licenses/by-nc-sa/2.5/deed.es

Sobre el reconocimiento:
Todos los códigos han sido realizados con la idea de que sirvan para colaborar con el aprendizage de aquellos que se están introduciendo
en estas tecnologías y no con el objetivo de que sean utilizados directamente en sitios web. No obstante si utilizas algún código en tu sitio
(ya sea sin modificar o modificado), o si ofreces los fuentes para descargar o si bien decides publicar alguno de los artículos debes cumplir con:
-Colocar un link a http://www.formatoweb.com.ar/ajax/ visible por tus usuarios como forma de mención a la fuente original del contenido.
-Enviar un correo a edanps@gmail.com informando la URL donde el contenido se ha publicado o se va a publicar en un futuro.
-Si publicas los fuentes para descargar este texto no debe ser eliminado ni alterado.

Más ejemplos y material sobre AJAX en: http://www.formatoweb.com.ar/ajax/
Cualquier sugerencia, crítica o comentario son bienvenidos.
Contacto: edanps@gmail.com



-->

<html lang="es">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>AJAX, Ejemplos: Combos (select) dependientes, codigo fuente - ejemplo</title>
<link rel="stylesheet" type="text/css" href="select_dependientes.css">
<script type="text/javascript" src="select_dependientes.js"></script>
</head>

<body>

<div id="demo" style="width:600px;">
<div id="demoDer">
<select disabled="disabled" name="estados" id="estados">
<option value="0">Selecciona opci&oacute;n...</option>
</select>
</div>
<div id="demoIzq"><?php generaPaises(); ?></div>
</div>

</body>
</html>

archivo 3 llamado: select_dependientes_proceso.php
Código: [Seleccionar]
<?php
// Array que vincula los IDs de los selects declarados en el HTML con el nombre de la tabla donde se encuentra su contenido
$listadoSelects=array(
"paises"=>"lista_paises",
"estados"=>"lista_estados"
);

function 
validaSelect($selectDestino)
{
// Se valida que el select enviado via GET exista
global $listadoSelects;
if(isset($listadoSelects[$selectDestino])) return true;
else return false;
}

function 
validaOpcion($opcionSeleccionada)
{
// Se valida que la opcion seleccionada por el usuario en el select tenga un valor numerico
if(is_numeric($opcionSeleccionada)) return true;
else return false;
}

$selectDestino=$_GET["select"]; $opcionSeleccionada=$_GET["opcion"];

if(
validaSelect($selectDestino) && validaOpcion($opcionSeleccionada))
{
$tabla=$listadoSelects[$selectDestino];
include 'conexion.php';
conectar();
$consulta=mysql_query("SELECT id, opcion FROM $tabla WHERE relacion='$opcionSeleccionada'") or die(mysql_error());
desconectar();

// Comienzo a imprimir el select
echo "<select name='".$selectDestino."' id='".$selectDestino."' onChange='cargaContenido(this.id)'>";
echo "<option value='0'>Elige</option>";
while($registro=mysql_fetch_row($consulta))
{
// Convierto los caracteres conflictivos a sus entidades HTML correspondientes para su correcta visualizacion
$registro[1]=htmlentities($registro[1]);
// Imprimo las opciones del select
echo "<option value='".$registro[0]."'>".$registro[1]."</option>";
}
echo "</select>";
}
?>

archivo 4 llamado: select_dependientes.js
Código: [Seleccionar]
function nuevoAjax()
{
/* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
lo que se puede copiar tal como esta aqui */
var xmlhttp=false;
try
{
// Creacion del objeto AJAX para navegadores no IE
xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
// Creacion del objet AJAX para IE
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E)
{
if (!xmlhttp && typeof XMLHttpRequest!='undefined') xmlhttp=new XMLHttpRequest();
}
}
return xmlhttp;
}

// Declaro los selects que componen el documento HTML. Su atributo ID debe figurar aqui.
var listadoSelects=new Array();
listadoSelects[0]="paises";
listadoSelects[1]="estados";

function buscarEnArray(array, dato)
{
// Retorna el indice de la posicion donde se encuentra el elemento en el array o null si no se encuentra
var x=0;
while(array[x])
{
if(array[x]==dato) return x;
x++;
}
return null;
}

function cargaContenido(idSelectOrigen)
{
// Obtengo la posicion que ocupa el select que debe ser cargado en el array declarado mas arriba
var posicionSelectDestino=buscarEnArray(listadoSelects, idSelectOrigen)+1;
// Obtengo el select que el usuario modifico
var selectOrigen=document.getElementById(idSelectOrigen);
// Obtengo la opcion que el usuario selecciono
var opcionSeleccionada=selectOrigen.options[selectOrigen.selectedIndex].value;
// Si el usuario eligio la opcion "Elige", no voy al servidor y pongo los selects siguientes en estado "Selecciona opcion..."
if(opcionSeleccionada==0)
{
var x=posicionSelectDestino, selectActual=null;
// Busco todos los selects siguientes al que inicio el evento onChange y les cambio el estado y deshabilito
while(listadoSelects[x])
{
selectActual=document.getElementById(listadoSelects[x]);
selectActual.length=0;

var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Selecciona Opci&oacute;n...";
selectActual.appendChild(nuevaOpcion); selectActual.disabled=true;
x++;
}
}
// Compruebo que el select modificado no sea el ultimo de la cadena
else if(idSelectOrigen!=listadoSelects[listadoSelects.length-1])
{
// Obtengo el elemento del select que debo cargar
var idSelectDestino=listadoSelects[posicionSelectDestino];
var selectDestino=document.getElementById(idSelectDestino);
// Creo el nuevo objeto AJAX y envio al servidor el ID del select a cargar y la opcion seleccionada del select origen
var ajax=nuevoAjax();
ajax.open("GET", "select_dependientes_proceso.php?select="+idSelectDestino+"&opcion="+opcionSeleccionada, true);
ajax.onreadystatechange=function()
{
if (ajax.readyState==1)
{
// Mientras carga elimino la opcion "Selecciona Opcion..." y pongo una que dice "Cargando..."
selectDestino.length=0;
var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Cargando...";
selectDestino.appendChild(nuevaOpcion); selectDestino.disabled=true;
}
if (ajax.readyState==4)
{
selectDestino.parentNode.innerHTML=ajax.responseText;
}
}
ajax.send(null);
}
}

Este es todo el código. Mi problema es que no sé cómo seguirle al paso siguiente, en resumen lo que deseo es esto:

en select paises elegir por ejemplo "Argentina" y el segundo select se llena automaticamente con los estados de este país y si yo elijo por ejemplo "Buenos Aires" me arroje en pantalla, las direcciones que pertenezcan a esta ciudad por ejemplo:

en la tercer tabla creada por mi tengo 5 campos y ahora mismo le he agregado el id_estado que me has indicado entonces queda así:

id  ciudad             direccion       colonia      telefono  id_estado
1  buenos aires   calle y num    colonia x   tel x          1
2 capital federal  calle y num    colonia x   tel x          1

en id_estado coloqué 1 por que las 2 ciudades del ejemplo pertenecen al pais "argentina" y Argentina es el 1 en la tabla de países, ¿es correcto o estoy en un error?

ahora bien al elegir en el segundo select "buenos aires", quiero que me de en pantalla los campos: "ciudad, direccion, colonia, y telefono" sólo de "buenos aires" y en este ejemplo la búsqueda me descriminaría los datos de "capital federal" y me mostraría los datos de buenos aires", eso es lo que me falta por realizar.

Muchas gracias por todo amigo y estaré al pendiente de tus respuestas, saludos desde México y que Dios te conserve la salud y te bendiga siempre!!!!

58
Buenas tardes Amigos.

Antes que todo reciban un agradecimiento por tomarse el tiempo de leer esta Consulta y por ayudarme, Dios les Bendiga.

Mi Consulta es la siguiente:

Estoy adentrándome en la programación de PHP y MySQL, tengo 2 semanas buscando ayuda de como realizar un buscador multicriterios, al no poder obtener ayuda me decidí a comenzar a estudiar programación PHP, pero me urge realizar un buscador multicriterios.

Por lo pronto me encontré con un código en la web hecho en ajax, que me serviría muy bien mientras aprendo a hacer un buscador multicriterios, aquí dejo el enlace por si alguien necesita algo parecido: http://www.formatoweb.com.ar/ajax/select_dependientes.php

Me funciona bien, al elegir en el primer Select un país por ejemplo: "Argentina" se carga perfectamente el segundo Select (el cual es dependiente del primero) con la lista de los estados pertenecientes a "Argentina" hasta aquí todo bien; ahora bien, originalmente quien realizó este trabajo creó una base de datos llamada ajax con 2 tablas la 1era tabla llamada "lista_paises" y la 2da tabla llamada "lista_estados" relacionadas entre sí, ahora yo creé una tercer tabla llamada "Direcciones" y dentro de ella tengo 5 campos: id, ciudad, dirección, colonia, teléfono.

Entonces la cuestión es ¿Cómo hago para que al seleccionar en el segundo Select la opción "Buenos Aires" o cualquier otra ciudad me muestre en la pantalla los registros que pertenezcan a dicha ciudad los cuales se encuentran en la tabla llamada "Direcciones"?

Muchas gracias, espero haberme explicado con claridad y que me puedan echar una mano, ya que llevo 2 semanas tratando de resolver este conflicto.

Páginas: 1 2 [3]

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".