【问题标题】:How to create a form that doesn't open email client when submitting the form提交表单时如何创建不打开电子邮件客户端的表单
【发布时间】:2019-10-25 09:13:56
【问题描述】:

我正在编写一个网站并添加了一个联系表。当我尝试通过提交来测试表单时,它只会打开电子邮件客户端让我通过电子邮件客户端发送它(它会自动打开我的苹果邮件)。我希望用户能够在不打开设备上的电子邮件客户端的情况下提交表单,然后我想收到一封电子邮件,说明客户已从我的网站向我发送了一条消息。我该怎么做呢?我错过了什么或做错了什么?

  <form method="post" action="myemailhere@gmail.com" action="action_page.php">

    <label for="fname">First Name</label>
    <input type="text" id="fname" name="firstname" placeholder="Your name...">

    <label for="lname">Last Name</label>
    <input type="text" id="lname" name="lastname" placeholder="Your last name...">

    <label for="country">e-mail</label>
    <input type="text" id="lname" name="lastname" placeholder="Your e-mail address...">

    <label for="subject">Subject</label>
    <textarea id="subject" name="subject" placeholder="Write something..." style="height:200px"></textarea>

    <input type="submit" value="Submit">

  </form>
</div>

<form method="post" action="nuramelodyhill@gmail.com" >
<input type="submit" value="Send Email" />
</form>

【问题讨论】:

  • 摆脱action="myemailhere@gmail.com"。邮件应由action_page.php发送。
  • 这里有两张表格,没有一张。
  • 您是否在服务器端脚本中实现了发送电子邮件的功能?从 html 表单中,您只能将消息的内容发布到服务器,电子邮件的实际发送必须由服务器承担。

标签: php html css email


【解决方案1】:

只需删除 action="myemailhere@gmail.com" - 即可。

在 PHP 中,您可以简单地发送电子邮件

mail($to,$subject,$message);

你的代码应该是这样的:

 <form method="post" action="action_page.php">

    <label for="fname">First Name</label>
    <input type="text" id="fname" name="firstname" placeholder="Your name...">

    <label for="lname">Last Name</label>
    <input type="text" id="lname" name="lastname" placeholder="Your last name...">

    <label for="country">e-mail</label>
    <input type="text" id="email" name="email" placeholder="Your e-mail address...">

    <label for="subject">Subject</label>
    <textarea id="subject" name="subject" placeholder="Write something..." style="height:200px"></textarea>

    <input type="submit" value="Submit">
  </form>
</div>

action_page.php

$subject=$_POST['subject'];
$message="First Name:".$_POST['firstname']."\n Last Name:".$_POST['lastname']." Email:".$_POST['email']."\n Subject:".$_POST['subject'];
mail($to,$subject,$message);

还有你在这里使用 2 种形式。如果您想在同一页面上使用多个表单,请使用 JavaScript 来触发事件。

【讨论】:

  • 要做的远不止这些,需要一些代码才能真正发送电子邮件
  • @tim 先阅读他的问题,然后再做你的 cmets。
  • 正如@tim 所说.. 你必须做的更多。对“如何使用 PHP 发送电子邮件” 进行简单搜索就会得到您正在寻找的答案。
  • 好的。将更新。
猜你喜欢
  • 2017-07-12
  • 2022-11-20
  • 1970-01-01
  • 2011-02-13
  • 2012-10-17
  • 2020-11-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多