Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Codigo de redireccion falla en formulario buscar

Estas en el tema de Codigo de redireccion falla en formulario buscar en el foro de PHP en Foros del Web. Hola a todos... Espero que me puedan ayudar con este problemilla que es la siguiente : Estoy creando mi archivo buscar.php , via GET y ...
  #1 (permalink)  
Antiguo 09/04/2017, 16:10
Avatar de thedenis  
Fecha de Ingreso: mayo-2013
Mensajes: 42
Antigüedad: 11 años, 7 meses
Puntos: 1
Exclamación Codigo de redireccion falla en formulario buscar

Hola a todos...

Espero que me puedan ayudar con este problemilla que es la siguiente :
Estoy creando mi archivo buscar.php , via GET y a la hora de realizar la busqueda la url me da esto :

http://localhost/tienda/buscar.php?q=lapicero

y yo quiero que me de esto

http://localhost/tienda/buscar/lapicero/

Código:
RewriteRule ^buscar/([A-Za-z0-9_-]+)/$ buscar.php?q=$1 [L,NC,QSA]
a lo cual lo he conseguido solo cuando escribo la URL pero mi gran duda es como hago para que al presionar el boton buscar del formulario me genere la URL de arriba en la barra de direcciones y no esto:

http://localhost/tienda/buscar/?q=goma --> "?q="

mi resultado deseado seria algo asi al presiona el boton buscar:

http://localhost/tienda/buscar/goma/

Espero que me puedan ayudar
Saludos!!!


Mi formulario de busquede es este

Código HTML:
 <form action="<?php echo $url; ?>/buscar/" method="GET" class="navbar-form navbar-left" role="search">
                            <div class="input-group">
                                <input type="text" class="form-control" placeholder="buscador" name="q" id="q" size="60">
                                <div class="input-group-btn">
                                    <button class="btn btn-default" type="submit" ><i class="glyphicon glyphicon-search"></i></button>
                                </div>
                            </div>
                        </form> 

Última edición por thedenis; 10/04/2017 a las 09:27
  #2 (permalink)  
Antiguo 10/04/2017, 15:12
Avatar de CircuitoX  
Fecha de Ingreso: julio-2008
Mensajes: 756
Antigüedad: 16 años, 4 meses
Puntos: 21
Respuesta: Codigo de redireccion falla en formulario buscar

Hola, mira lo siguiente:

http://myaddress/parameter
to
http://myaddress/index.php?s=parameter


http://stackoverflow.com/questions/7...in-the-address
__________________
Diseño Robotico en Arequipa / Desarrollo web / Sitios / Paginas / 99 css3
  #3 (permalink)  
Antiguo 11/04/2017, 03:51
Avatar de manuparquegiralda  
Fecha de Ingreso: junio-2012
Ubicación: Barcelona
Mensajes: 241
Antigüedad: 12 años, 5 meses
Puntos: 39
Respuesta: Codigo de redireccion falla en formulario buscar

Puedes hacerlo con javascript:

Código HTML:
Ver original
  1. <form id="formSearch" action="<?php echo $url; ?>/buscar/" method="GET" class="navbar-form navbar-left" role="search">
  2.     <div class="input-group">
  3.         <input type="text" class="form-control" placeholder="buscador" name="q" id="q" size="60">
  4.         <div class="input-group-btn">
  5.             <button class="btn btn-default" type="submit" ><i class="glyphicon glyphicon-search"></i></button>
  6.         </div>
  7.     </div>
  8. </form>

Código Javascript:
Ver original
  1. (function() {
  2.  
  3.     // Obtenemos el formulario y ponemos a la escucha el evento submit
  4.  
  5.     const form = document.getElementById( "formSearch" );
  6.     form.addEventListener( "submit", ev => submitFormSearhc( ev ));
  7.  
  8.     // Función que se ejecuta al hacer submit en el formulario
  9.  
  10.     function submitFormSearhc( ev ) {
  11.         // Detenemos el envío del formulario
  12.  
  13.         ev.preventDefault();
  14.  
  15.         // Obtenemos el input de búsqueda y la URL del action
  16.  
  17.         const input = document.getElementById( "q" );
  18.         var url = form.attributes.action.value;
  19.  
  20.         // Si hay algún valor, redireccionamos a la URL más el valor del input
  21.  
  22.         if ( input.value ) {
  23.             window.location = url + "" + input.value + "/";
  24.         }
  25.     }
  26.  
  27. })();

Algo así debería de funcionarte
__________________
Diseño Web - Arisman Web

Última edición por manuparquegiralda; 11/04/2017 a las 03:56

Etiquetas: html, redireccionamiento, regex
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 13:48.