2013-02-08 139 views
17

我想要在booking.php页面上发布复选框的值。发布复选框值

页面上有很多复选框,但我不知道如何发布在booking.php页面上。

<form name="booking.php" method="post"> 
    <label for="tour" class="tour-label">Add to Tour List</label> 
    <input type="checkbox" name="booking-check" value="Desert Safari" /> 
    </form> 
    <div class="details"><a href="booking.php">Book Selected Tours</a></div> 

回答

2

您应该使用

<input type="submit" value="submit" /> 

form内。

,并添加action到您form标签例如:

<form action="booking.php" method="post"> 

这是发表您的形式进入你选择哪一个动作。

从PHP可以通过

$_POST['booking-check']; 
+3

我认为这也是非常重要的注意,复选框,输入的是只能通过使用$ _POST,如果他们被检查 - 否则他们没有设置。 – Drew 2013-02-08 21:12:53

34

得到这个值有很多的链接,让你知道如何从PHP中的复选框后办理值。 看看这个链接:http://www.html-form-guide.com/php-form/php-form-checkbox.html

单复选框

HTML代码:

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

PHP代码:

<?php 

if(isset($_POST['formWheelchair']) && 
    $_POST['formWheelchair'] == 'Yes') 
{ 
    echo "Need wheelchair access."; 
} 
else 
{ 
    echo "Do not Need wheelchair access."; 
}  

?> 

复选框组

<form action="checkbox-form.php" method="post"> 

Which buildings do you want access to?<br /> 
<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 /> 
<input type="checkbox" name="formDoor[]" value="D" />Drake Commons<br /> 
<input type="checkbox" name="formDoor[]" value="E" />Elliot House 

<input type="submit" name="formSubmit" value="Submit" /> 

</form> 

<?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($aDoor[$i] . " "); 
    } 
    } 
?> 
+0

修复了帖子! – 2013-02-08 21:13:46

+1

谢谢,并有+1 – PeeHaa 2013-02-08 21:15:42

+0

然后,如果我明白多选的结果是一个数组,其中包含所有的值?我们必须使用'[]'来达到这个目的吗? – 2016-04-28 19:19:41

1

在你的表单标签,而不是

name="booking.php" 

使用

action="booking.php" 

,然后在booking.php使用

$checkValue = $_POST['booking-check']; 

另外,你需要在那里

一个提交按钮
<input type='submit'> 
+0

我做过但没有在booking.php页面上找到打印值 – user2055788 2013-02-08 21:12:58

+0

上面的代码不会打印结果,只是从服务器上获取它。如果您需要打印出来,请添加'print $ checkValue;' – 2013-02-08 21:15:13

+0

谢谢!我只是在线学习php。这就是为什么有问题。 – user2055788 2013-02-08 21:22:37

2

正常时候,che ckboxes返回一个开/关值。

你可以用这个代码进行验证:

<form action method="POST"> 
     <input type="checkbox" name="hello"/> 
</form> 

<?php 
if(isset($_POST['hello'])) echo('<p>'.$_POST['hello'].'</p>'); 
?> 

这将返回

<p>off</p> 

<p>on</p>