【发布时间】:2021-05-18 15:54:43
【问题描述】:
我创建了一个 WP 模板并向其中添加了一个表单。 在表单下方,我添加了 wp_mail() 函数以将用户输入的数据发送到他们的电子邮件。
现在,我收到以下通知:
注意:未定义的索引:mypath 中的名称。
欢迎任何帮助如何解决这个问题。
编辑 1: 得到通知我必须删除 if 语句。
编辑 2: 这实际上是我所拥有的有关表单的所有代码。我错过了什么吗?我需要在某处添加add_action() 或类似的东西吗?
代码:
<form id="form" method="post" action="">
<label for="name">Name:</label>
<input type="text" id="name" name="name">
</br>
<label for="surname">Surname:</label>
<input type="text" id="surname" name="surname">
</br>
<label for="email">Email:</label>
<input type="email" id="email" name="email">
</br>
<label for="tel">Phone number:</label>
<input type="tel" id="tel" name="tel">
</br>
<input type="submit" value="Submit" name="submit">
</form>
<?php
if(isset($_POST['submit'])) {
$name = $_POST['name'];
$surname = $_POST['surname'];
$email = $_POST['email'];
$tel = $_POST['tel'];
$to = $_POST[$email]; //sendto@example.com
$subject = 'Reservation';
$body = 'Name: ' . $name . '\r\n' .
'Surname: ' . $surname . '\r\n' .
'Email ' . $email . '\r\n' .
'Phone number: ' . $tel . '\r\n';
wp_mail( $to, $subject, $body );
echo "Sent!";
}
?>
答案
编辑 3: 只是为了明确解决方案是 $to = $_POST['email']; //sendto@example.com 所以 ['email'] 不是 [$email]。
【问题讨论】:
标签: php wordpress forms wp-mail