• User Attivo

    Ajax passaggio valori Checkbox

    Ciao a tutti,

    script in questione

    
    function salva(){
      htmlRequest = ajax();
      if (htmlRequest==null){
        alert ("Il browser non supporta richieste HTTP");
        return;
      }
      // controlliamo i parametri obbligatori
      if(document.form_invio.testo.value == "" || document.form_invio.testo.value == "NULL")
      {
        alert('Inserisci il Testo');
        return;
      }
      // inviamo i parametri al file per l'INSERT nel database
      htmlRequest.open('POST', 'inviashout.php');
      htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        if (document.form_invio.global.checked==true) {
      //checkbox is checked (true)
       var global = 1; 
    } else {
    //no checked
       var global = 0;
    }
      htmlRequest.send('testo='+document.form_invio.testo.value+'&global='+document.form_invio.global.value+'&user='+document.form_invio.user.value);
    
      // svuotiamo il modulo per il messaggio
      document.form_invio.testo.value = '';
      document.form_invio.testo.focus();
    }
    
    
    

    e il form

    [php]
    $content .= "<center><form name="form_invio" method="POST" onsubmit="salva(); return false;">
    <TEXTAREA name="testo" COLS=100% ROWS=1></textarea><br>
    <input type="checkbox" name="global"><b> Messaggio Globale </b><font color="red">solo per informazioni!</font>
    <input type="hidden" name="user" value="$user">
    <input type="submit" name="submit" value="Invia"></center><br>";
    [/php]

    File per il salvataggio

    [php]
    if(isset($_POST['testo'])) {

    $text = addslashes($_POST['testo']);
    $tim = time();
    $dat = date("Y-m-d", $tim);
    $ora = date("G:i:s");
    $date = "$dat $ora";
    $autore = addslashes($_POST['user']);
    $global = $_POST['global'];

    $db->sql_query("insert into shout values (NULL, '$autore', '$text', '$global', '$date')");

    }
    [/php]

    La variabile Global non mi viene passata.. Tutto il resto è ok!

    Cosa sbaglio? Sono un novellino con Ajax...

    Come posso fare in modo che dopo l'invio si cancella anche il checkbox come il testo?

    Grazie, Saluti.


  • User

    La variabile va dichiarata una sola volta e in cima alla funzione.