我正在努力让我的联系表格起作用。我几乎没有PHP经验。我正在尝试将此表单发送给自己,但我根本不知道我在做什么。
我需要它将表格的副本通过电子邮件发送到我的电子邮箱,并确保复选框显示单击了哪些框。
如果有人可以提供帮助,我会很感激。
这是我的HTML
<form name="htmlform" method="post" action="send_form_email.php">
<table width="561">
<tr>
<td width="212" align="right" valign="top">
<label for="name">*Name</label>
</td>
<td width="337" valign="top">
<input type="text" name="name" maxlength="150" size="50">
</td>
</tr>
<tr>
<td valign="top" align="right">
<label for="company">*Company</label>
</td>
<td width="337" valign="top">
<input type="text" name="name" maxlength="150" size="50">
</td>
</tr>
<tr>
<td valign="top" align="right">
<label for="telephone">Phone</label>
</td>
<td valign="top">
<input type="text" name="telephone" maxlength="150" size="50">
</td>
</tr>
<tr>
<td valign="top" align="right">
<label for="email">*Email Address</label>
</td>
<td valign="top">
<input type="text" name="email" maxlength="180" size="50">
</td>
</tr>
<tr>
<td valign="top" align="right">
<label for="services">*Current Services<br />
(check all that apply)</label>
</td>
<td valign="top">
<input type="checkbox" name="services[]" value="none" /> None<br />
<input type="checkbox" name="services[]" value="coffee" /> Coffee<br />
<input type="checkbox" name="services[]" value="vending" /> Vending<br />
<input type="checkbox" name="services[]" value="watercoolers" /> Water Coolers<br />
<input type="checkbox" name="services[]" value="cafeteria" /> Cafeteria<br />
</td>
</tr>
<tr>
<td valign="top" align="right">
<label for="comments">*Comments</label>
</td>
<td valign="top">
<textarea name="comments" maxlength="1000" cols="40" rows="6"></textarea>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center">
<center><input type="submit" value="Submit Form"></center>
</td>
</tr>
</table>
</form>
这是我的PHP。
<?php
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "michael@mrugenus.com";
$email_subject = "Contact form";
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "Name: ".clean_string($name)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "Telephone: ".clean_string($telephone)."\n";
$email_message .= "Services: ".implode(",", $_POST['services'])."\n";
$email_message .= "Comments: ".clean_string($comments)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
<!-- include your own success html here -->
<center>
<img src="images/logo.png" />
<br>
<br>
Thank you for contacting us. We will be in touch.<br>
<br>
<a href="index.html">HOME</a></center>
<?php
}
?>
答案 0 :(得分:1)
好的它修复了: PHP文件:
<?php
error_reporting(-1);
ini_set('display_errors', 'On');
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "someone@gmail.com";
$email_subject = "Contact form";
$email_from = "from@from.com";
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "Name: ".clean_string($_POST["name"])."\n";
$email_message .= "Email: ".clean_string($_POST["email"])."\n";
$email_message .= "Telephone: ".clean_string($_POST["telephone"])."\n";
$email_message .= "Services: ".implode(" ", $_POST['services'])."\n";
$email_message .= "Comments: ".clean_string($_POST["comments"])."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($email_to, $email_subject, $email_message, $headers);
?>
<!-- include your own success html here -->
<center>
<img src="images/logo.png" />
<br>
<br>
Thank you for contacting us. We will be in touch.<br>
<br>
<a href="index.html">HOME</a></center>
<?php
}
?>
答案 1 :(得分:0)
以下是一个示例代码,使用SELECT
,CHECKBOX
,TEXTBOX
来帮助您:
<form name="prf_form" method="post" action="email.php">
<input type="text" class=tBox title="This should be a 'C-Level' or VP" id="eSponsor" name="esponsor"></input>
<select name="sponsorinform">
<option value="Yes">Yes</option>
<option value="No" SELECTED>No</option>
</select>
<input type=checkbox name="pj_regulatory" value="Regulatory" /> Regulatory<img src="bLine.png" width=20 /><input type=checkbox name="pj_revenhancement" value="Revenue Enhancement" /> Revenue Enhancement
</form>
email.php
:
// Clean up the input values
foreach($_POST as $key => $value) {
$_POST[$key] = stripslashes($_POST[$key]);
$_POST[$key] = htmlspecialchars(strip_tags($_POST[$key]));
}
$esponsor = trim(strip_tags(stripslashes($_POST['esponsor'])));
$sponsorinform = trim(strip_tags(stripslashes($_POST['sponsorinform'])));
$pj_regulatory = trim(strip_tags(stripslashes($_POST['pj_regulatory'])));
$pj_revenhancement = trim(strip_tags(stripslashes($_POST['pj_revenhancement'])));
echo $esponsor; //displays the text entered
echo $sponsorinform; //displays YES or NO
echo $pj_regulatory;
echo $pj_revenhancement;
$sentMailSubject = "Project Request From $customerfname $customerlname";
// To send HTML mail, the Content-type header must be set
$sentHeader = 'MIME-Version: 1.0' . "\r\n";
$sentHeader .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Additional headers
//$to = 'aidan@example.com' . ', '; // note the comma
//$to .= 'wez@example.com';
// ^^^^^ for multiple email address
$sentHeader .= 'From: ' . $customerfname . ' <' . $userEmail . '>' . "\r\n";
$sentMailBody = "TEST";
$toEmail = "youremail@yourdomain.com, someoneelse@some.com";
mail($toEmail, $sentMailSubject, $sentMailBody, $sentHeader); //send to us