簡體   English   中英

確定提交表單后是否選中了一個復選框

[英]Determine whether a checkbox is checked upon form submission

我一直在尋找這個腳本已有一段時間了。 我有一些規則,然后如果您同意條款和規則,則有一個復選框可以單擊。

現在,如果該人選中了該框並同意規則,我該如何在PHP中進行檢查? 感謝您的幫助,我非常感謝!

假設您的表單看起來像這樣:

<form method="post" action="some_handler.php">
    <label for="option1">Option 1</label>
        <input id="option1" type="checkbox" name="option1" />
    <label for="option2">Option 2</label>
        <input id="option2" type="checkbox" name="option2" />
    <!-- submit, etc -->
</form>

您可以檢查$_POST是否存在復選框值(按名稱),即

<?php
$optionOne = isset( $_POST['option1'] );
$optionTwo = isset( $_POST['option2'] );

如果未選中這些框,則$_POST將不包含它們的值。

檢查以下內容已足夠:

$userAgrees = false;

if (isset($_POST['myCheckbox']))
{
   $userAgrees = true;
}

如果表單是方法POST表單。 然后,在操作頁面上,您應該可以訪問$ _POST變量。

在操作頁面上查看結果。

echo "<pre>";
print_r($_POST);
echo "</pre>";

$ _POST變量將是一個數組。 您可以像這樣訪問數組的值。

if($_POST["key"] == "value")

鍵是上面輸出中的名稱。

form.php的:

<form action="checkbox-form.php" method="post">
    <label for="formWheelchair">Do you need wheelchair access?</label>
    <input type="checkbox" name="formWheelchair" value="Yes" id="formWheelchair" />
 <input type="submit" name="formSubmit" value="Submit" />
</form>

復選框-form.php的:

if(isset($_POST['formWheelchair']) && 
$_POST['formWheelchair'] == 'Yes') 
{
    $wheelchair = true;
}
else
{
    $wheelchair = false;
}
    var_dump( $wheelchair ); 

//簡寫版本:

    $wheelchair = isset($_POST['formWheelchair'])?true:false;

直接來自: http : //www.html-form-guide.com/php-form/php-form-checkbox.html

注意:如果用戶未在所有字段中都輸入,則稍后可能需要使用會話來存儲數據以進行服務器端驗證。

格式為html:

<input type="checkbox" name="terms">

在表單中發布到的php腳本中:

if ( $_POST['terms'] == 'on' ) {

  echo 'User accepted terms';

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM