Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Discussione: Array di checkbox

  1. #1

    Array di checkbox

    Devo generare n checkbox, assegnando ad ognuna un id successivo, in modo da inviarle ad una pagina come array di booleani.
    Come posso fare?

  2. #2
    Prova:

    Codice PHP:
    <input type="checkbox" name="check[]" value="0">
    <
    input type="checkbox" name="check[]" value="1">
    <
    input type="checkbox" name="check[]" value="1">

    // se il method è post

    foreach ($_POST['check'] as $key => $value)
      {
      echo 
    "Hai selezionato la checkbox: $key con valore: $value
    "
    ;
      } 

  3. #3
    Ho usato:
    <input type='checkbox' name='check[]' checked='checked' value='1'/>
    <input type='checkbox' name='check[]' value='0'/>
    Ma come faccio nella pagina a cui manda il submit a stampare tutti i valori di tutte le checkBox?

  4. #4
    up

  5. #5
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    Riprendendo il codice di lolindirfaelivr se vuoi stampare solo i valori delle checkBox scrivi

    Codice PHP:
    foreach ($_POST['check'] as $key => $value)
      {
      echo 
    $value."
    "
    ;
      } 
    poi se devi scrivere l'esito di questi checkBox in un'altra pagina, non devi usare $_POST, ma $_GET.

  6. #6
    Con quel codice mi stampa "on" per ogni checkbox tickata ma non stampa niente per quelle non tickate...

  7. #7
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    Se scrivi così

    Codice PHP:
    foreach ($_POST['check'] as $key => $value)
      {
      if(
    $value=='on') { echo "true
    "
    ; } else { echo "false
    "
    ; }
      } 
    Recuperi lo stato dei checkbox, ovvero true o false, selezionato o no.

    La struttura per recuperare lo stato del checkbox, c'è: sta a te, adesso, a gestire l'output...


    Poi, dove hai i vari checkbox, che valori associ ad ogni controllo? Ovvero dai un value al controllo?

    Se scrivi, esempio, un checkbox per recuperare la materia
    Codice PHP:
    <input type="checkbox" name="check[]" value="matematica">
    <
    input type="checkbox" name="check[]" value="fisica">
    <
    input type="checkbox" name="check[]" value="italiano"
    e selezioni il primo controllo, recupererai 'matematica'.

    Per poterti aiutare (lo so che forse è lungo da scrivere) ma puoi fare un esempio più chiaro di quello che vorresti realizzare, scrivendo proprio quello che ti aspetti di avere?


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  8. #8
    Ho capito come funzionano le checkbox ma ripeto che il mio problema è che vede solo le checkbox tickate...
    Ho 20 checkbox di cui 10 tickate, con l'ultimo codice che mi hai postato stampa 10 volte true e basta.

  9. #9
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    allora, ti posto il codice che ho usato per fare le prove. funziona e ti scrive dei true o dei false a seconda se i controlli sono selezionati o no.

    Codice PHP:
    <?php

    if(isset($_POST[btn]))
    {
        
    $myCheck $_POST['check'];
        
    $numCheck $_POST['num_check'];

        for(
    $i=1;$i<=$numCheck;$i++)
        {
            if(
    $myCheck[$i]!='') echo "true"; else echo "false";
        }

    ?> 

    <form method='post'>
    <input type="checkbox" name="check[1]" value="1">
    <input type="checkbox" name="check[2]" value="2">
    <input type="checkbox" name="check[3]" value="3">
    <input type='hidden' name='num_check' value='3'>
    <input type='submit' value='vai' name='btn'>
    </form>
    Nell'esempio c'è un campo nascosto che serve per sapere quanti controlli ci sono; nell'esempio vale 3, nel tuo caso vale 20.

    Fammi sapere se così va bene.


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  10. #10
    Codice PHP:
    <form id="formPermissions" action="changePermissions.php" method="post">
    <
    table>
    <
    tr><td></td><td>utenti</td><td>utenti_tabelle</td><td>tabella_prova_1</td><td>tabella_prova_2</td></tr><tr><td>prova</td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]' checked='checked'/></td><td><input type='checkbox' name='check[]' checked='checked'/></td></tr><tr><td>prova_amilcare</td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]' checked='checked'/></td></tr><tr><td>prova_zucchero</td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td></tr><tr><td>prova_fabio</td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td></tr><tr><td>prova_za</td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]' checked='checked'/></td></tr><tr><td>prova_ze</td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]'/></td><td><input type='checkbox' name='check[]' checked='checked'/></td><td><input type='checkbox' name='check[]'/></td></tr></table>
    <
    div><input type="submit" value="Salva"/></div>
    </
    form
    Codice PHP:
    <?php
    $checklist
    =$_POST['check'];
    for (
    $i=0;$i<24;$i++) { 
        if(
    $checklist[$i]=='on') { echo "true
    "
    ; } else { echo "false
    "
    ; }
    }
    ?>
    Output:

    true
    true
    true
    true
    true
    true
    true
    true
    true
    true
    true
    true
    true

    Notice: Undefined offset: 13
    Notice: Undefined offset: 14
    Notice: Undefined offset: 15
    ...
    ...
    ...
    Notice: Undefined offset: 23

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.