即使没有值,函数也会获得值true

时间:2013-07-31 10:31:44

标签: php html email get isset

我正在用php发送邮件,我写了这个:

<?php
function title()
{
if(isset($_GET['title']))
{
    return true;
}
else
{
    echo "please write a title!";
    return false;
}
}

function mess()
{
if(isset($_GET['mess']))
{
    return true;
}
else
{
    echo "please write a messege!";
    return false;
}
}

if(mess() && title())
{
    mail("guycohen801@gmail.com", $_GET['title'], $_GET['mess']);
    echo "the mail has bees send!";
}

?>
<form action="ftp_mail.php" method="get">
the title:
<input type="text" name="title"  />
the messege:
<input type="text" name="mess" />
<input type="submit" value="send" />
</form>

但即使我没有在$_GET['mess']$_GET['title']上写任何内容mess()title() 获得值true。 请帮助!!

2 个答案:

答案 0 :(得分:1)

<?php
if(empty($_POST['title']) && empty($_POST['mess']))
{
    echo "please fill all the fields";
} 
else 
{
    $title = str_replace(array("\r","\n"), "", $_POST['title']);
    mail("email", $title, $_GET['mess']);
    echo "the mail has been sent";
}

请注意,它必须是POST表单,而不是GET。

答案 1 :(得分:0)

使用此

if((isset($_GET['mess'])) && ($_GET['mess']!=""))