我需要帮助通过电子邮件发送jQuizzy结果

时间:2011-12-03 00:57:48

标签: php email jquery jquery-plugins

我希望通过电子邮件发送jQuery测验“jQuizzy”的结果。

这是将POST发送到名为send.php

的文件的代码
          if (config.sendResultsURL !== null) 
      {
          console.log("OH HAI");
          var collate =[];
          for (r=0;r<userAnswers.length;r++)
          {
              collate.push('{questionNumber:"'+parseInt(r+1)+'", UserAnswer:"'+userAnswers[r]+'"}');
          } 
          $.ajax({
                  type: 'POST',
                  url: "send.php",
                  data: '[' + collate.join(",") + ']',
                  complete: function () {console.log("OH HAI");}
                });
      }

这是发送电子邮件的简单PHP代码。

<?php
$to = "example@example.com";
$subject = "jQuizzy!";

$jsonStr = $_POST["ajax"];
$json = json_decode($jsonStr);

$body = "$json";

mail($to, $subject, $body);
?>

编辑:对不起,问题是我将结果发布到send.php页面,因为电子邮件正在通过,但电子邮件是普通/空的。

编辑2:我甚至没有考虑检查我发现我的服务器没有任何设置的php错误日志,但是在设置它之后似乎没有错误的php端的东西。

2 个答案:

答案 0 :(得分:0)

data参数应该是有效的url编码数据或对象散列。你传递的是一个看起来像JSON的字符串。这没有任何意义,但很难提出一些建议,因为你还没有真正说出你的问题是什么。

答案 1 :(得分:0)

尝试将数据作为对象发送。

data: {
    ajax: '[' + collate.join(",") + ']'
},