checkbox+azione

Ciao,

ho un tabella con dei dati visualizzati e se fleggo il campo disabiliata vorrei che all'istante facesse una query di update su una tabella di un db e mettesse il campo disabilita ad 1

Come posso modificare il codice qui sotto?

echo "<td><form name=\"form1\" method=\"POST\" action=\"\" >";
   echo "<center><input type=\"checkbox\" name=\"disabilita\" value=\"1\" ";
   if($disabilita=='1') 
  {
   echo('checked');
   $sql_1 = "UPDATE tab1 SET
  disabilita='1'
  WHERE id='$id'";

   if (@mysql_query($sql_1)) {
     echo 'ok';
   } else {
     echo 'error';
   }
                 
  }
  echo "/></center></form></td>";

 :bye:

inviato 9 anni fa
stellina
X 0 X

usando ajax e l'evento onclick oppure usando un link anziché checkbox.

scegli la strada e poi si adatta il codice.

risposto 9 anni fa
LonelyWolf
X 0 X

anche senza AJAX, con l'evento onclick puoi fare il submit del form

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

ho provato con javascript in questo modo :

echo "<td><form name=\"form1\" method=\"POST\" action=\"\" >";
   echo "<center><input type=\"checkbox\" name=\"disabilita\" onclick=\"javascript: document.form1.submit();\" value=\"1\" ";
   if($disabilita=='1') 
  {
   echo('checked');
   $sql_1 = "UPDATE tab1 SET
  disabilita='1'
  WHERE id='$id'";

   if (@mysql_query($sql_1)) {
     echo 'ok';
   } else {
     echo 'error';
   }
                 
  }
  echo "/></center></form></td>";

ma non funziona. L'unica cosa che fa è fleggare il campo.

 :tichedoff:

risposto 9 anni fa
stellina
X 0 X

Sei consapevole che quella query viene eseguita quando viene creata la pagina e non quando si clicca sulla checkbox?

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

scusa ma non ho capito come risolvere il problema.

ho bisogno che quando clicco sul checkbox esegua la query.

Non capisco dove sbaglio...

risposto 9 anni fa
stellina
X 0 X

Forse Gianni intende dire che all'esecuzione della pagina la query viene eseguita senza cliccare sulla checkbox...

Giusto Gianni?

 :bye:

risposto 9 anni fa
Marco Dario
X 0 X

Cosa succede quando si clicca sulla checkbox? Viene effettuato il post grazie all'evento onclick del javascript.

Allora quando deve essere eseguita la query? Solo quando viene effettuato il post!

Come faccio nel codice a verificare se è stato effettuato il post? Così:

if($_POST)
{
   ...

Come deve essere formattata la query?

$disabilitata = isset($_POST['']) ? 1 : 0;
$id = $_GET['id']; // suppongo che l'id sia preso dall'URL
$query = "UPDATE tab1 SET disabilita=$disabilitata WHERE id=$id";

// qui va il codice per la creazione dell'HTML della pagina (il form e tutti i suoi elementi)

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda