Leggi se la casella di controllo è selezionata in PHP

Subodh Poudel 30 gennaio 2023
PHP
  1. Usa la funzione isset() sull’array $_POST per leggere se la casella di controllo è spuntata
  2. Usa la funzione in_array() per leggere se la casella di controllo è selezionata per le caselle di controllo come array
  3. Utilizzare la funzione isset() con funzione ternaria per leggere se la casella di controllo è selezionata
Leggi se la casella di controllo è selezionata in PHP

Dimostreremo come controllare se la casella di controllo è spuntata in PHP usando la funzione isset() sull’array $_POST. Forniamo il valore dell’attributo name del tag input dell’HTML come elemento dell’array nell’array $_POST.

Introdurremo un altro metodo per leggere la casella di controllo se è spuntata in PHP usando la funzione in_array(). Usiamo le caselle di controllo come un array in questo metodo. Significa che il campo all name nel tag input HTML deve contenere lo stesso array.

Introdurremo un metodo di abbreviazione per verificare se la casella di controllo è selezionata utilizzando l’operatore ternario. Il metodo è più semplice e più breve e utilizza la funzione isset().

Usa la funzione isset() sull’array $_POST per leggere se la casella di controllo è spuntata

Possiamo usare la funzione isset() per controllare se la casella di controllo è spuntata in PHP. La funzione isset() accetta l’array $_POST come argomento. L’array $_POST contiene il valore specifico dell’attributo name presente nel formato HTML.

Ad esempio, crea un modulo in HTML con il metodo POST e specifica l’azione su index.php. Crea due caselle di controllo con i nomi rispettivamente test1 e test2. Salvate il file con l’estensione .php. Crea un file PHP chiamato index.php. Applica due condizioni if alla funzione isset() con l’array $_POST come argomento. Usa test1 e test2 come elementi dell’array rispettivamente negli array $_POST. Stampa il messaggio specificando che il rispettivo valore è stato verificato.

L’esempio seguente utilizza il metodo POST per inviare i dati nel modulo. È sicuro durante l’invio di informazioni sensibili tramite il modulo. Clicca qui per saperne di più sul metodo POST. L’utente seleziona entrambe le caselle di controllo nel modulo. Pertanto, lo script restituisce il modo in cui è mostrato di seguito. Se l’utente avesse selezionato solo l ‘Opzione 1, lo script sarebbe risultato come valore verificato1. È simile anche all ‘Opzione 2.

Codice di esempio:

# html 5
<form action="index.php" method="post" >
<input type="checkbox" name="test1" value="value1"> Option 1
<input type="checkbox" name="test2" value="value2"> Option 2
<input type="submit" value="Submit"> 
</form>
#php 7.x
<?php
if(isset($_POST['test1'])){
    echo "checked value1"."<br>";
}
if(isset($_POST['test2'])){
    echo "checked value2";
}
?>

Produzione:

checked value1
checked value2

Usa la funzione in_array() per leggere se la casella di controllo è selezionata per le caselle di controllo come array

Possiamo usare la funzione in_array() per verificare se un elemento si trova all’interno di un array in PHP. La funzione in_array() accetta il valore da controllare come primo argomento. Il secondo argomento della funzione è l’array in cui il valore deve essere verificato. Controlla il manuale PHP per saperne di più sulla funzione in_array. Perché questo metodo funzioni, tutti i valori dell’attributo name in formato HTML devono essere un array.

Ad esempio, assegna il valore dell’attributo name in formato HTML con l’array test[]. Nota che si applica a tutte le caselle di controllo type. Per prima cosa, nel file PHP, controlla se i dati sono stati inviati usando la funzione isset() come fatto nel primo metodo. Tuttavia, non utilizzare le parentesi [] dopo il test durante il controllo dei dati pubblicati. Quindi, usa la funzione in_array() per controllare se il valore1 è nell’array $_POST['test']. Visualizza il messaggio.

Inizialmente, l’esempio seguente controlla se i dati sono stati inviati nel modulo. Se la condizione è vera, allora controlla se valore1 si trova nell’array $_POST['test'] usando la funzione in_array(). L’utente seleziona la prima casella di controllo nel modulo.

Codice di esempio:

#html 5
<form action="index.php" method="post" >
<input type="checkbox" name="test[]" value="value1"> Option 1
<input type="checkbox" name="test[]" value="value2"> Option 2
<input type="submit" value="Submit"> 
#php 7.x
<?php
if(isset($_POST['test'])){
    if(in_array('value1', $_POST['test'])){
        echo "Option1 was checked!";
    }
}
?>

Produzione:

Option1 was checked!

Utilizzare la funzione isset() con funzione ternaria per leggere se la casella di controllo è selezionata

Possiamo utilizzare un metodo di abbreviazione per verificare se la casella di controllo è stata selezionata in PHP. Questo metodo utilizza un operatore ternario insieme alla funzione isset(). Si prega di controllare MSDN Web Docs per conoscere l’operatore ternario.

Ad esempio, impostare una variabile $check per memorizzare il valore dell’operazione ternaria. Usa la funzione isset() per controllare se test1 è stato spuntato nella casella di controllo. Stampa la variabile $check per mostrare il risultato. Nell’esempio seguente, viene visualizzato verificato se la condizione è vera, e deselezionato viene visualizzato se la condizione è falsa. L’utente seleziona la seconda casella di controllo nel modulo. Pertanto, la condizione non riesce.

Codice di esempio:

#html 5
<form action="index.php" method="post" >
<input type="checkbox" name="test1" value="value1"> Option 1
<input type="checkbox" name="test2" value="value2"> Option 2
<input type="submit" value="Submit"> 
</form>
#php 7.x
<?php
$check = isset($_POST['test1']) ? "checked" : "unchecked";
echo $check;
?>

Produzione:

unchecked
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn