我正在通过我的PayPal IPN脚本设置自动电子邮件回复,但以下代码会导致paypal的沙箱失败。
// PAYMENT VALIDATED & VERIFIED!
$email = $_POST['payer_email'];
$password = mt_rand(1000, 9999);
$to = $email;
$subject = 'Download Area | Login Credentials';
$message = '
Thank you for your purchase
Your account information
-------------------------
Email: '.$email.'
Password: '.$password.'
-------------------------
You can now login at http://yourdomain.com/PayPal/';
$headers = 'From:noreply@yourdomain.com<script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l,b=document.getElementsByTagName("script");l=b[b.length-1].previousSibling;a=l.getAttribute('data-cfemail');if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
/* ]]> */
</script>' . "\r\n";
mail($to, $subject, $message, $headers);
是否有一些简单的错误,或者脚本导致错误的原因是否更深入。请记住,我是新手,这是我从http://code.tutsplus.com/tutorials/using-paypals-instant-payment-notification-with-php--net-3271复制和粘贴的代码。
另外,我使用的电子邮件是否必须位于我用来托管脚本的同一台服务器上?
删除电子邮件以避免泄露个人信息。
答案 0 :(得分:2)
这是什么?
$headers = 'From:noreply@yourdomain.com<script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l,b=document.getElementsByTagName("script");l=b[b.length-1].previousSibling;a=l.getAttribute('data-cfemail');if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
/* ]]> */
</script>' . "\r\n";
您的邮件标题中不能包含HTML或JavaScript。把那些可能导致错误的广告拿出来。
$headers = 'From:noreply@yourdomain.com';