Comunidad oficial de diseñadores web, web developers y Webmasters. Aqui podemos tratar temas actuales sobre diseño y tecnología. Podemos compartir y actualizarnos. Photoshop, Flash, PHP, ASP, Java, HTML, CSS, MySQL, CMS, etc. Unite YA y lee los Sticky

Ver más
  • 13,065 Miembros
  • 9,531 Temas
  • 3,449 Seguidores
  • 0

(ayuda) como hago este multibuscador en php

hola amigos, una pregunta estoy haciendo un proyecto de mi universidad, y necesito hacer lo siguiente

un buscador con seleccion osea que si selecciona buscar por codigo del libro busque solo por esa decampo de la tabla de la base de datos.

aqui tengo un ejmpelo d elo que quiero hacer, como seria el codigo php?


dijo:


<form id="form1" name="form1" method="post" action="">
<label for="textfield"></label>
<input name="textfield" type="text" id="textfield" size="60" />
<label for="select"></label>
<select name="select" size="1" id="select">
<option>nombre</option>
<option>codigo libro</option>
<option>fecha de prestamo</option>
<option>fecha de entrega</option>
</select>
<input type="submit" name="button" id="button" value="buscar" />
</form>



de ante mano gracias!
  • 0
  • 0Calificación
  • 0Seguidores
  • 111Visitas
  • 0Favoritos

3 respuestas

@Js_Toni dijo Hace más de 3 meses:

no es mejor que estudies php y mysql ?

phpya.com.ar

y lo haces sin pedir ayuda ya que es un trabajo para la universidad y asi aprendes hacer otras cositas.!!

saludos

@Samu22 dijo Hace más de 3 meses:

en las opciones del select podes guardar el nombre del campo a buscar y luego crear la consulta en base a eso por ejemplo

<?php
if($validacion_necesaria_para_procesar_el_buscador){    
    
$fields = array('nombre','codigo','fecha_prestamo','fecha_entrega');
    
    
$criteria mysql_real_escape_string($_POST['textfield']);
    
$field_to_search mysql_real_escape_string($_POST['select');
    
$slq "SELECT * FROM table WHERE ";
    if(
in_array($field_to_search,$fields)){
        
// Armas la consulta segun el campo, podrias validar en caso de que el campo fuera texto usar LIKE y en otros caso usar 
        // where campo = valor, o cualquier tipo de relacion que se necesite
        
$sql .= "{$field_to_search} LIKE '{$criteria}'";
    }else if(
$field_to_search == 'todos'){
        foreach(
$fields AS $i => $field){
            
$slq .= "{$field} LIKE '{$criteria}' ". ((($i 1) < count($fields)) ? ' OR ' '');
        }
    }
}

Tienes que ser miembro para responder en este tema