通过Ajax发送js多个数据到电子邮件

通过Ajax发送js多个数据到电子邮件

问题描述:

我需要发送多个数据作为数组并通过Ajax将输入值形式发送到电子邮件。这段代码有什么问题?该阵列不回电子邮件,猜测什么是错的PHP文件 *** HTML:通过Ajax发送js多个数据到电子邮件

<form id="form-order"> 
    First name:<br> 
    <input type="text" name="firstname"> 
    <input type="tel" name="phonenumber"> 
    <input type="submit" value="Submit"> 
</form> 

*** JS:

$.ajax({ 
    type: "POST", 
    data: {mydata: JSON.stringify(MyObjects)}, 
    url: "index.php", 
    success: function(data){ 
    } 
}); 
    var array = [{count:1,image:"images/1.jpg",name:"Bouquet 1",price:49},{count:5,image:"images/1.jpg",name:"Bouquet 9",price:77}]; 
      $("#form-order").submit(function() { 

         var order_data = cart; 
         $.ajax({ 
         type: "POST", 
         url: "../order.php", 
         data: {form: form_data, 
         order:JSON.stringify(order_data)}, 
         success: function() {       
         console.log('OK'); 
         }); 
       }); 

*** PHP:

$to = "[email protected]"; 
$message = ' 
     <html> 
      <head> 
      </head> 
      <body> 
       <p>Name: '.$_POST['first name'].'</p> 
       <p>Phone: '.$_POST['phone number'].'</p> 
       $someArray; 
       $extradata = json_decode($_POST['order'], true); 
       foreach ($extradata as $key => $value) { 
       $someArray .= "<p>".$value["image"] . ", " . 
       $value["name"] . "</p>"; 
       </body> 
     </html>'; 
+0

你必须解码字符串化的内容,因为其他明智的你将无法迭代通过你发送到你的PHP脚本的数组。 看看json_decode()函数从PHP,你会知道,你必须做什么。 – rebru

+0

也显示你的其他表格。 –

+0

@rebru你可以看看,我已经添加了json_decode()到php。现在是否正确?谢谢 –

对于您的PHP代码段,您应该更好地截断这些部分,以便更好地支持编辑并更轻松地阅读它,例如....请注意,这只是一个方向,它不是工作解决方案。

/* Defintions */ 
$to = "[email protected]"; 
$extradata = json_decode($_POST['order'],true); 

/* HTML Structure */ 
$head = " 
     <html> 
      <head> 
      </head> 
      <body> 
"; 
$footer = " 
      </body> 
     </html>'; 
"; 

/* Content */ 
$content = ""; 
$content .= "<p>Name:".$_POST['first name']."</p>"; 
$content .= "<p>Name:".$_POST['phone number']."</p>"; 
foreach($extradata as $key => $value) 
{ 
    $content .= "<p>".$key."=".$value['image']."</p>"; 
} 

$htmlEmail = $head.$content.$footer; 
+0

非常感谢! –