我正在尝试将电子邮件地址回显到下一页' send_email.php'通过使用网址的链接。
想法是send_email.php向该链接所属的特定电子邮件地址发送电子邮件。
我目前正在获取未定义的索引' contact_email'错误,我不知道我做错了什么,我试图使用$ _GET作为从网址检索电子邮件地址的手段,并将其添加到send_email.php中的/ recipient行的电子邮件
我们的链接位于第1页'我们使用mysql查询从数据库中提取详细信息,如下所示:
$myId2 = filter_var($_GET['id'], FILTER_SANITIZE_NUMBER_INT);
$query2 = mysql_query(" SELECT supplier_registration.contact_name,
supplier_registration.contact_email, supplier_registration.contact_number, supplier_registration.company_address, supplier_registration.company_postcode
FROM supplier_registration
INNER JOIN supplier_stats
ON supplier_registration.company_reg_number = supplier_stats.company_reg_number
WHERE supplier_stats.id = $myId2 AND supplier_stats.insurance_date = DATE(NOW())");
while($row2 = mysql_fetch_array( $query2 )) {
echo "<div class=\"contact_details\">Contact Details:<br/>";
echo "<p><font color=\"#999\">Contact Name:</font> ".$row2['contact_name']."<br/>";
echo "<font color=\"#999\">Contact Number:</font> ".$row2['contact_number']."<br/>";
echo "<p><font color=\"#999\">Contact Email:</font> ".$row2['contact_email']."<br/></p>";
echo "<p><font color=\"#999\">Postal Address:</font> ".$row2['company_address']."</br>";
echo "<font color=\"#999\">Contact Name:</font> ".$row2['company_postcode']."</p>";
echo "</div>";
echo "<a href=\"send_email.php?email=".$row2['contact_email']."\"\"><div class=\"buttons\">Send Reminder Email</div> </a>";
然后当我们点击链接时,我们转到send_email.php,它看起来像这样:
<?php
$_GET['contact_email'];
$myEmail = $_GET['contact_email'];
$to = $myEmail;
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
if (mail($to, $subject, $body)) {
echo("<p>Email successfully sent!</p>");
} else {
echo("<p>Email delivery failed…</p>");
}
?>
但我收到了这些错误:
Notice: Undefined index: contact_email in C:\xampp\htdocs\hewden_spms\send_email.php on line 2
Notice: Undefined index: contact_email in C:\xampp\htdocs\hewden_spms\send_email.php on line 3
Email successfully sent!
有人可以告诉我问题出在哪里以及我如何让这个工作感谢
答案 0 :(得分:1)
您将参数传递给锚标记,参数为email
echo "<a href=\"send_email.php?email=".$row2['contact_email']."\"\"><div class=\"buttons\">Send Reminder Email</div> </a>";
^
并尝试访问 send_email.php 中的$_GET['contact_email'];
。
您必须在GET
中使用您在传递时使用的参数名称。因此,请更改为$_GET['email'];
答案 1 :(得分:0)
<a href="send_email.php?email="
您的查询字符串参数名称为email
而不是contact_email
应该是,
$_GET['email'];
$myEmail = $_GET['email'];
而不是
$_GET['contact_email'];
$myEmail = $_GET['contact_email'];
答案 2 :(得分:0)
您要将$ _GET参数设置为此行中的“电子邮件”:<a href=\"send_email.php?email=".$row2['contact_email'].
答案 3 :(得分:0)
使用
echo "<a href=\"send_email.php?contact_email=".$row2['contact_email']."\"\"><div class=\"buttons\">Send Reminder Email</div> </a>";
而不是
echo "<a href=\"send_email.php?email=".$row2['contact_email']."\"\"><div class=\"buttons\">Send Reminder Email</div> </a>";
您正在传递电子邮件= $ row2 [&#39; contact_email&#39;]这意味着您的密钥是电子邮件,价值是$ row2 [&#39; contact_email&#39;]中的值,价值可能是任何东西但你可以通过电子邮件获得价值。