Input type="range" - come assegnare a variabile da onchange

di il
4 risposte

Input type="range" - come assegnare a variabile da onchange

Scusate, ho poca esperienza con php.
Leggo i valori da una tabella con Mysql e assegno i valori a delle barre di scorrimento.
Successivamente, dopo utilizzato input type="range" per impostare nuovi valori vorrei salvarli nella stessa tabella con una query, Non riesco ad assegnare tale valore dopo evento onchange ad una variabile da passare alla query.

Sotto il frammento di codice ad ora scritto senza ancora query
grazie a chiunque mi sappia dare una mano
<?php
include 'connetti.php';
$etichetta = 1;
$nome = 1;
$value = 1;
$durata = 1;
$dalle = 0;
$alle = 1;
$Nid = 1;

//Inizio il ciclo for
for ($a=0; $a <=23; $a ++)  
{
$query = " select id,soggiorno,Salone FROM tabella where id = $Nid";
$result = $result = mysqli_query($mysqli,$query);
$riga = mysqli_fetch_array($result);
//echo "<div>" . $riga['soggiorno'] . "</div>\n";

?>
<!DOCTYPE html>
<html>
<head>

<label "for=<?php echo 'nome'.$nome?>" >dalle ore <?php echo $dalle?>  alle ore <?php echo $alle?> ---- Valore attuale <?php echo $riga['soggiorno']?>:</label>
<input id=<?php echo 'nome'.$nome?> type="range" min="5" max="28" step="1" value="<?php echo $riga['soggiorno']?>" onchange="<?php echo 'durata'.$durata?>.value=value + ' ssgradi'"> 
<output id=<?php echo 'durata'.$durata?> for=<?php echo 'nome'.$nome?>> gradi </output>

<input type="submit"><br>

</form>
</form>
</body>
</html>

<?php
$Nid =$Nid +1;
$etichetta = $etichetta +1;
$nome = $nome +1;
$value = $value +1;
$durata = $durata +1;
$dalle = $dalle +1;
$alle = $alle +1;
}


Carlo

4 Risposte

  • Re: Input type="range" - come assegnare a variabile da onchange

    ccattaneo28 ha scritto:


    Successivamente, dopo utilizzato input type="range" per impostare nuovi valori vorrei salvarli nella stessa tabella con una query, Non riesco ad assegnare tale valore dopo evento onchange ad una variabile da passare alla query.
    Devi semplicemente inviare il form con i campi che intendi "catturare" per poi salvarli tramite la query.

    In questa pagina trovi tutte le istruzioni passo per passo.
  • Re: Input type="range" - come assegnare a variabile da onchange

    Ok grazie 100000,
    Mi e stato utile, ho capito e funziona.
    Ora riesco a catturare il valore reso da "input type range" e passarlo ad una variabile con il Post..
    Attualmente mi appaiono 24 "input type range" nella pagina con a fianco ognuno il suo pulsante submit.
    Primo come rilevare il numero di "input type range" da cui ho inviato il dato reso?

    Inoltre
    Esiste un modo per selezionare i valori dei vari input type range e con un unico pulsante "submit" passare i valori resi dai vari "input type range" con una azione sola??

    Se non mi sono spiegato bene scusatemi ci riprovo

    grazie comunque
  • Re: Input type="range" - come assegnare a variabile da onchange

    ccattaneo28 ha scritto:


    Primo come rilevare il numero di "input type range" da cui ho inviato il dato reso?
    Crea un campo nascosto nel <form> in cui memorizzare il conteggio dei range che inserisci nella pagina e di cui vuoi catturare il valore.

    ccattaneo28 ha scritto:


    Esiste un modo per selezionare i valori dei vari input type range e con un unico pulsante "submit" passare i valori resi dai vari "input type range" con una azione sola??
    Certo: è sufficiente differenziare i nomi dei campi con cui invii i vari range (es. range1, range2, ..., rangeX).

    Usando una variabile indice in un ciclo, puoi creare facilmente tramite concatenamente il nome del valore del range i-esimo.

    Per sapere quanti cicli fare, puoi recuperare il valore dal campo nascosto indicato in precedenza.

    Ciao!
  • Re: Input type="range" - come assegnare a variabile da onchange

    Ok Grazie non basta di sicuro..
    So che sarebbe meglio "avere un gattino appeso ai c...."
    X Te Marco di sicuro una banalita, io non ci arrivo.
    Come vedi nel codice allegato sono riuscito dopo i tuoi insegnamenti a rilevare il valore reso da "range", e a inserire un campo in una input box nascosta che mi rileva identificativo del range..
    Ho quindi un insieme di valori identificanti i range con i relativi valori.

    Domanda stupidissima, come metto un pulsante unico e come faccio penso con post a spedire tutti sti valori??

    se basta grazie

    {
    $query = " select id,soggiorno,Salone FROM tabella where id = $Nid";
    $result = $result = mysqli_query($mysqli,$query);
    $riga = mysqli_fetch_array($result);
    //echo "<div>" . $riga['soggiorno'] . "</div>\n";
    
    ?>
    <!DOCTYPE html>
    <html>
    <head>
    
    <form action="welcome.php" method="post">
    
    <label "for=<?php echo 'nome'.$nome?>" >dalle ore <?php echo $dalle?>  alle ore <?php echo $alle?> ---- Valore attuale <?php echo $riga['soggiorno']?>:</label>
    <input id=<?php echo 'nome'.$nome?>" type="range" min="5" max="28" step="1" name = "nome" value="<?php echo $riga['soggiorno']?>" onchange="<?php echo 'durata'.$durata?>.value=value + ' gradi'"> 
    <output id=<?php echo 'durata'.$durata?> for=<?php echo 'nome'.$nome?>> gradi </output>
    <input type= "hidden" id="custId" name="custId" value="<?php echo 'id'.$nome?>">
    <input type="submit"><br>
    
    
    </form>
    </form>
    </body>
    
    </html>
    
    <?php
    $Nid =$Nid +1;
    $etichetta = $etichetta +1;
    $nome = $nome +1;
    $value = $value +1;
    $durata = $durata +1;
    $dalle = $dalle +1;
    $alle = $alle +1;
    }
    
    
    
    ?>
    
    
Devi accedere o registrarti per scrivere nel forum
4 risposte