2010-11-08 13 views
7

Ho un pulsante chiaro che voglio legare in qualche codice php. come posso rilevare se viene premuto il pulsante di cancellazione. Quando l'utente preme, ho intenzione di farlo aggiornare una tabella sql per cancellare le voci. ma prima devo sapere quando viene premuto il pulsante.più pulsanti su un modulo

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

quando fanno clic chiaro, fa qualsiasi altra cosa accada a parte l'interrogazione viene fatta? Per esempio. C'è un messaggio o un modulo di invio? – babonk

risposta

18

si controlla la post o get dati dal modulo, utilizzando il nome del pulsante:

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

PHP (dopo l'invio):

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

In alternativa, si dispone di due pulsanti con lo stesso nome, che sia inviare il modulo, e if/else i loro valori:

<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 (dopo la presentazione):

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

Non ho mai saputo che ci fosse un tag button cool. grazie per l'aiuto. – acctman

+0

Nessun problema. Una cosa da tenere a mente, se non si dice 'type = 'button'' per quel tag, sarà AUTOMATICAMENTE un buttten' submit'! – Ben

1

O filo la voce come un pulsante si collega ad un snippet JavaScript che spara una richiesta AJAX, o utilizzare un ingresso di invio. (Determinare se il modulo è stato presentato o ripristinare in base al presentare value)

0

è possibile associare un evento ajax ad esso viene cliccato. Se si utilizza jQuery, è possibile associare la funzione ajax() all'evento click. La funzione ajax consente il facile passaggio di variabili, il controllo degli errori, ecc.

Ajax chiama un file php, chiamiamolo reset_ajax.php, che effettuerà la query.

L'altra opzione è quella di tenere traccia del pulsante di ripristino che viene fatto clic con un input nascosto che viene aggiornato ogni volta che viene fatto clic e quindi è possibile effettuare la query sul back-end al momento dell'invio del modulo.

Fino a voi quale metodo si desidera utilizzare. Il primo ha il vantaggio di funzionare anche se non invia il modulo.

2

Soluzione da: 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"; 
} 
?> 
Problemi correlati