Php 尝试以条款和条件的形式插入复选框

Php 尝试以条款和条件的形式插入复选框,php,Php,我试图在表单中输入条款和条件的复选框,但当我注册表单时,没有勾选复选框,注册就通过了(本来不应该这样)。请帮忙看一下 <?php echo "<h2>Register</h2>"; $submit = $_POST['register']; //form data $fullname = mysql_real_escape_string(htmlentities(strip_tags($_POST['fullname']))); $username = strto

我试图在表单中输入条款和条件的复选框,但当我注册表单时,没有勾选复选框,注册就通过了(本来不应该这样)。请帮忙看一下

<?php
echo "<h2>Register</h2>";

$submit = $_POST['register'];
//form data
$fullname = mysql_real_escape_string(htmlentities(strip_tags($_POST['fullname'])));
$username = strtolower(mysql_real_escape_string(htmlentities(strip_tags($_POST['username']))));
$password = mysql_real_escape_string(htmlentities(strip_tags($_POST['password'])));
$repeatpassword = mysql_real_escape_string(htmlentities(strip_tags($_POST['repeatpassword'])));
$email = mysql_real_escape_string(htmlentities(strip_tags($_POST['email'])));
$houseno = mysql_real_escape_string(htmlentities(strip_tags($_POST['houseno'])));
$addressa = mysql_real_escape_string(htmlentities(strip_tags($_POST['addressa'])));
$addressb = mysql_real_escape_string(htmlentities(strip_tags($_POST['addressb'])));
$addressc = mysql_real_escape_string(htmlentities(strip_tags($_POST['addressc'])));
$county = mysql_real_escape_string(htmlentities(strip_tags($_POST['county'])));
$state = mysql_real_escape_string(htmlentities(strip_tags($_POST['state'])));
$country = mysql_real_escape_string(htmlentities(strip_tags($_POST['country'])));
$accept = mysql_real_escape_string(htmlentities(strip_tags($_POST['accept'])));

if ($submit)
{
$namecheck = mysql_query("SELECT username FROM reusers WHERE username='$username'");
$count = mysql_num_rows($namecheck);

if($count!=0)
{
die("Username already taken!");

}


//check for registration form details
    if ($fullname&&$username&&$password&&$repeatpassword&&$email&&$houseno&&$addressa&&$county&&$state&&$country)
{
if($accept!= 1)
{
if ($password==$repeatpassword)
{
//check char lenght of username and fullname
if (strlen($username)>25||strlen($fullname)>25)
{
echo "Lenght of username or fullname is too long";
}
else
{

//check password length

if(strlen($password)>25||strlen($password)<6)
{
echo"Password must be between 6 and 25 characters";
}
else
{
//check password length
$emailcheck = mysql_query("SELECT email FROM reusers WHERE email='$email'");
$ecount = mysql_num_rows($emailcheck);
if($ecount!=0)
{
echo"email already registered Please sign in into your account to continue";
}
else
    {
       //generate random code
       $code = rand(11111111,99999999);

   //send activation email
   $to = $email;
   $subject = "Activate your account";
   $headers = "From: donotreply@reacheasy.co.uk";
   $body = " Hello $fullname,\n\nUsername $username,\n\n Password $password ,\n\nYou registered `and need to activate your account. Click the link below or paste it into the URL bar of your browser\n\nhttp://reach.co.uk/activate.php?code=$code\n\nThanks!";

   if (!mail($to,$subject,$body,$headers))
       echo "We couldn't sign you up at this time. Please try again later.";

else

{

//register the user!
//encript password
$password = md5($password);
$repeatpassword = md5($repeatpassword);


$queryreg = mysql_query("

INSERT INTO reusers VALUES ('','$fullname','$username','$password','$email','$code','0','houseno','addressa','addressb','addressc','county','state','country')

");

die("You have been registered successfully! Please check your email ($email) to activate your account<a href='index.php'>Return to login page</a>");
}
}
}
}
}
else
    echo"Your passwords do not match!";

}
else
    echo"Please read and accept Terms and Conditions before registering!";
}
else
        echo "Please fill in <b>all</> fields!";

}
?>
您必须使用

if($accept == 1)
因为选中复选框时,
$\u POST['accept']=1

现在返回
请在注册前阅读并接受条款和条件并在未选中复选框时注册用户。

您可以发布复选框的HTML吗?因为它是表单的一部分,所以我认为它将与$submit=$\u POST['register']一起发布;或者它是不同的工作,但我使用了这个如果($accept!=1),有区别吗
$accept!=如果$accept不是1,则1
为真,
$accept==1
仅当$accept=1时才为真。在您的情况下,
$accept=$\u POST['accept']=1
当复选框被选中,而在另一种情况下它丢失了。
if($accept == 1)