所以我有这个小的html表单,现在我想使用php将电子数据发送到电子邮件。 对于我使用模板的表单,我更改了一些名称。 1次它发送一封电子邮件,但它是空的,从其他所有尝试我根本没有收到邮件。从搜索互联网,我得到了我没有做错,检查名称和所有。
HTML:
<div id="contact">
<h1>Neem contact met ons op</h1>
<form class="cd-form floating-labels" action="form_sent.php" method="post" enctype="text/plain">
<fieldset>
<div class="error-message">
<p>Vul een geldig e-mailadres in</p>
</div>
<div class="icon">
<label class="cd-label">Naam</label>
<input class="user" type="text" name="cd-name" id="cd-name" required>
</div>
<div class="icon">
<label class="cd-label">Bedrijf</label>
<input class="company" type="text" name="cd-company" id="cd-company">
</div>
<div class="icon">
<label class="cd-label">Email</label>
<input class="email" type="email" name="cd-email" id="cd-email" required>
</div>
</fieldset>
<fieldset>
<div> </div>
<div class="icon">
<label class="cd-label">Bericht</label>
<textarea class="message" name="cd-textarea" id="cd-textarea" required></textarea>
</div>
<div>
<input type="submit" value="Verzenden">
</div>
</fieldset>
</form>
</div>
php:
<?php
$user = $_POST['cd-user'];
$company = $_POST['cd-company'];
$email = $_POST['cd-email'];
$message = $_POST['cd-textarea'];
$to = "van_vliet@wxs.nl";
$subject = "Website bericht";
mail ($to , $subject , $message, "From: " , $user , $company , $email);
echo "Bedankt voor uw bericht";
?>
答案 0 :(得分:2)
您将错误的参数传递给mail()。它预计其中5个是可选的:
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
在你的情况下,我认为最后3个参数只有一个,所以这样做:
$userInfo = $user." ".$company." <".$email.">";
mail ($to , $subject , $message, "From: ".$userInfo);
此外,对于$ user,您获得$ _POST [&#34; cd-user&#34;],但输入name
为cd-name
,而不是cd-user
-
问题最终是因为PHP无法处理enctype =&#34; text / plain&#34;所以删除它会修复它。