我需要从 PHP 代码创建一个 mailto link
I need to create a mailto link from PHP code
好的,所以目前我的 html 表单收集数据并将其发布到 php 表单,然后创建并发送电子邮件(以下代码),但是现在我需要表单创建一个 mailto link,这样我就可以将它发送到与我的 iphone6 不同的邮件帐户,请帮忙???!! :)
密码是:
<?php
ini_set( "SMTP", "localhost" );
ini_set( "smtp_port", "25" );
if ( isset( $_POST['caseref'] ) ) {
$email_from = "dave@dave.com";
$to = "dave@dave.com";
$email_subject = "Arrival: " . $_POST['caseref'];
function died( $error ) {
// error code here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error . "<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if ( !isset( $_POST['casreref'] ) ) {
#died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$name = $_POST['name']; // required
$caseref = $_POST['caseref']; // required
$notes = $_POST['notes']; // required
$error_message = "";
$email_message .= "Incident Number: " . $caseref . "\n";
$email_message .= "Arrival Date:" . date( " d/m/Y " );
$email_message .= "\n";
$email_message .= "Arrival Time:" . date( " H:i ", time() );
$email_message .= "\n";
$email_message .= "Engineer: " . $name . " \n";
$email_message .= "Engineers Notes: " . $notes;
$email_message .= "\n";
$email_message .= "\n";
$email_message .= "\n";
$headers = 'From: ' . $email_from;
mail( $to, $email_subject, $email_message, $headers );
?>
<!-- include your own success html here -->
<html>
<title>Thank you!</title>
Mailto link needs to go here
<?php
}
?>
有人能帮我解决这个问题吗?
电子邮件需要如下所示:
mailto: davey@dave.com
subject: Arrival
body: Incident Number:XXXXXX
Arrival Date: 20/11/2015
Arrival Time: 14:41
Engineer: Dave
Engineers Notes:
你能试试这个吗?
<!-- Mailto link needs to go here-->
<?php echo'<a href="mailto:'.$to.'" subject="'.$email_subject.'" body="'.$email_message.'>Send mail</a>';?>
正如我们一直在讨论的那样,您需要在 mailto
link 中使用 NVP
。为了尊重换行符,您需要使用 urlencode()
或 rawurlencode()
,具体取决于电子邮件客户端及其尊重编码的方式。
$to = "dave@dave.com";
$caseref = "123";
$name = "Bob";
$notes = "Some notes";
$email_subject = "Arrival some data";
$email_message = "Incident Number: " . $caseref . "\n";
$email_message .= "Arrival Date:" . date("d/m/Y");
$email_message .= "\n";
$email_message .= "Arrival Time:" . date("H:i");
$email_message .= "\n";
$email_message .= "Engineer: " . $name . " \n";
$email_message .= "Engineers Notes: " . $notes;
$email_message .= "\n";
$email_message .= "\n";
$email_message .= "\n";
// Echo the mail to link
echo '<a href="mailto:'.$to.'?subject='.urlencode($email_subject).'&body='.urlencode($email_message).'">Mail to Link</a>';
// Echo the mail to link using the different encoding
echo '<a href="mailto:'.$to.'?subject='.rawurlencode($email_subject).'&body='.rawurlencode($email_message).'">Mail to Link</a>';
另请注意:我已经从您的 date()
函数中删除了 time()
,因为默认情况下使用 time()
...没有必要指定它。
好的,所以目前我的 html 表单收集数据并将其发布到 php 表单,然后创建并发送电子邮件(以下代码),但是现在我需要表单创建一个 mailto link,这样我就可以将它发送到与我的 iphone6 不同的邮件帐户,请帮忙???!! :)
密码是:
<?php
ini_set( "SMTP", "localhost" );
ini_set( "smtp_port", "25" );
if ( isset( $_POST['caseref'] ) ) {
$email_from = "dave@dave.com";
$to = "dave@dave.com";
$email_subject = "Arrival: " . $_POST['caseref'];
function died( $error ) {
// error code here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error . "<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if ( !isset( $_POST['casreref'] ) ) {
#died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$name = $_POST['name']; // required
$caseref = $_POST['caseref']; // required
$notes = $_POST['notes']; // required
$error_message = "";
$email_message .= "Incident Number: " . $caseref . "\n";
$email_message .= "Arrival Date:" . date( " d/m/Y " );
$email_message .= "\n";
$email_message .= "Arrival Time:" . date( " H:i ", time() );
$email_message .= "\n";
$email_message .= "Engineer: " . $name . " \n";
$email_message .= "Engineers Notes: " . $notes;
$email_message .= "\n";
$email_message .= "\n";
$email_message .= "\n";
$headers = 'From: ' . $email_from;
mail( $to, $email_subject, $email_message, $headers );
?>
<!-- include your own success html here -->
<html>
<title>Thank you!</title>
Mailto link needs to go here
<?php
}
?>
有人能帮我解决这个问题吗?
电子邮件需要如下所示:
mailto: davey@dave.com
subject: Arrival
body: Incident Number:XXXXXX
Arrival Date: 20/11/2015
Arrival Time: 14:41
Engineer: Dave
Engineers Notes:
你能试试这个吗?
<!-- Mailto link needs to go here-->
<?php echo'<a href="mailto:'.$to.'" subject="'.$email_subject.'" body="'.$email_message.'>Send mail</a>';?>
正如我们一直在讨论的那样,您需要在 mailto
link 中使用 NVP
。为了尊重换行符,您需要使用 urlencode()
或 rawurlencode()
,具体取决于电子邮件客户端及其尊重编码的方式。
$to = "dave@dave.com";
$caseref = "123";
$name = "Bob";
$notes = "Some notes";
$email_subject = "Arrival some data";
$email_message = "Incident Number: " . $caseref . "\n";
$email_message .= "Arrival Date:" . date("d/m/Y");
$email_message .= "\n";
$email_message .= "Arrival Time:" . date("H:i");
$email_message .= "\n";
$email_message .= "Engineer: " . $name . " \n";
$email_message .= "Engineers Notes: " . $notes;
$email_message .= "\n";
$email_message .= "\n";
$email_message .= "\n";
// Echo the mail to link
echo '<a href="mailto:'.$to.'?subject='.urlencode($email_subject).'&body='.urlencode($email_message).'">Mail to Link</a>';
// Echo the mail to link using the different encoding
echo '<a href="mailto:'.$to.'?subject='.rawurlencode($email_subject).'&body='.rawurlencode($email_message).'">Mail to Link</a>';
另请注意:我已经从您的 date()
函数中删除了 time()
,因为默认情况下使用 time()
...没有必要指定它。