Флажок Implode для PHP в форме

Я рассмотрел несколько примеров массива имплозирования и не могу понять, почему я не вижу, установлены ли несколько флажков.

Могу ли я получить помощь относительно того, какой код мне нужно добавить и где? Спасибо!

КОД В PHP:

    $to='[email protected]';
$subject='Enquiry - Contact Page';

$name_field = $_POST['firstname'];
$secondname_field = $_POST['lastname'];
$email_field = $_POST['email'];
$phone_field = $_POST['phone'];
$dropdown = $_POST['drop_down'];
$message = $_POST['message'];
$check_msg = $_POST['check'];

$body="F-Name: ".$name_field ."\r\n". "L-Name: ".$secondname_field ."\r\n". "Email: ".$email_field ."\r\n". "Phone: ".$phone_field ."\r\n". "Contact-Method: ".$dropdown ."\r\n". "Message: ".$message ."\r\n". $check_msg;

mail($to,$subject,$body);
echo '  ';

?>

КОД В .HTML

            <form method="post" action="contactform.php">
<input name="firstname" type="text" value="First Name" class="form2"/><br/>
<input name="lastname" type="text" value="Last Name" class="form2"/><br/>
<input name="email" type="text" value="Email" class="form2"/>   <br/>
<input name="phone" type="text" value="Phone" class="form2"/>
<br />
<select name="drop_down" class="form2">
<option selected="selected">Prefered contact method
</option>
<option>Phone</option>
<option>Email</option>
</select><br />
<textarea name="message" cols="30" rows="5" class="form2">About your project..</textarea>
<br />
<span class="form">
I am looking for...<br />
<input name="check[]" type="checkbox" value="New-Website" />A new website<br/>
<input name="check[]" type="checkbox" value="Existing-Website" />Upgrade an exsiting website<br/>
<input name="check[]" type="checkbox" value="Online-Store"/>Online Store<br/>
<input name="check[]" type="checkbox" value="Graphic-Design"/>Graphic and logo design<br/>
<input name="check[]" type="checkbox" value="Other"/>Other<br/>
<br />
</span>
<input name="Submit" type="submit" value="submit" class="form"/>
</form>

0

Решение

Пытаться :-

$check_msg = implode(", ", $_POST['check']);
4

Другие решения

Если вы используете <input name="check[]" type="checkbox" />вы уже получите массив в $_POST['check'], У вас ошибка, потому что вы пытаетесь объединить массив $check_msg в строке $body,

Вам нужно сделать следующее:

$check = isset($_POST['check']) ? $_POST['check'] : '';
$check_msg = is_array($check) ? implode(", ", $check) : '';
$body = "F-Name: ".$name_field ."\r\n". "L-Name: ".$secondname_field ."\r\n". "Email: ".$email_field ."\r\n". "Phone: ".$phone_field ."\r\n". "Contact-Method: ".$dropdown ."\r\n". "Message: ".$message ."\r\n". $check_msg;

Если $_POST['check'] не массив, вы не получите ошибку PHP.

0

По вопросам рекламы [email protected]