Título: Boton solo me funciona con click Publicado por: teudiss 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>"; } } } ?> Título: Re: Boton solo me funciona con click Publicado por: Castg! en 19 Marzo 2010, 13:58 pm Código
eso te sirve4?? Título: Re: Boton solo me funciona con click Publicado por: teudiss en 19 Marzo 2010, 14:04 pm Código
eso te sirve4?? Título: Re: Boton solo me funciona con click Publicado por: Castg! 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.
Título: Re: Boton solo me funciona con click Publicado por: teudiss 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. Título: Re: Boton solo me funciona con click Publicado por: Castg! en 20 Marzo 2010, 13:46 pm solo por eso? :o
Título: Re: Boton solo me funciona con click Publicado por: ~ Yoya ~ en 20 Marzo 2010, 19:51 pm Código Que haces man jajaja, con esto basta: Código Título: Re: Boton solo me funciona con click Publicado por: teudiss 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. Título: Re: Boton solo me funciona con click Publicado por: haxple 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 Título: Re: Boton solo me funciona con click Publicado por: WHK en 22 Marzo 2010, 19:58 pm Código
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. |