我需要从PHP代码创建一个mailto链接

我需要从PHP代码创建一个mailto链接,php,html,mailto,Php,Html,Mailto,好的,现在我的html表单收集数据并将其发布到php表单,然后php表单创建并发送电子邮件(以下代码),但是现在我需要该表单创建一个mailto链接,这样我就可以将其从我的iPhone 6发送到另一个邮件帐户,请提供帮助???!:) 代码是: <?php ini_set( "SMTP", "localhost" ); ini_set( "smtp_port", "25" ); if ( isset( $_POST['caseref'] ) ) { $email_from = "

好的,现在我的html表单收集数据并将其发布到php表单,然后php表单创建并发送电子邮件(以下代码),但是现在我需要该表单创建一个mailto链接,这样我就可以将其从我的iPhone 6发送到另一个邮件帐户,请提供帮助???!:)

代码是:

<?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

主题:抵达

正文:事件编号:XXXXXX

到达日期:2015年11月20日

到达时间:14:41

工程师:戴夫

工程师注意:

你能试试这个吗

   <!-- Mailto link needs to go here-->
<?php echo'<a href="mailto:'.$to.'" subject="'.$email_subject.'" body="'.$email_message.'>Send mail</a>';?>

正如我们所讨论的,您需要在
mailto
链接中使用
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>';
$to=”dave@dave.com";
$caseref=“123”;
$name=“Bob”;
$notes=“一些注释”;
$email\u subject=“到达一些数据”;
$email\u message=“事件编号:”$案例参考。“\n”;
$email_message.=“到达日期:”。日期(“日期”);
$email_message.=“\n”;
$email_message.=“到达时间:”。日期(“H:i”);
$email_message.=“\n”;
$email_message.=“工程师:”$名称“\n”;
$email_message.=“工程师注意事项:”$笔记;
$email_message.=“\n”;
$email_message.=“\n”;
$email_message.=“\n”;
//将邮件回送至链接
回声';
//使用不同的编码将邮件回送到链接
回声';

另外请注意:我已经从
date()
函数中删除了
time()
,因为默认情况下使用了
time()
,不需要指定它。

这是HTML 101的内容。它只是HTML,不是火箭科学<代码>回显“”回显“”我知道mailto的家伙,但是我如何将页面中的数据解析到mailto链接中呢?这不是
mailto
的工作方式……它是
NVP
mailto:nowhere@mozilla.org?主题=时事通讯
摘自《我的坏消息》!尝试
echo'
可以工作,但不会在正文中放一个返回,现在看起来是这样的:事件编号:Djharival日期:20/11/2015到达时间:16:16工程师:Dave Hawkes工程师注意:现场,但需要看起来像:事件编号:djh到达日期:20/11/2015到达时间:16:16工程师:Dave Hawkes工程师注意:现场事件+编号:+测试到达+日期:+20/11/2015+到达时间:++17:00++工程师:++Dave+Hawkes工程师+备注:+++现场就快到了!我们如何删除+++,
++
用于空格所在的位置,并来自所需的函数
urlencode()
。当您单击链接并在邮件应用程序中打开时,它将删除编码。当我单击链接时,它不会删除+,很可能是电子邮件客户端。尝试将
urlencode()
函数替换为
rawurlencode()
。很抱歉回复太晚,我正在检查,很快会通知您:)