elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Boton solo me funciona con click
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Boton solo me funciona con click  (Leído 5,410 veces)
teudiss

Desconectado Desconectado

Mensajes: 197



Ver Perfil
Boton solo me funciona con click
« en: 19 Marzo 2010, 12:07 pm »

Hola, cuando hago click en el boton si funciona pero cuando pulso enter no funciona, he visto que hay un script en javascript para solucionarlo, pero se puede solucionar con codigo php ?

Os muestro el codigo, es para buscar una cadena de texto en una tabla.

buscar.php
Citar
<form id="form1" method="post" action="busqueda.php">
<input name="palabra" type="text" id="palabra" />
<input name="buscador" type="submit" id="buscador" value="Buscar" />
 
</form>

busqueda.php

Citar
if ($_POST['buscador'])
{  

$buscar = $_POST['palabra'];


if(empty($buscar))
{
echo "No se ha ingresado una cadena a buscar";
}else{
// Conexión a la base de datos y seleccion de registros
$con=mysql_connect("localhost", "root", "torero");
$sql = "SELECT * FROM alumnos WHERE chicos like '%$buscar%' ORDER BY id DESC";
mysql_select_db("colegio", $con);  

$result = mysql_query($sql, $con);  


$total = mysql_num_rows($result);

// Imprimimos los resultados
if ($row = mysql_fetch_array($result)){  
echo "Resultados para: <b>$buscar</b>";
do {  




} while ($row = mysql_fetch_array($result));  
echo "<p>Resultados: $total</p>";
} else {  
// En caso de no encontrar resultados
echo "No se encontraron resultados para: <b>$buscar</b>";  
}
}
}
?>


En línea

Castg!
Wiki

Desconectado Desconectado

Mensajes: 1.191



Ver Perfil WWW
Re: Boton solo me funciona con click
« Respuesta #1 en: 19 Marzo 2010, 13:58 pm »

Código
  1. <script type="text/javascript">
  2. function submit(flota) {
  3.   evento = window.event;
  4.   if(evento.keycode==13) {
  5.      flota.submit();
  6.   }
  7. }
  8. <form id="form1" method="post" action="busqueda.php" onkeypress="submit(this.form);">
  9. <input name="palabra" type="text" id="palabra" />
  10. <input name="buscador" type="submit" id="buscador" value="Buscar" />
  11. </form>

eso te sirve4??


En línea

teudiss

Desconectado Desconectado

Mensajes: 197



Ver Perfil
Re: Boton solo me funciona con click
« Respuesta #2 en: 19 Marzo 2010, 14:04 pm »

Código
  1. <script type="text/javascript">
  2. function submit(flota) {
  3.   evento = window.event;
  4.   if(evento.keycode==13) {
  5.      flota.submit();
  6.   }
  7. }
  8. <form id="form1" method="post" action="busqueda.php" onkeypress="submit(this.form);">
  9. <input name="palabra" type="text" id="palabra" />
  10. <input name="buscador" type="submit" id="buscador" value="Buscar" />
  11. </form>

eso te sirve4??
Pues no lo se, por que cuando ejecuta un script de este tipo el navegador muestra un mensaje para que acepte o algo asi, por eso preguntaba si es posible en php.
En línea

Castg!
Wiki

Desconectado Desconectado

Mensajes: 1.191



Ver Perfil WWW
Re: Boton solo me funciona con click
« Respuesta #3 en: 20 Marzo 2010, 00:07 am »

no:S en php va a ser imposbile ya que eso se ejecuta en el servidor y no en el cliente, ademas, el php se ejecuta y devuelve, una vez que devuelve (se muestra la pagina en el cliente) el servidor deja de interactuar. igualmente el codigo que yo te di no es generalizado para todos los navegadores.
En línea

teudiss

Desconectado Desconectado

Mensajes: 197



Ver Perfil
Re: Boton solo me funciona con click
« Respuesta #4 en: 20 Marzo 2010, 10:43 am »

Hola, ya me funciona es omitiendo esta linea:
Citar
if ($_POST['buscador'])


$buscar = $_POST['palabra'];


if(empty($buscar))
{


Por esta otra, es decir quitarle el valor al boton

 
Citar
if  isset($_POST['palabra']) && !empty($_POST['palabra']))


Gracias por todo.
En línea

Castg!
Wiki

Desconectado Desconectado

Mensajes: 1.191



Ver Perfil WWW
Re: Boton solo me funciona con click
« Respuesta #5 en: 20 Marzo 2010, 13:46 pm »

solo por eso? :o
En línea

~ Yoya ~
Wiki

Desconectado Desconectado

Mensajes: 1.125



Ver Perfil
Re: Boton solo me funciona con click
« Respuesta #6 en: 20 Marzo 2010, 19:51 pm »

Código
  1. if  isset($_POST['palabra']) && !empty($_POST['palabra']))

Que haces man jajaja, con esto basta:
Código
  1. if(!empty($_POST['palabra']))
En línea

Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.
teudiss

Desconectado Desconectado

Mensajes: 197



Ver Perfil
Re: Boton solo me funciona con click
« Respuesta #7 en: 22 Marzo 2010, 11:42 am »

solo por eso? :o

Si, el boton no tiene que tener valor alguno.

Citar
if  isset($_POST['palabra']) && !empty($_POST['palabra']))

Que haces man jajaja, con esto basta:
Código
if(!empty($_POST['palabra']))

Si, cierto, no se por que lo puse asi.
En línea

haxple

Desconectado Desconectado

Mensajes: 45


BlackApple


Ver Perfil WWW
Re: Boton solo me funciona con click
« Respuesta #8 en: 22 Marzo 2010, 12:04 pm »



busqueda.php

Citar

$buscar = $_POST['palabra'];


$sql = "SELECT * FROM alumnos WHERE chicos like '%$buscar%' ORDER BY id DESC";

SQL Injection my friend.. Mas cuidadoso :)

Saludos
En línea

What does your conscience say? — "You shall become the person you are."
WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.606


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: Boton solo me funciona con click
« Respuesta #9 en: 22 Marzo 2010, 19:58 pm »

Código
  1. $sql = "
  2. SELECT * FROM alumnos
  3. WHERE chicos like '%".
  4. str_replace('%', '\\%', mysql_real_escape_string($buscar)).
  5. "%' ORDER BY id DESC
  6. ";

Recuerda que alguien puede insertar un carácter % y causar una denegación de servicio por agotamiento de recursos al intentar volcar toda la tabla de contenido de alumnos si esta es demasiada extensa.

Te recomiendo también hacer un paginador para que le pongas un ímite a la busqueda porque igual alguien puede insertar una letra común como una "a" y volcar tantos resultados que tu servidor quedará a merced de cualquier atacante.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como hacer click en un boton de otra aplicacion?
Programación Visual Basic
$Edu$ 5 5,467 Último mensaje 22 Marzo 2015, 12:35 pm
por Piratex
¿Que es?¿Como funciona Click'n'Load 2 Jdownloader en PHP & AES?Te Explico
Dudas Generales
Weeken 0 9,592 Último mensaje 23 Mayo 2013, 22:48 pm
por Weeken
desabilitar un boton despues de dar un click
Desarrollo Web
landerzx 3 2,473 Último mensaje 1 Julio 2013, 19:53 pm
por 1mpuls0
Hacer click en un botón con script Python
Scripting
Splaze 0 3,324 Último mensaje 4 Octubre 2014, 16:19 pm
por Splaze
Click en boton selenium y python
Scripting
dian1919 3 5,174 Último mensaje 7 Marzo 2023, 18:28 pm
por dian1919
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines