Php 在提交表单的页面的电子邮件中显示
我在每个页面上都有一个html表单,我需要能够在收件人的电子邮件中显示访问者提交表单的页面。如何在PHP中实现这一点?我尝试过使用Php 在提交表单的页面的电子邮件中显示,php,wordpress,email,post,superglobals,Php,Wordpress,Email,Post,Superglobals,我在每个页面上都有一个html表单,我需要能够在收件人的电子邮件中显示访问者提交表单的页面。如何在PHP中实现这一点?我尝试过使用$\u服务器['REQUEST\u URI']任何东西,但它只是没有输出任何东西。我在用Wordpress <?php global $post; $post_slug=$post->post_name; $name = $_POST['firstname']; $email = $_POST['email']; $message="$
$\u服务器['REQUEST\u URI']
任何东西,但它只是没有输出任何东西。我在用Wordpress
<?php
global $post;
$post_slug=$post->post_name;
$name = $_POST['firstname'];
$email = $_POST['email'];
$message="$name.$email";
mail('example@gmail.com', "Hello", "$name \n $email \n $_SERVER['REQUEST_URI']");
echo "works";
?>
您的代码很好,除了应该用大括号{}将数组变量括在字符串中之外:
mail('example@gmail.com', "Hello", "$name \n $email \n {$_SERVER['REQUEST_URI']}");
如果您查看官方php文档:您可以在“复杂(卷曲)语法”一节中看到:
您可以通过以下方式获取实际url:
$actual_link = "http(s)://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
你可以试试这个。将页面标题(或永久链接)传递给隐藏的html输入,并将值作为:
$titlePage = get_the_title($post->ID);
<input type="hidden" value="<?php echo $titlePage; ?>" name="pagetitle">
现在您有了参数,可以在电子邮件中随心所欲地使用它。您是将数据发布到不同的url还是自引用表单。如果一个新的url你可以尝试$U服务器['HTTP\u REFERER'],我正在发布到email.php,所以它是不同的url,而不是表单所在的页面。请使用$U服务器['HTTP\u REFERER'],并检查它是否有效。。。
$titlePage = get_the_title($post->ID);
<input type="hidden" value="<?php echo $titlePage; ?>" name="pagetitle">
$pagetitle = $_POST['pagetitle'];