Foros del Web » Programando para Internet » PHP »

Recargar página con el valor del campo de texto

Estas en el tema de Recargar página con el valor del campo de texto en el foro de PHP en Foros del Web. Hola, en una página index.php quiero agregar un buscador. Por lo tanto agregué: Código PHP: <div id="buscador">     <div id="buscador1"><input type='text' name='buscar' size='23'></div>     <div id="buscador2"> <?= "<a href=./index.php?varbuscar=" . $buscar . "><img src='./images/buscar1.jpg' width='57' height='25' border='0'></a>" ; ...
  #1 (permalink)  
Antiguo 01/09/2008, 05:32
 
Fecha de Ingreso: abril-2005
Mensajes: 483
Antigüedad: 19 años
Puntos: 3
Recargar página con el valor del campo de texto

Hola, en una página index.php quiero agregar un buscador. Por lo tanto agregué:

Código PHP:
<div id="buscador">
    <div id="buscador1"><input type='text' name='buscar' size='23'></div>
    <div id="buscador2"><?="<a href=./index.php?varbuscar=".$buscar."><img src='./images/buscar1.jpg' width='57' height='25' border='0'></a>";?></div>
</div>
No sé cómo hacer para que me recargue la misma página index.php pasando como parámetro el dato ingresado en el campo de texto. Con el ejemplo que pegué no me funciona.

Gracias desde ya por las respuestas.
Saludos
  #2 (permalink)  
Antiguo 01/09/2008, 06:08
 
Fecha de Ingreso: agosto-2007
Mensajes: 345
Antigüedad: 16 años, 8 meses
Puntos: 21
Respuesta: Recargar página con el valor del campo de texto

que tal asi:

Código PHP:

<div id="buscador"
    <
div id="buscador1"><input type='text' id='buscar' size='23'></div
    <
div id="buscador2"><a href="./index.php?varbuscar=+document.getElementById('buscar').value">buscar</a></div
</
div
  #3 (permalink)  
Antiguo 01/09/2008, 06:18
 
Fecha de Ingreso: abril-2005
Mensajes: 483
Antigüedad: 19 años
Puntos: 3
Respuesta: Recargar página con el valor del campo de texto

Gracias por responder.

Hice que me muestra el valor de $varbuscar con

Código PHP:
echo $varbuscar
Me devuelve document.getElementById(\'buscar\').value

Creo falta algún pequeño detalle pero no sé que es.

Saludos
  #4 (permalink)  
Antiguo 01/09/2008, 06:39
 
Fecha de Ingreso: agosto-2007
Mensajes: 345
Antigüedad: 16 años, 8 meses
Puntos: 21
Respuesta: Recargar página con el valor del campo de texto

cambia:

Código PHP:
<div id="buscador2"><a href="./index.php?varbuscar=+document.getElementById('buscar').value">buscar</a></div
por esto:

Código PHP:
<div id="buscador2"><a href="./index.php?varbuscar="+document.getElementById('buscar').value>buscar</a></div
  #5 (permalink)  
Antiguo 01/09/2008, 07:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Recargar página con el valor del campo de texto

nx00, que clase de Javascript es ese??? no lo conocía..... :P (mezclado con HTML)
(deberías leerte alguna referencia de antes de cometer mas errores entre ambos)



--

ci2000, te refieres a que se refleje la variable de búsqueda desde antes de hacerla??? (para que al dar click al enlace no borre la consulta???)

Código HTML:
<a href="#" onclick="document.location.href=document.getElementById('mi_input_ID').value"> 
o, te referías a que una ves habiendo hecho la búsqueda se reflejara la búsqueda en el enlace... ???

Código PHP:
<a href="foo.php?bar=<?php (isset($_GET['q'])? $_GET['q']: ''); ?>">
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 01/09/2008, 08:22
 
Fecha de Ingreso: abril-2005
Mensajes: 483
Antigüedad: 19 años
Puntos: 3
Hola pateketrueke, lo que necesito es que el al dar click en el enlace vuelva a recargar la misma página index.php y que esa misma página reciba a la variable $varbuscar con el valor que se escribió en el campo de texto.

Saludos

Tal vez no me expresé correctamente.

Tengo en una página index.php un campo de texto y un botón (una imagen .jpg). El usuario escribirá en dicho campo y al hacer click sobre el botón quiero volver a recargar la misma página index.php y que además la variable $buscar reciba como parámetro lo que está en el campo de texto para así hacer la consulta SQL y demás...

Gracias y saludos

La variable es $varbuscar, no $buscar

Nadie sabe cómo hacer esto?

Última edición por GatorV; 01/09/2008 a las 19:50
  #7 (permalink)  
Antiguo 01/09/2008, 15:21
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Recargar página con el valor del campo de texto

Entonces seria:

Código PHP:
<div id="buscador2"><?php echo '<a href="./index.php?varbuscar='.$_POST['buscar'].'"><img src="./images/buscar1.jpg" width="57" height="25" border="0"></a>';?></div>
  #8 (permalink)  
Antiguo 01/09/2008, 15:33
Avatar de pato_volador  
Fecha de Ingreso: octubre-2005
Ubicación: Planeta tierra
Mensajes: 254
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Recargar página con el valor del campo de texto

Es relativamente facil, depende como estas enviando tu valor a buscar, te explicare los metodos para post y get, son bien sencillos.

Código HTML:
<form name="form1" id="form1" method="get" action="">
<p align="center">
<input name="busca" type="text" size="100" maxlength="100" value="<?php echo(isset($_GET['busca'])?$_GET['busca']:''); ?>" />
 </p>
<p align="center">
 <input type="submit" name="Submit" value="Buscar" />	    
 </p>
</form> 
Como podras darte cuenta en "value" del campo dice "si existe la variable 'busca', entonces el valor de la caja es lo que contenga esa variable, y esa variable vale lo que se haya escrito en esa caja...

mmmm espero que me haya dado a entender, si no dime y con gusto te explico...
Saludos.
__________________
De todas las cosas que queria ser... :-D acabe siendo un pato volador... :risa:
http://patovolador.wordpress.com
  #9 (permalink)  
Antiguo 01/09/2008, 15:59
 
Fecha de Ingreso: abril-2005
Mensajes: 483
Antigüedad: 19 años
Puntos: 3
Gracias por responder, pero creo no me he explicado bien.

Ronruby, tu ejemplo llama a index.php luego de recibir el valor de buscar.

pato_volador, tu ejemplo según entiendo lo que hace es mostrar en el campo de texto el valor de la variable busca.

En realidad lo que necesito es enviar el dato escrito en el campo de texto como variable para que la misma página index.php reciba ese valor al recargarse nuevamente. El envío del campo se realizará por medio de un a href.

Gracias por molestarse en contestar y saludos

En definitiva, lo que quiero hacer es lo mismo que está en el comienzo de esta página de forosdelweb. Hay un cuadro de texto y un botón Buscar, luego de escribir el dato y hacer click sobre Buscar en esta misma página aparece el resultado de la búsqueda.
La pequeña diferencia con lo mío es que el botón lo sustituí por una imagen que tiene una lupa, es por eso que uso a href.

Tal vez ahora me haga entender mejor.

Saludos

Última edición por GatorV; 01/09/2008 a las 19:50
  #10 (permalink)  
Antiguo 01/09/2008, 16:26
 
Fecha de Ingreso: mayo-2007
Mensajes: 49
Antigüedad: 16 años, 10 meses
Puntos: 1
Respuesta: Recargar página con el valor del campo de texto

Un ejemplo con javascript puro.

Funcion javascript
Código:
<script type="text/javascript">
   function foo(){
   value = document.getElementById("bar").value;
   document.getElementById("enlace").href = "prueba.php?value=" + value;
   }
</script>
codigo html normal
Código:
<input type="text" id="bar" />
<a href="prueba.php" onclick="foo();" id="enlace">Hola mundo sucio</a>

A mi me funcionaria algo asi ya despues recibes la variable en get por medio de PHP.
Aunque este codigo es algo sucio xD y por algo me refiero a que es como revolcarse con cerdos.
  #11 (permalink)  
Antiguo 01/09/2008, 16:51
 
Fecha de Ingreso: abril-2005
Mensajes: 483
Antigüedad: 19 años
Puntos: 3
Respuesta: Recargar página con el valor del campo de texto

Gracias user86, te entendí perfectamente.

No sé porque dices que el código es algo sucio. Me parece perfectamente aplicable.

Saludos
  #12 (permalink)  
Antiguo 01/09/2008, 22:26
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Recargar página con el valor del campo de texto

Otra versión del código de user86, un poco más directa (no necesita una función JS extra):

Código HTML:
<input type="text" id="bar" />
<a href="javascript:void(0)" onclick="location.href='prueba.php?value='+document.getElementById('bar').value;" id="enlace">
    Hola mundo sucio
</a> 
Un saludo,
  #13 (permalink)  
Antiguo 02/09/2008, 05:38
 
Fecha de Ingreso: abril-2005
Mensajes: 483
Antigüedad: 19 años
Puntos: 3
Excelente!! eso es lo que necesitaba. Anduvo perfecto.

Un detalle más... ¿Cómo se puede hacer para que al dar enter en el campo de texto sea lo mismo que hacer click sobre el botón búscar?

Gracias y saludos

Alguien sabe responder a mi última consulta?

Gracias

Última edición por GatorV; 02/09/2008 a las 14:37
  #14 (permalink)  
Antiguo 02/09/2008, 10:24
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 16 años, 5 meses
Puntos: 75
Respuesta: Recargar página con el valor del campo de texto

men solo das enter si el campo de texto esta en el formulario al dar enter es como si le hubieras dado clic al submit.
a mi me funciono
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #15 (permalink)  
Antiguo 02/09/2008, 16:04
 
Fecha de Ingreso: abril-2005
Mensajes: 483
Antigüedad: 19 años
Puntos: 3
Respuesta: Recargar página con el valor del campo de texto

Gracias por contestar lobo_php, pero el campo de texto no está en un formulario. El botón al que me refiero es un .jpg que tiene un ref. Es por eso que el enter no funciona.

Saludos
  #16 (permalink)  
Antiguo 02/09/2008, 16:23
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Recargar página con el valor del campo de texto

Por defecto en tu formulario se debe de enviar al presionar enter a menos que 2 cosas:

1) No tengas un action="pagina" en tu <form>
2) No tengas un boton submit

Si no tienes al menos 1 de esos dos, entonces no se enviara por lo que debes de manejar el evento con javascript.

Saludos.
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 22:17.