【问题标题】:PHP contact form won't send email, echoes back [duplicate]PHP联系表格不会发送电子邮件,回显[重复]
【发布时间】:2016-01-26 17:21:15
【问题描述】:

我的 PHP 有一些问题。我是新手,所以有点混乱。但最大的问题是试图通过联系表格发送电子邮件并且惨遭失败。

我得到这个错误:

解析错误:语法错误,第 7 行 C:\wamp\www\mtltechevents\contact_form.php 中出现意外的“$name”(T_VARIABLE)

第 7 行:

$name = $_POST['name1'];

我看不到语法错误。当我删除错误消息时,它也会在我尝试填写信息时回显:

$name = $_POST['name1'];
$email = $_POST['email1'];
$message = $_POST['message1'];
$contact = $_POST['contact1'];
$email = filter_var($email, FILTER_SANITIZE_EMAIL); // Sanitizing E-mail.
// After sanitization Validation is performed
if (filter_var($email1, FILTER_VALIDATE_EMAIL)) {
if (!preg_match("/^\s*(?:\+?(\d{1,3}))?[-. (]*(\d{3})[-. )]*(\d{3})[-. ]*      (\d{4})(?: ​*x(\d+))?\s*​$/", $contact)) {
echo "<span>* Please Fill Valid Contact No. *</span>";

有什么想法吗?我查看了联系表单的其他一些问题,但没有人真正回答我的问题。

【问题讨论】:

  • 你能把剩下的代码贴出来吗,你好像少了一个分号或者上面有语法错误
  • 我们需要更多您的 php 代码,也需要 html 才能提供帮助
  • 我放弃了 PHP 模型,最终得到了更简单、更容易的东西。谢谢大家。
  • www.formspree.io 是我最好的选择

标签: php html forms email contact


【解决方案1】:

如果您在规定的行上方缺少分号或括号,通常会显示您的错误,因为它希望您执行其他操作。这方面的一个例子是

$anothervariable = $_POST['anotherpost'] // No semi-colon
$name = $_POST['name1'];
$email = $_POST['email1'];
$message = $_POST['message1'];
$contact = $_POST['contact1'];

【讨论】:

  • 这是我放在上面的代码的问题,是的。谢谢:)
【解决方案2】:

会话开始了吗?你能发布完整的代码。这听起来像是一种语法错误

【讨论】:

  • 错误实际上比这更复杂。但这是因为我使用了一个 php 代码来检查错误,所以我把它放在了我的代码的顶部。
猜你喜欢
  • 1970-01-01
  • 2021-10-25
  • 1970-01-01
  • 2015-09-22
  • 2017-03-05
  • 2012-05-02
  • 1970-01-01
  • 2012-02-25
  • 2013-11-02
相关资源
最近更新 更多