警告:implode()[function.implode]:传入的参数无效

时间:2015-11-18 08:27:05

标签: php

您好我已经检查了所有相同标题的帖子,但没有人帮助我。首先,我要完成新手,并尝试使sendmail.php从短联系表单获取信息我得到了一个预制脚本并尝试添加一个复选框但不确定如何grep和send是否已检查框并发送电子邮件。

这是剧本:

$to="admin@email.com";/*Your Email*/
$subject=$_REQUEST['subject'];

$date=date("l, F jS, Y");
$time=date("h:i A");

$firstName=$_REQUEST['name'];
$email=$_REQUEST['email'];
$phone=$_REQUEST['phone'];  
$hosting = (implode(',', $_POST['hosting']));


$msg="  Message from contact form sent:  $date, hour: $time.\n  
    Име: $firstName\n
    Email: $email\n 
    Телефон: $phone 
    Хостинг:  ".$hosting."\r\n
    ";



if($email=="") {
echo "<div class='alert alert-danger'>
          <a class='close' data-dismiss='alert'>×</a>
          <strong>Warning!</strong> Fill all boxes.
      </div>";
} else {
mail($to,$subject,$msg,"From:".$email);
echo "<div class='alert alert-success'>
          <a class='close' data-dismiss='alert'>×</a>
          <strong>Will contact with you.</strong>
      </div>";
}

这是联系表单代码的一部分:

input type="checkbox" name="hosting[]" value="Get Hosting"

请参阅:

1 个答案:

答案 0 :(得分:0)

我不确定您在变量托管中需要什么,或者在只有一个值可用时将输入标记定义为数组的原因。你应该使用

<input type="checkbox" name="hosting" value="Get Hosting">

在您的表单中,可以使用此代替implode

$hosting = isset($_POST['hosting']) ? $_POST['hosting'] : 'No Hosting';

如果设置了复选框,它将写入“Get Hosting”,如果没有,则写入“No Hosting”。

诚恳