PHP checkbox
がチェックされているかどうかをチェックインするにはどうすればよいですか?
チェックボックスがチェックされている場合、チェックボックスの値が渡されます。それ以外の場合、フィールドはHTTPポストに渡されません。
if (isset($_POST['mycheckbox'])) {
echo "checked!";
}
isset()
またはempty()
(明示的なissetのチェック)天気チェックボックスがオンかオフかを確認できます。
例えば
<input type='checkbox' name='Mary' value='2' id='checkbox' />
ここで確認できます
if (isset($_POST['Mary'])) {
echo "checked!";
}
または
if (!empty($_POST['Mary'])) {
echo "checked!";
}
上記は、すべてのチェックボックスに別々に書き込む代わりに配列を作成できるよりも多くのことをしたい場合に1つだけをチェックします
<input type="checkbox" name="formDoor[]" value="A" />Acorn Building<br />
<input type="checkbox" name="formDoor[]" value="B" />Brown Hall<br />
<input type="checkbox" name="formDoor[]" value="C" />Carnegie Complex<br />
php
$aDoor = $_POST['formDoor'];
if(empty($aDoor))
{
echo("You didn't select any buildings.");
}
else
{
$N = count($aDoor);
echo("You selected $N door(s): ");
for($i=0; $i < $N; $i++)
{
echo htmlspecialchars($aDoor[$i] ). " ";
}
}
これを試して
index.html
<form action="form.php" method="post">
Do you like stackoverflow?
<input type="checkbox" name="like" value="Yes" />
<input type="submit" name="formSubmit" value="Submit" />
</form>
form.php
<html>
<head>
</head>
<body>
<?php
if(isset($_POST['like']))
{
echo "<h1>You like Stackoverflow.<h1>";
}
else
{
echo "<h1>You don't like Stackoverflow.</h1>";
}
?>
</body>
</html>
またはこれ
<?php
if(isset($_POST['like'])) &&
$_POST['like'] == 'Yes')
{
echo "You like Stackoverflow.";
}
else
{
echo "You don't like Stackoverflow.";
}
?>
ページにどのチェックボックスがあるかわからない場合(例:動的に作成する場合)、チェックボックスのすぐ上に同じ名前で値が0の非表示フィールドを配置できます。
<input type="hidden" name="foo" value="0" />
<input type="checkbox" name="foo" value="1">
この方法では、チェックボックスが選択されているかどうかに基づいて1または0を取得します。
ショートハンドが大好きです。
$isChecked = isset($_POST['myCheckbox']) ? "yes" : "no";