Foros del Web » Programando para Internet » PHP »

POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola tabla

Estas en el tema de POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola tabla en el foro de PHP en Foros del Web. hola foreros: espero me puedan dar una ayudita: les explico: Tengo un menu vertical, donde el usuario elije su opcion para consutar a la base ...
  #1 (permalink)  
Antiguo 06/03/2010, 13:54
principe_prais
Invitado
 
Mensajes: n/a
Puntos:
Exclamación POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola tabla

hola foreros: espero me puedan dar una ayudita: les explico:

Tengo un menu vertical, donde el usuario elije su opcion para consutar a la base de datos, dependindo de la opcion elegida se abrira el formulario correspondiente,de acuerdo a donde hizo click. hasta ahi bien.

Entonces si elige buscar por comuna: realiza la consulta sin problema, y se esconde el formulario,arrojando el resultado al final de la pagina.. hasta ahi bien..

pero ahora los problemitas: 1.-cuando vuelvo a abrir el formulario(osea cuando el usuario hace click en comuna) de comuna, se habre el formulario con la caja de texto con el dato ingresado anteriormente... cuando debiera re-abrirse con la caja de texto limpia(osea sin datos),, ya que es una nueva consulta..¿ COMO LO HAGO?

2.-Todos los formularios al desplegarse funcionan bien, pero la unica consulta que se ejecuta correctamente es la opcion de comuna, las otras simplemente no hacen nada(es como si no consultara nada)...

y lo raro es que hago las consultas como lo hice en comuna, ya que funciona esa..pero las demas no.....

3.- en la ultima consulta es mostrar todos los registros y cuando coloco el codigo de consulta.. aparece automaticamente en la pagina de opciones, es como si se impusiera a todo..

¿Quisiera saber como controlar las consultas...osea haci como un if o algo asi como un swicht..?

que al momento que el usuario haga click en el boton ahora recien se ejecute dicha consulta.. y evidentemente todas las opciones funcionen haciendo su consulta correspondiente.-

AQUI LES COLOCO EL CODIGO DE EJEMPLO:

<!-- MENU -->

<td height="154" align="center"><div id="menu"> <!--. MENU-->
<ul>
<li><a style="cursor:pointer" onclick="mostrar('capa1')">Profesion</a></li>
<li><a style="cursor:pointer" onclick="mostrar('capa2')">Cargo Ofrecido</a></li>
<li class="selected"><a style="cursor:pointer" onclick="mostrar('capa3')">Comuna</a></li>
<li><a style="cursor:pointer" onclick="mostrar('capa4')">Fecha Entrevista</a></li>
<li><a style="cursor:pointer" onclick="mostrar('capa5')">Todos los Registros</a></li>


</ul>
<div class="block png"></div>

</div>

</td><!--FIN PRIMER TD 1A..TABLA MADRE... MENU-->

<!-- FIN MENU -->





<!-- 1 OPCION: PROFESION -->

<div id="capa1">

<?php
include_once("config.php");

$cnx1 = mysql_connect(constant("IP_SERVER"),constant("BD_U SER"),constant("BD_PASS"));
mysql_select_db("BD_NAME");

//primera query
$op_profe=(!isset($_POST["op_profe"]))?"":$_POST["op_profe"];

$sql="select id,fecha_entrevista,rut,nombre,apellido_paterno,ap ellido_materno,estado_civil,nacionalidad,fecha_nac imiento,edad,sistema_salud,afp,profesion,cargo_pos tulante,telefono1,telefono2,email,direccion,comuna ,region,fecha_inicio_actividades,comentario_psicol ogico
from postulante
where profesion ='$op_profe'";

$result = mysql_query($sql) or die("Error ". mysql_error());

mysql_close($cnx1);
?>


<form name="profesion" method="post" action="">

<table id="profesion" width="388" border="2" bgcolor="#FF99CC" bordercolorlight="#6600CC"><!--comienzo tabla interna-->
<tr>
<th width="344" align="center">Ingrese la Profesion</th>
<td width="44"><a href="consultas3.php" class="Cerrar"><img src="images/exit.gif"></a></td>
</tr>

<tr>
<td colspan="2" align="center"><span class="Estilo3">Postulante con la Profesion de:<br><br></span>

<div align="center">
<input type="text" name="op_profe" id="op_profe" size="20" value="<?php print (isset($_POST['op_profe']))?$_POST['op_profe']:'';?>"
onFocus="foco(this);"
onBlur="no_foco(this);"
style="border:1px solid #CCCCCC"/><br><br>
</div>
<div align="left"><i>Consultar a la Base de Datos:</i></div><br>

<div align="center">
<input type="submit" name="ahora" value="Ahora" class="Estilo3"/>
<input type="button" value="Cancelar" class="Estilo3" onclick="location.href='consultas3.php'"/>

</div>
</td>
</tr>

</table><!--fin tabla interna-->


</form>
</div>

<!-- FIN 1 OPCION: PROFESION -->

<!-- 2 OPCION: CARGO OFRECIDO -->

<div id="capa2">

<?php

include_once("config.php");

$cnx2 = mysql_connect(constant("IP_SERVER"),constant("BD_U SER"),constant("BD_PASS"));
mysql_select_db("BD_NAME");

//Segunda query
$cpost=(!isset($_POST["op_cpost"]))?"":$_POST["op_cpost"];

$sql="select id,fecha_entrevista,rut,nombre,apellido_paterno,ap ellido_materno,estado_civil,nacionalidad,fecha_nac imiento,edad,sistema_salud,afp,profesion,cargo_pos tulante,telefono1,telefono2,email,direccion,comuna ,region,fecha_inicio_actividades,comentario_psicol ogico
from postulante
where cargo_postulante ='$cpost'";

$result = mysql_query($sql) or die("Error ". mysql_error());

mysql_close($cnx2);

?>


<form name="cargo_post" method="post" action="">

<table id="cpost" width="388" border="2" bgcolor="#FF99CC" bordercolorlight="#6600CC"><!--comienzo tabla interna-->
<tr>
<th width="344" align="center">Ingrese el Cargo</th>
<td width="44"><a href="consultas3.php" class="Cerrar"><img src="images/exit.gif"></td>
</tr>

<tr>
<td colspan="2"><span class="Estilo3">Postulantes que Optan al Cargo de:</span><br><br>

<div align="center">

<input type="text" name="op_cpost" size="20" value="<?php print (isset($_POST['op_cpost']))?$_POST['op_cpost']:'';?>"

onFocus="foco(this);"
onBlur="no_foco(this);"
style="border:1px solid #CCCCCC"/><br><br>
</div>
<div align="left"><i>Consultar a la Base de Datos</i></div><br>

<div align="center">

<input type="submit" value="Ahora" name="generar" class="Estilo3"/>
<input type="submit" value="Cancelar" name="cancelar" class="Estilo3" onclick="location.href='consultas3.php'"/>

</div>

</td>
</tr>

</table><!--fin tabla interna-->

</form>

</div>

<!-- FIN OPCION 2: CARGO OFRECIDO -->

<!-- 3 OPCION: COMUNA ** ESTA CONSULTA FUNCIONA BIEN, PERO LAS DEMAS NO, Y ESO QUE SON IGUALES..-->


<div id="capa3">

<?php
include_once("config.php");

$cnx3 = mysql_connect(constant("IP_SERVER"),constant("BD_U SER"),constant("BD_PASS"));
mysql_select_db("BD_NAME");

//Tercera query
$op_comu=(!isset($_POST["op_comu"]))?"":$_POST["op_comu"];

$sql="select id,fecha_entrevista,rut,nombre,apellido_paterno,ap ellido_materno,estado_civil,nacionalidad,fecha_nac imiento,edad,sistema_salud,afp,profesion,cargo_pos tulante,telefono1,telefono2,email,direccion,comuna ,region,fecha_inicio_actividades,comentario_psicol ogico
from postulante
where comuna ='$op_comu'";

$result = mysql_query($sql) or die("Error ". mysql_error());

mysql_close($cnx3);

?>

<form name="comuna" method="post" action="">

<table id="cpost" width="388" border="2" bgcolor="#FF99CC" bordercolorlight="#6600CC"><!--comienzo tabla interna-->

<tr>
<th width="344" align="center">Ingrese la Comuna</th>
<td width="44"><a href="consultas3.php" class="Cerrar"><img src="images/exit.gif"></td>
</tr>

<tr>
<td colspan="2">Postulantes que viven en la Comuna de:<br><br>

<div align="center">

<input type="text" name="op_comu" id="op_comu" size="20" value="<?php print (isset($_POST['op_comu']))?$_POST['op_comu']:'';?>"

onFocus="foco(this);"
onBlur="no_foco(this);"
style="border:1px solid #CCCCCC"/><br><br>
</div>

<div align="left"><i>Consultar a la Base de Datos:</i></div><br>

<div align="center">


<input type="submit" value="Ahora" name="generar" class="Estilo3"/>

<input type="submit" value="Cancelar" name="cancelar" class="Estilo3" onclick="location.href='consultas3.php'"/>

</div>

</td>
</tr>

</table><!--fin tabla interna-->


</form>
</div>
<!--**************** FIN OPCION 3: COMUNA ******************-->


<!--****** OPCION 5: TODOS LOS REGISTROS *******-->

<div id="capa5">

<?php

if('onClick="Ahora"'){ ***esta es una idea foreros de controlar las consultas pero no me resulta ,la idea es cuando haga click recien se ejecutae cada opcion *********************************



include_once("config.php");

$cnx5 = mysql_connect(constant("IP_SERVER"),constant("BD_U SER"),constant("BD_PASS"));
mysql_select_db("BD_NAME");


// quinta query

$sql="select * from postulante";
$result = mysql_query($sql) or die("Error ". mysql_error());

mysql_close($cnx5);

?>


<form name="fecha" method="post" action="">

<table id="cpost" width="388" border="2" bgcolor="#FF99CC" bordercolorlight="#6600CC"><!--comienzo tabla interna-->
<tr>
<th width="344" align="center">Todos los Registros</th>
<td width="44"><a href="consultas2.php" class="Cerrar"><img src="images/exit.gif"></td>
</tr>

<tr>
<td colspan="2"><span class="Estilo3">Llamara Todos los Registros Almacenados:</span><br><br>

<div align="center"><i><b>¿Esta Seguro(a) de Consultar?</i></b><br>
<br></div>
<div align="center">


<input type="submit" value="Ahora" name="ahora" class="Estilo3"/>

<input type="submit" value="Cancelar" name="cancelar" class="Estilo3"/>

</div>


</td>
</tr>

</table><!--fin tabla interna-->




<!-- COMO PUEDEN VER LAS CONSULTAS LAS HAGO AL COMIENZO DE CADA CAPA, Y LUEGO EL FORMULARIO, ASI POR BLOQUE CON TODAS -->

ESTARE MUY ATENTO A SUS COMENTARIOS GRACIAS

Última edición por principe_prais; 06/03/2010 a las 14:48
  #2 (permalink)  
Antiguo 06/03/2010, 17:00
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola ta

Para vaciar la caja de texto debes usar javascript, ya que en realidad no cambias de página, sino que estás en la misma mostrando una u otra capa.
EntonceS:
Código Javascript:
Ver original
  1. document.nombreFormulario.nombreCampo.value="";
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #3 (permalink)  
Antiguo 06/03/2010, 19:47
principe_prais
Invitado
 
Mensajes: n/a
Puntos:
Exclamación Respuesta: POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola ta

Compadre: resulto a la perfeccion, inserte el <script>, y efectivamente vacio la caja..

Agradesco tu ayuda.....

por si igual te encargo las de las consultas individuales, ya que al hacer la consulta de comuna, por algo bloque las de mas arriiba, como la profesion, y el cargo ofrecido... he pensado en colocar un swicht, pero no me resulta o algo que separe las consultas..

de todas maneras gracias.-
  #4 (permalink)  
Antiguo 07/03/2010, 07:56
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola ta

Cita:
Iniciado por principe_prais Ver Mensaje
por si igual te encargo las de las consultas individuales, ya que al hacer la consulta de comuna, por algo bloque las de mas arriiba, como la profesion, y el cargo ofrecido... he pensado en colocar un swicht, pero no me resulta o algo que separe las consultas..
Ni idea de lo que estás hablando . xD
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #5 (permalink)  
Antiguo 07/03/2010, 11:25
principe_prais
Invitado
 
Mensajes: n/a
Puntos:
Exclamación Respuesta: POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola ta

Compadre aver si soy mas claro: en cada capa correspondiendo al menu de navegacion,

hago una consulta a una base de datos(mysql),ej: la capa de profesion hace una consulta de la profesion, la capa de comuna: hace una consulta de comuna...etc..

asi con las 5 capas que tiene el menu,, el punto es que solo me realiza solo una consulta en forma satisfactoria, y las otras quedan nulas, es como si no tomara en nada la consulta,en realidad es como si no las hiciera..

por eso he pensado en separar las consultas dentro de un swicht o algo parecido, ya que si dejo las 5 consultas asi como esta en el codigo, solo me toma encuenta una,, y evidente necesito cumplir con todas las consultas, de acuerdo a lo que el usuario necesita consultar...

Cualquier aporte Agradecido.-

Atte.-
--------
Mauricio Orellana.-
----------------------------
  #6 (permalink)  
Antiguo 07/03/2010, 11:36
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola ta

Eso es lo que tiene andar a cerrar y abrir conexiones mysql sin sentido. Abre una y selecciona la base de datos, luego cada query irá apuntando a ella. Y hazle un highlight al código que es ILEGIBLE!!!!!!!
Código PHP:
Ver original
  1. $cnx = mysql_connect(constant("IP_SERVER"),constant("BD_U SER"),constant("BD_PASS"));
  2. mysql_select_db("BD_NAME", $cnx);
  3.  
  4.      mysql_query($sql1, $cnx);
  5.      mysql_query($sql2, $cnx);
  6.      mysql_query($sql3, $cnx);
  7.      mysql_query($sql4, $cnx);
  8.      mysql_query($sql5, $cnx);
  9.  
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #7 (permalink)  
Antiguo 07/03/2010, 18:14
principe_prais
Invitado
 
Mensajes: n/a
Puntos:
Exclamación Respuesta: POR FAVOR Foreros necesito hacer distintas consultas a mysql a una sola ta

Compadre segui al pie de la letra tu consejo, y el problema persiste, solo hace la ultima consulta (comuna), las demas (profesion,cargo ofrecido), no las toma encuenta, es como si no existiera: te coloco el codigo mejorado por tu ayuda:

<?php

include_once("config.php");

$cnx = mysql_connect(constant("IP_SERVER"),constant("BD_U SER"),constant("BD_PASS"));
mysql_select_db("BD_NAME");

if ("onclick==('capa1')"){

$profe=(!isset($_POST["profe"]))?"":$_POST["profe"]; /*aka se guarda la variable ingresada por el usuario a la caja de texto, en el formulario en la parte de value"",y la coloco aka para pasarle el dato a la consulta en la parte del where */


mysql_query(

$sql="select id,fecha_entrevista,rut,nombre,apellido_paterno,ap ellido_materno,estado_civil,nacionalidad,fecha_nac imiento,edad,sistema_salud,afp,profesion,cargo_pos tulante,telefono1,telefono2,email,direccion,comuna ,region,fecha_inicio_actividades,comentario_psicol ogico
from postulante
where profesion ='$profe'", $cnx);

$result = mysql_query($sql) or die("Error ". mysql_error());

}/* fin llave if */

if ("onclick==('capa2')"){

$op_cpost=(!isset($_POST["op_cpost"]))?"":$_POST["op_cpost"];

mysql_query(

$sql="select id,fecha_entrevista,rut,nombre,apellido_paterno,ap ellido_materno,estado_civil,nacionalidad,fecha_nac imiento,edad,sistema_salud,afp,profesion,cargo_pos tulante,telefono1,telefono2,email,direccion,comuna ,region,fecha_inicio_actividades,comentario_psicol ogico
from postulante
where cargo_postulante ='$op_cpost'", $cnx);

$result = mysql_query($sql) or die("Error ". mysql_error());

}/* fin llave if */


if ("onclick==('capa3')"){

$op_comu=(!isset($_POST["op_comu"]))?"":$_POST["op_comu"];

mysql_query(

$sql="select id,fecha_entrevista,rut,nombre,apellido_paterno,ap ellido_materno,estado_civil,nacionalidad,fecha_nac imiento,edad,sistema_salud,afp,profesion,cargo_pos tulante,telefono1,telefono2,email,direccion,comuna ,region,fecha_inicio_actividades,comentario_psicol ogico
from postulante
where comuna ='$op_comu'",$cnx);

$result = mysql_query($sql) or die("Error ". mysql_error());

mysql_close($cnx);

}/* fin llave if */

?>


ten ecuenta que los if son para distingir los click del usuario en el menu de navegacion ,donde eligira la consulta a realizar, ese creo yo, que puede ser el problema separar las consultas, por eso a los if no les puse en el segundo if un else if, para separarlas lo mas que podia(aunque debiera funcionar con ambas, era ya como ultimo recurso), tambien trate de colocar cada consulta en un swchit y tampoco.. pero sin duda andamos cerca...te vuelvo a colocar el menu de navegacion por si.....

<td height="154" align="center"><div id="menu"> <!--HABRE PRIMER TD 1A..TABLA MADRE... MENU-->
<ul>

<li><a style="cursor:pointer" onclick="mostrar('capa1')">Profesion</a></li>
<li><a style="cursor:pointer" onclick="mostrar('capa2')">Cargo Ofrecido</a></li>
<li><a style="cursor:pointer"onclick="mostrar('capa3')">C omuna</a></li>
<li><a style="cursor:pointer"onclick="mostrar('capa4')">F echaEntrevista</a></li>
<li><a style="cursor:pointer" onclick="mostrar('capa5')">Todos los Registros</a></li>


</ul>
<div class="block png"></div>

</div>

</td><!--FIN PRIMER TD 1A..TABLA MADRE... MENU-->

Estare muy atento a los comentarios..

Agradeciendo la ayuda.-

Etiquetas: distintas, favor, mysql, tablas
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 21:36.