2010-11-08 11 views
7

Tengo un botón claro que quiero vincular con alguna codificación php. ¿Cómo puedo detectar si se presiona el botón borrar? Cuando el usuario presiona borrar, voy a tener que actualizar una tabla SQL para borrar las entradas. pero primero necesito saber cuándo se presiona el botón.botones múltiples en un formulario

<input name="Reset1" type="reset" value="clear" /> 
+0

Al hacer clic transparente, ¿cualquier otra cosa sucede aparte de la consulta que se hizo? P.ej. ¿Hay un mensaje o un formulario enviado? – babonk

Respuesta

18

comprobar el post o get datos de su forma, utilizando el nombre del botón:

<form action='' method='post'> 
    <button type='submit' name='reset'>Clear</button> 
    <button type='submit' name='submit'>Submit</button> 
</form> 

PHP (después de la presentación):

if(isset($_POST['reset'])) { /* ...clear and reset stuff... */ } 
else if(isset($_POST['submit']) { /* ...submit stuff... */ } 

Alternativamente, usted tiene dos botones con el mismo nombre, que tanto presentar su formulario, y if/else sus valores:

<form action='' method='post'> 
    <button name='submit' value='0'>Clear</button> 
    <button name='submit' value='1'>Submit</button> 
    <button name='submit' value='2'>Something Else</button> 
</form> 

PHP (después de la presentación):

if($_POST['submit']==0)  { /* ...clear and reset stuff... */ } 
else if($_POST['submit']==1) { /* ...submit stuff... */ } 
else if($_POST['submit']==2) { /* ...do something else... */ } 
+0

nunca supe que había una etiqueta de botón genial. gracias por la ayuda. – acctman

+0

Sin preocupaciones. Una cosa a tener en cuenta, si no dices 'type =' button'' para esa etiqueta, ¡AUTOMÁTICAMENTE será un botón 'submit'! – Ben

1

cualquiera de los cables hasta el artículo como un botón de conectar a un fragmento de JavaScript que dispara una petición AJAX, o utilizar una entrada de someterse. (Determina si se envía el formulario o restablecer basado en el presente valor)

0

Usted puede unirse a un evento ajax a que se ha hecho clic. Si está utilizando jQuery, puede vincular la función ajax() a su evento de clic. La función ajax permite un fácil paso de variables, comprobación de errores, etc.

Llamarás a un archivo php, llamémoslo reset_ajax.php, que hará la consulta.

La otra opción es realizar un seguimiento del botón de reinicio al que se hace clic con una entrada oculta que se actualiza cada vez que se hace clic, y luego puede realizar la consulta en el backend al enviar el formulario.

Acerca de usted el método que desea utilizar. El primero tiene la ventaja de funcionar incluso si no envían el formulario.

2

Solución de: http://websistent.com/multiple-submit-buttons-in-php/

html:

<input type="submit" name="btn_submit" value="Button 1" /> 
<input type="submit" name="btn_submit" value="Button 2" /> 
<input type="submit" name="btn_submit" value="Button 3" /> 

php:

<?php 
if($_REQUEST['btn_submit']=="Button 1") 
{ 
print "You pressed Button 1"; 
} 
else if($_REQUEST['btn_submit']=="Button 2") 
{ 
print "You pressed Button 2"; 
} 
else if($_REQUEST['btn_submit']=="Button 3") 
{ 
print "You pressed Button 3"; 
} 
?> 
Cuestiones relacionadas