Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/03/2008, 05:21
cmarrero
(Desactivado)
 
Fecha de Ingreso: enero-2008
Ubicación: Mendoza
Mensajes: 458
Antigüedad: 17 años, 1 mes
Puntos: 2
Exclamación Error En Script

Mi problema es que al enviar la consulta desde un formulario, simpre me sale que la consulta: no ahy resultados: Vualva a hacer la consulta.

El codigo del formulario es el siguiente:

Código HTML:
Estilo26 Estilo26Elija una o Varias Dependencias:<br />
                            <?
mysql_connect("localhost","pdu1906","netcom");
mysql_select_db("pdu1906_1");
?>
                            <? 
$result=mysql_query("select * from dependenciasl");
?>
                            <select name="dependencia" size="4" multiple="multiple" id="dependencia">
                              <option>Todas</option>
                              <?
while ($row=mysql_fetch_array($result))
{
echo '<option value="'.$row["dependencia"].'">'.$row["dependencia"].'</option>
';
}
mysql_free_result($result)
?>
</select>
Tipo de Incidencias que Desea buscar: <br />
                            <?
mysql_connect("localhost","pdu1906","netcom");
mysql_select_db("pdu1906_1");
?>
                            <? 
$result=mysql_query("select * from tipoincidencia");
?>
                            <select name="inicidencia" size="3" multiple="multiple" id="inicidencia">
                              <option value="Todas">Todas</option>
                              <?
while ($row=mysql_fetch_array($result))
{
echo '<option value="'.$row["incidencia"].'">'.$row["incidencia"].'</option>
';
}
mysql_free_result($result)
?>
                            </select>
Equipo al que esta Afectado la incidencia: <select onchange="cambiar()" name="equipo" id="equipo">
                      <option>Seleccionar</option>
                      <option value="CPU">CPU</option>
                      <option value="Monitor">Monitor</option>
                      <option value="Impresora">Impresora</option>
                      <option value="Teclado">Teclado</option>
                      <option value="Mouse">Mouse</option>
                      <option value="Otros">Otros</option>
                    </select>
Marca:
                    <select name="marca" id="marca">
                              <option selected="selected">Seleccionar</option>
                              <option value="HP">HP</option>
                              <option value="Acer">Acer</option>
                              <option value="Tatung">Tatung</option>
                              <option value="Compaq">Compaq</option>
                              <option value="Clon">Clon</option>
                              <option value="IBM">IBM</option>
                              <option value="CDR">CDR</option>
                    </select>
Modelo:
                    <select name="modelo" id="modelo">
                                <option>Seleccionar</option>
                                <option value="HP">HP</option>
                                <option value="Acer">Acer</option>
                                <option value="Tatung">Tatung</option>
                                <option value="Compaq">Compaq</option>
                                <option value="Clon">Clon</option>
                                <option value="IBM">IBM</option>
                                <option value="CDR">CDR</option>
                    </select>
Elija si necesita filtrar por Prioridad           <select name="prioridad" id="prioridad">
                      <option value="*" selected="selected">Seleccionar</option>
                      <option value="Alta">Alta</option>
                      <option value="Baja">Baja</option>
                      <option value="Normal">Normal</option>
                    </select>
Responsable   <select name="responsable" id="responsable">
                      <option>Seleccionar</option>
                      <option value="Marcelo">Marcelo</option>
                      <option value="Juan Pablo">Juan Pablo</option>
                      <option value="Alberto">Alberto</option>
                      <option value="NetCom">NetCom</option>
                                                            </select>
 Fecha desde:
                    <label>
                              <select name="fechainicio" id="fechainicio">
                                <option>Seleccionar</option>
                                <option value="Enero">Enero</option>
                                <option value="Febrero">Febrero</option>
                                <option value="Marzo">Marzo</option>
                                <option value="Abril">Abril</option>
                                <option value="Mayo">Mayo</option>
                                <option value="Junio">Junio</option>
                                <option value="Julio">Julio</option>
                                <option value="Agosto">Agosto</option>
                                <option value="Septiembre">Septiembre</option>
                                <option value="Octubre">Octubre</option>
                                <option value="Noviembre">Noviembre</option>
                                <option value="Diciembre">Diciembre</option>
                              </select>
                              </label>
Fecha hasta:
                    <select name="fechafinal" id="fechafinal">
                      <option>Seleccionar</option>
                      <option value="Enero">Enero</option>
                                <option value="Febrero">Febrero</option>
                                <option value="Marzo">Marzo</option>
                                <option value="Abril">Abril</option>
                                <option value="Mayo">Mayo</option>
                                <option value="Junio">Junio</option>
                                <option value="Julio">Julio</option>
                                <option value="Agosto">Agosto</option>
                                <option value="Septiembre">Septiembre</option>
                                <option value="Octubre">Octubre</option>
                                <option value="Noviembre">Noviembre</option>
                                <option value="Diciembre">Diciembre</option>
                    </select>
<input type="submit" name="button" id="button" value="ENVIAR DATOS" /> 
El codigo donde recivo los datos y los proceso es el siguiente:

Código PHP:
<? 
$bd_servidor 
"localhost";
$bd_usuario "pdu1906";
$bd_contrasenya "netcom";
$bd_bdname "pdu1906_1";
$link mysql_connect($bd_servidor,$bd_usuario,$bd_contrasenya);
mysql_select_db($bd_bdname,$link);
?>
<?php
$dependencia
$_POST['dependencia'];//te traes por POST los datos desde el formulario
$incidencia$_POST['incidencia'];
$nombre$_POST['nombre'];
$equipo$_POST['equipo'];
$marca$_POST['marca'];
$modelo$_POST['modelo'];
$prioridad$_POST['prioridad'];
$responsable$_POST['responsable'];
$fechainicio$_POST['fechainicio'];
$fechafinal$_POST['fechafinal'];
$strqry "SELECT * FROM cerradas where 1 = 1"//divides la consulta y según se escriba o no algo en un campo del formulario, cargo o no esa parte de la consulta; pero para evitar problemas de sintaxis, añado  1 = 1 en la primera consulta, pues uno nunca es menor que uno y con AND a continuación no altera el resultado de la consulta
if ($dependencia !==""){//si no se rellena este campo del formulario
$strqry.= " AND dependencia = '$dependencia'";}//añade esto a la consulta
if ($incidencia !==""){//si se añade este otro
$strqry.= " AND incidencia ='$incidencia'";}//añade esto (esto es para un campo numérico campo numérico)
if ($nombre !=="") {
$strqry.= " AND nombre ='$nombre'";}//para campo numérico
if ($equipo !==""){
$strqry.= " AND equipo ='$equipo'";}//para campo de texto, que debe ser exacto
if ($marca !==""){
$strqry.= " AND marca ='$marca'";}//para campo de texto, que debe ser exacto
if ($modelo !==""){
$strqry.= " AND modelo ='$modelo'";}//para campo de texto, que debe ser exacto
if ($prioridad !==""){
$strqry.= " AND prioridad ='$prioridad'";}//para campo de texto, que debe ser exacto
if ($responsable !==""){
$strqry.= " AND responsable ='$responsable'";}//para campo de texto, que debe ser exacto
if ($fechainicio !==""){
$strqry.= " AND fechainicio ='$fechainicio'";}//para campo de texto, que debe ser exacto
if ($fechafinal !==""){
$strqry.= " AND fechafinal='$fechafinal'";}//para campo de texto, que debe ser exacto
$sqry mysql_query($strqry,$link);//ahora lanzas la consulta
$encontrados =mysql_num_rows ($sqry);//cuentas el número de resultados
if ($encontrados 1) {echo "no hay resultados: vuelva a hacer la búsqueda";} else {while ($row mysql_fetch_assoc($sqry)){ //muestras lo que sea;}}//si no hay ninguno, avisas; si hay alguno tendras que mostrarlo con echo
//muestro los echo......
}}

?>
Lo que hace este script es filtrar por los campos que elija en el formulario, de esta manera puedo buscar en forma independiente por cualquiera de los campos, o su vez por varios campos a la vez.

Espero una ayuda para solucionar el incoveniente.... gracias