Search problem. Please help

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
maceved23
Forum Newbie
Posts: 17
Joined: Sun Jul 13, 2003 11:56 pm

Search problem. Please help

Post by maceved23 »

Hi all,

I would like first of all to thank all of PHP programmers of this site.

I have a problem with a query search.

Look the problem.

On this code I have a form and I have a combobox called, busca_sector the info is already storred on the DB and now I want that my user searc the DB but to have the abillity to search for all the option value of the combobox. I don't know if the correct way to do it is working with a combobox or to change this comonos to a list of checkbox ???

Code: Select all

<?
	
	include("config.php");
	viewheader();
	
                echo "            <h4><P>Digite los criterios de su busqueda.</P></h4>";
				echo "<FORM ACTION='conf_varios.php' METHOD='GET' NAME='busca_varios'>";
                echo "<TABLE CELLSPACING='0' CELLPADDING='0' BORDER='0' WIDTH='375' BGCOLOR='#99B9D0'>";
                echo "  <TBODY>";
                echo "    <TR> ";
                echo "     <TD><IMG SRC='cp-bcorn.gif' WIDTH='13' HEIGHT='12'></TD>";
                echo "      <TD WIDTH='100%'></TD>";
                echo "      <TD ALIGN='right'><IMG SRC='cp-bcorn2.gif' WIDTH='13' HEIGHT='12'></TD>";
                echo "    </TR>";
                echo "    <TR> ";
                echo "      <TD COLSPAN='3' ALIGN='CENTER'><TABLE WIDTH='100%' CELLPADDING='2' CELLSPACING='1'>";
                          
                echo "          <TR> ";
                echo "            <TD VALIGN='MIDDLE' ALIGN='RIGHT' WIDTH='75'><P>Sector:</P></TD>";
                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> 
                <SELECT NAME='busca_sector'>
            <option value='Administraci&oacute;n  / Servicios Generales'>1. Administraci&oacute;n 
            / Servicios Generales</option>
            <option value='Arquitectos'>2. Arquitectos</option>
            <option value='Asesor&iacute;a / Consultor&iacute;a'>3. Asesor&iacute;a 
            / Consultor&iacute;a</option>
            <option value='Banca / Seguros'>4. Banca / Seguros</option>
            <option value='Contabilidad / Finazas'>5. Contabilidad / Finazas</option>
            <option value='Educaci&oacute;n / Entretenimiento'>6. Educaci&oacute;n 
            / Entretenimiento</option>
            <option value='Ge&oacute;logos'>7. Ge&oacute;logos</option>
            <option value='Gerencia General / Presidencia'>8. Gerencia General 
            / Presidencia</option>
            <option value='Hoteler&iacute;a / Turismo'>9. Hoteler&iacute;a / Turismo</option>
            <option value='Inform&aacute;tica / Internet'>10. Inform&aacute;tica 
            / Internet</option>
            <option value='Ingenier&iacute;a'>11. Ingenier&iacute;a</option>
            <option value='Jur&iacute;dica / Legal'>12. Jur&iacute;dica / Legal</option>
            <option value='Medios Audiovisuales'>13. Medios Audiovisuales</option>
            <option value='Operaciones / Log&iacute;stica'>14. Operaciones / Log&iacute;stica</option>
            <option value='Otros'>15. Otros</option>
            <option value='Producci&oacute;n / Planta / Manufactura'>16. Producci&oacute;n 
            / Planta / Manufactura</option>
            <option value='Recursos Humanos'>17. Recursos Humanos</option>
            <option value='Salud'>18. Salud</option>
            <option value='Ventas / Mercadeo Comercial'>19. Ventas / Mercadeo 
            Comercial</option>
          </SELECT>
                </TD>";
                echo "          </TR>";
                echo "          </TR>";
                ////
                ////
                echo "          <TR> ";
                echo "            <TD VALIGN='MIDDLE' ALIGN='RIGHT' WIDTH='75'><P>Profesión:</P></TD>";
                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> <INPUT TYPE='TEXT' NAME='busca_titulo' SIZE='45' MAXLENGTH='60'></TD>";
                echo "          </TR>";
                ////
                echo "          <TR> ";
                echo "            <TD VALIGN='MIDDLE' ALIGN='RIGHT' WIDTH='75'><P>Postgrado:</P></TD>";
                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> <INPUT TYPE='TEXT' NAME='busca_pos' SIZE='45' MAXLENGTH='60'></TD>";
                echo "          </TR>";

                ///
                echo "          <TR> ";
                echo "            <TD VALIGN='MIDDLE' ALIGN='RIGHT' WIDTH='75'><P><center>Rango de Edad:</center></P></TD>";
                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> <INPUT TYPE='TEXT' NAME='edad_busca' SIZE='10' MAXLENGTH='10'> a <INPUT TYPE='TEXT' NAME='edad_busca1' SIZE='10' MAXLENGTH='10'></TD>";
//               	echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'><INPUT TYPE='TEXT' NAME='edad_busca1' SIZE='10' MAXLENGTH='10'></TD>";
                echo "          </TR>";
                ////
               echo "          <TR> ";
                echo "            <TD VALIGN='MIDDLE' ALIGN='RIGHT' WIDTH='75'><P><center>Experiencia:</center></P></TD>";
                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> <INPUT TYPE='TEXT' NAME='busca_anos_ex' SIZE='10' MAXLENGTH='10'> a <INPUT TYPE='TEXT' NAME='busca_anos_ex1' SIZE='10' MAXLENGTH='10'></TD>";
//                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> <INPUT TYPE='TEXT' NAME='busca_anos_ex1' SIZE='20' MAXLENGTH='10'></TD>";
                echo "          </TR>";
               /////
                echo "          <TR> ";
                echo "            <TD VALIGN='MIDDLE' ALIGN='RIGHT' WIDTH='75'><P><center>Rando Salario:</center></P></TD>";
                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> <INPUT TYPE='TEXT' NAME='busca_salario' SIZE='10' MAXLENGTH='10'> a <INPUT TYPE='TEXT' NAME='busca_salario1' SIZE='10' MAXLENGTH='10'></TD>";
//                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> <INPUT TYPE='TEXT' NAME='busca_salario1' SIZE='20' MAXLENGTH='10'></TD>";
                echo "          </TR>";
			   /////
			    echo "          <TR> ";
                echo "            <TD VALIGN='MIDDLE' ALIGN='RIGHT' WIDTH='75'><P>Idioma:</P></TD>";
                echo "            <TD VALIGN='MIDDLE' ALIGN='LEFT'> <INPUT TYPE='TEXT' NAME='busca_idioma' SIZE='20' MAXLENGTH='60'></TD>";
                echo "          </TR>";	
               ////
                echo "        </TABLE>";
                echo "          <INPUT name='SUBMIT' TYPE='SUBMIT' CLASS='button' VALUE='ENVIAR'>";
                echo "          &nbsp;"; 
                echo "    </TD>";
                echo "    </TR>";
                echo "    <TR>"; 
                echo "      <TD><IMG SRC='cp-bcorn3.gif' WIDTH='13' HEIGHT='12'></TD>";
                echo "      <TD><IMG SRC='http://www.b-link.co.uk/stevedawson/images/transparent_blank.gif' WIDTH='1' HEIGHT='1' BORDER='0'></TD>";
                echo "      <TD ALIGN='right'><IMG SRC='cp-bcorn4.gif' WIDTH='13' HEIGHT='12'></TD>";
                echo "    </TR>";
                echo "  </TBODY>";
                echo "</TABLE>";
              	echo "	</FORM>";

				echo"<h4><a href='http://www.api.com.co/hv/admin/menu.php'>Regresar al menu.</a></h4>";

?>
Here is the file that process the querry on the DB. This file searches the info of the DB and it do it well but now I need as I told to querry the DB field called sector_emp to get all the info of the combobox. Something like have a SEARCH ALL items.
I'm sure it's not a big deal ut I try several ways and I don't know now how to do that.

HOPE you answer my question


Code: Select all

<?php
include('config.php');


	db_connect();
	viewheader();

$resta=date("Y")- $edad_busca;
$resta1=date("Y")- $edad_busca1;
//`ano` BETWEEN '$resta1' AND '$resta'

//$res = mysql_query("SELECT * FROM `$dbtable` WHERE (`sector_emp` = '{$_GET['busca_sector']}') AND (`titulo_pre` LIKE '%{$_GET['busca_titulo']}%') AND (`ano` BETWEEN '$resta1' AND '$resta') AND (`anos_exp` BETWEEN '$busca_anos_ex' AND '$busca_anos_ex1') AND (`salario` BETWEEN '$busca_salario' AND '$busca_salario1') AND (`idioma1` LIKE '%{$_GET['busca_idioma']}%' OR `idioma2` LIKE '%{$_GET['busca_idioma']}%' OR `idioma3` LIKE '%{$_GET['busca_idioma']}%')") or die(mysql_error());
//$sql = "SELECT * FROM `$dbtable` WHERE `apellido1`  LIKE '%{$_GET['apellido_busca']}%' LIMIT 10"; 


$sql = "SELECT * FROM `$dbtable` WHERE (`sector_emp` = '{$_GET['busca_sector']}') AND (`titulo_pre` LIKE '%{$_GET['busca_titulo']}%') AND (`titulo_pos` LIKE '%{$_GET['busca_pos']}%') AND (`ano` BETWEEN '$resta1' AND '$resta') AND (`anos_exp` BETWEEN '$busca_anos_ex' AND '$busca_anos_ex1') AND (`salario` BETWEEN '$busca_salario' AND '$busca_salario1') AND (`idioma1` LIKE '%{$_GET['busca_idioma']}%' OR `idioma2` LIKE '%{$_GET['busca_idioma']}%' OR `idioma3` LIKE '%{$_GET['busca_idioma']}%')"; 
$res = mysql_query($sql) or die(mysql_error().'<p>'.$sql.'</p>'); 

// be consistent about where you place braces on your statements. 
if (mysql_num_rows($res) < 1) { 

echo '<p style="margin: 30 0 10 0;">NO EXISTE UN USUARIO CON ESTAS CARACTERÍSTICAS!!!!</p>'; 
echo '<h4><a href="javascript:history.back()">Regresar</a></h4>'; 

} else { 

   // you need to start the table here if you want it to contain all of the 
   // records, if you put the start in the while loop you'll get one table 
   // and heading per record 
?> 

<h4>ESTOS SON LOS DATOS DEL USUARIO CONSULTADO</h4> 

<!-- be consistent about using either single or double quotes around 
     your HTML 
    use CSS properly - then you won't have to use  tags anymore 
    and delete all your  tags --> 

<!-- your table tags were a bit messy - missing closing tags and 
     strangely nested tables, I've tried to clean it up but I'm not 
    sure how well it worked --> 
<table width="80%" border="0" cellpadding="1" cellspacing="0" class="textfield2"> 
<tr bgcolor="#F6F6F6"> 
   <td valign="top" align="right"> 
      - <a href='menu.php'>REGRESAR</a> -  - <a href='logout.php'>SALIR</a> - 
   </td> 
</tr> 
<tr> 
   <td valign="top"> 
      <table width="100%" border="0" cellspacing="1" cellpadding="3" align="center"> 
      <tr bgcolor="#F1F1F1"> 
         <td valign="top" colspan="5"> </td> 
      </tr> 
      <tr bgcolor="#F6F6F6"> 
         <th style="text-align: left;">Nombre</th> 
         <th style="text-align: left;">Email</th> 
         <th style="text-align: left;">Consultar</th> 
         <th>Mail</th> 
         <th>Seguimiento</th> 
      </tr> 
<?php 
   // format your code - use tabs to make it easier to follow. 
   while ($row = mysql_fetch_assoc($res)) { 
?> 
      <!-- where does the $bgColor variable come from? --> 
      <tr bgcolor="<?php echo $bgColor; ?>"> 
         <td valign="top"> 
            <b><?php echo $row['nombre']; ?> <?php echo $row['apellido1']; ?> <?php echo $row['apellido2']; ?></b> 
         </td> 
         <td valign="top"> 
            <a href="mailto:<?php echo $row['email1']; ?>"><?php echo $row['email1']; ?></a> 
         </td> 
         <td> 
            <a href="fiche_membre1.php?id=<?php echo $row['id']; ?>" target="_blank" onMouseOver="status='Consultar Información del usuario'; return true;" onMouseOut="status='';">Consultar Información</a> 
         </td> 
         <td> 
            <div align="center"><a href="envio_mail.php?id=<?php echo $row['id']; ?>" target="_blank" onMouseOver="status='Ingresar'; return true;" onMouseOut="status='';"> 
               <img src="checkbox.gif" width="18" height="18" border="0" /> 
            </a></div> 
         </td> 
         <td> 
            <div align="center"><a href="seguimiento.php?id=<?php echo $row['id']; ?>" target="_blank" onMouseOver="status='Ingresar'; return true;" onMouseOut="status='';"> 
               <img src="seg.gif" width="22" height="18" border="0" /> 
            </a></div> 
         </td> 
      </tr> 
<?php 
    
   } // end while 
    
?> 
      </table> 
   </td> 
</tr> 
<tr bgcolor="#F6F6F6"> 
   <td valign="top" align="right"> 
    - <a href='menu.php'>REGRESAR</a> -  - <a href='logout.php'>SALIR</a> - 
   </td> 
</tr> 
</table> 
<?php 
} // end if 
?>
User avatar
kendall
Forum Regular
Posts: 852
Joined: Tue Jul 30, 2002 10:21 am
Location: Trinidad, West Indies
Contact:

Post by kendall »

Im not sure but you probably need to put another option called "ALL" in your combo list

When the person selects this option from the combo list

it searches the database and then do a couple of LIKE statements i guess. i do not understand your mysql queries
Post Reply