-4
if($action == "send"){
$_POST['name'] =        $name ;
$_POST['email'] =       $email ;
$_POST['phone'] =       $phone  ;


  if(!empty($name) || !empty($email) || !empty($phone)){

  .....
 } else {

  $msg = 'All fields required';

}

//无论我做什么只显示$msg。

//也试过了

  if(!empty($_POST['name']) || !empty($_POST['email']) || !empty($_POST['phone'])){
  ....
   }

我试图做的是一个通过电子邮件向我发送数据的表格,我希望填写所有字段,所以我可能以错误的方式编写 if 语句。抱歉,如果我之前没有解释清楚。

4

3 回答 3

1

您的代码如下:

如果姓名不为空,或电子邮件不为空,或电话不为空

这意味着只要其中至少有一个是非空的,那么你就很好!

很确定这不是你的意思。你要:

如果姓名不为空,电子邮件不为空,电话不为空

使用&&代替,||它应该可以工作!

于 2014-05-01T10:18:51.360 回答
1

我认为您对这里涉及的所有负面因素感到困惑。我怀疑你追求的是:

if (!(empty($name) || empty($email) || empty($phone))) {
    ...
} else {
    $msg = 'All fields required';
}

哪个会更好(在我看来)写成:

if (empty($name) || empty($email) || empty($phone)) {
    $msg = 'All fields required';
} else {
    ...
}
于 2014-05-01T10:20:01.860 回答
0
if($name=='' || $email=='' || $phone=='')
{
    $msg='All fields required';
}
else 
{
    ..............
}
于 2014-05-01T11:34:54.567 回答