PHP联系表单与复选框 [英] PHP Contact form with checkboxes

查看:119
本文介绍了PHP联系表单与复选框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试让我的联系表单正常工作。我几乎没有PHP的经验。我试图将这种形式的电子邮件给我自己,但不知道我在做什么基本上。



我需要它通过电子邮件发送一份表格到我的电子邮件,并确保复选框显示哪些框被点击。



如果有人可以帮助,我将不胜感激。



这是我的html

 < form name =htmlformmethod =postaction =send_form_email .PHP> 
< table width =561>
< tr>
< td width =212align =rightvalign =top>
< label for =name> *名称< / label>
< / td>
< td width =337valign =top>
< input type =textname =namemaxlength =150size =50>
< / td>
< / tr>
< tr>
< td valign =topalign =right>
< label for =company> *公司< / label>
< / td>
< td width =337valign =top>
< input type =textname =namemaxlength =150size =50>
< / td>
< / tr>
< tr>
< td valign =topalign =right>
< label for =telephone>电话< / label>
< / td>
< td valign =top>
< input type =textname =telephonemaxlength =150size =50>
< / td>
< / tr>
< tr>
< td valign =topalign =right>
< label for =email> *电子邮件地址< / label>
< / td>
< td valign =top>
< input type =textname =emailmaxlength =180size =50>
< / td>
< / tr>
< tr>
< td valign =topalign =right>
< label for =services> *当前服务< br />
(勾选所有适用的选项)< / label>
< / td>
< td valign =top>
< input type =checkboxname =services []value =none/>& nbsp; None< br />

< input type =checkboxname =services []value =coffee/>& nbsp; Coffee< br />

< input type =checkboxname =services []value =vending/>& nbsp; Vending< br />

< input type =checkboxname =services []value =watercoolers/>& nbsp; Water Coolers< br />

< input type =checkboxname =services []value =cafeteria/>& nbsp; Cafeteria< br />

< / td>
< / tr>
< tr>
< td valign =topalign =right>
< label for =评论> *评论< / label>
< / td>
< td valign =top>
< textarea name =commentsmaxlength =1000cols =40rows =6>< / textarea>
< / td>

< / tr>
< tr>
< td colspan =2style =text-align:center>
< center>< input type =submitvalue =Submit Form>< / center>
< / td>
< / tr>
< / table>
< / form>

这是我的php。



<$ p $ ($ set $($ _ POST ['email'])){

//编辑下面的2行
$ email_to =michael@mrugenus.com;
$ email_subject =联系表单;

$ email_message =表格详情在下面。\\\
\\\
;

函数clean_string($ string){
$ bad = array(content-type,bcc:,to:,cc:,href);
返回str_replace($ bad,,$ string);
}

$ email_message。=名称:.clean_string($ name)。\\\
;
$ email_message。=电子邮件地址:.clean_string($ email_from)。\\\
;
$ email_message。=电话:.clean_string($ telephone)。\\\
;
$ email_message。=服务:.implode(,,$ _POST ['services'])。\\\
;
$ email_message。=评论:.clean_string($ comments)。\\\
;


//创建电子邮件标题
$ headers ='From:'。$ email_from。\r\\\

'回复:'。$ email_from。\r\\\

'X-Mailer:PHP /'。 phpversion();
@mail($ email_to,$ email_subject,$ email_message,$ headers);
?>

<! - 包括您自己的成功html在这里 - >
< center>
< img src =images / logo.png/>
< br>
< br>
感谢您与我们联系。我们会保持联系。< br>
< br>
< a href =index.html>主页< / a>< / center>

<?php
}
?>


解决方案



 <?php 
error_reporting(-1);
ini_set('display_errors','On');
if(isset($ _ POST ['email'])){

//根据需要编辑下面的2行
$ email_to =someone@gmail.com;
$ email_subject =联系表单;
$ email_from =from@from.com;

$ email_message =表格详情在下面。\\\
\\\
;

函数clean_string($ string){
$ bad = array(content-type,bcc:,to:,cc:,href);
返回str_replace($ bad,,$ string);
}

$ email_message。=名称:.clean_string($ _ POST [name])。\\\
;
$ email_message。=电子邮件地址:.clean_string($ _ POST [email])。\\\
;
$ email_message。=电话:.clean_string($ _ POST [telephone])。\\\
;
$ email_message。=服务:.implode(,$ _POST ['services'])。\\\
;
$ email_message。=注释:.clean_string($ _ POST [comments])。\\\
;


//创建电子邮件标题
$ headers ='From:'。$ email_from。\r\\\

'回复:'。$ email_from。\r\\\

'X-Mailer:PHP /'。 phpversion();
mail($ email_to,$ email_subject,$ email_message,$ headers);
?>

<! - 包括您自己的成功html在这里 - >
< center>
< img src =images / logo.png/>
< br>
< br>
感谢您与我们联系。我们会保持联系。< br>
< br>
< a href =index.html>主页< / a>< / center>

<?php
}
?>


I'm having a terrible time trying to get my contact form to work. I have almost no php experience. I am trying to make this form e-mail to myself but have no idea what I am doing basically.

I need it to e-mail a copy of the form to my e-mail and also make sure the checkboxes show which boxes were clicked.

If anyone could help I would appreciate it.

Here is my 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" />&nbsp;None<br />

<input type="checkbox" name="services[]" value="coffee" />&nbsp;Coffee<br />

<input type="checkbox" name="services[]" value="vending" />&nbsp;Vending<br />

<input type="checkbox" name="services[]" value="watercoolers" />&nbsp;Water Coolers<br />

<input type="checkbox" name="services[]" value="cafeteria" />&nbsp;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>

Here is my 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
}
?>

解决方案

Ok Its fixed: PHP file:

<?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
}
?>

这篇关于PHP联系表单与复选框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆