转换php字符串数据并用ajax发布?

时间:2015-04-02 04:52:00

标签: php jquery ajax json

我创建的脚本首先发送用户获取数据摘要的代码,然后点击按钮将数据发送给网站管理员的电子邮件。

我有这个PHP数据:

<?php
        $name = $_POST['name'];
        $email = $_POST['email'];
        ?>

然后我需要ajax以一种可以读取并提交到php格式的方式获取数据:

<script type="text/javascript">
 $(document).ready(function() { //Quando documento estiver pronto
   $('#btnEnviarEmail').click(function() {
         var name = $('#name').val();
         var email = $('#email').val();

         var urlData = {
                     "name": name,
                     "email": email
                  };

         // Ajax 
         $.ajax({
             type: "POST",
             url: "sendmailivamdefinitivo.php", // endereço do phpmailer
             async: true,
             data: urlData,

             // informa Url
             success: function(data) { // sucesso 
                 $('#retornoHTML').html(data);

             },
             beforeSend: function() { // antes de enviar 
                 $('.loading').fadeIn('fast');
             },
             complete: function() { // completo 
                 $('.loading').fadeOut('fast');
             }

                });

           });
           });
     </script>

我应该用这种方式来获取php字符串吗?:

 var name = $('name').val();
 var email = $('email').val();

1 个答案:

答案 0 :(得分:0)

没有

使用此:

var name = "<?php echo $name; ?>";
var email = "<?php echo $email; ?>";

这将在输出中回显PHP变量(在JS代码中表示)。所以$name$email的值将存储在JS变量中(因为它用“”编码)。

请记住,PHP变量应该在JavaScript标记之前定义(很明显)。


编辑:正如OP在评论中所说,我对问题的理解是:

有两个PAGE,在第一页上用户提交一些值(可能是代码),PHP接收这些值并在变量中准备summary of data。现在在第二页,这些变量显示给用户(用于审查/ confiermation),然后用户将通过AJAX将数据发送给网站管理员。问题是如何在AJAX var。

中获取PHP var的值

第一页提交 - &gt; PHP(在var中有数据) - &gt; AJAX(将PHP var的数据发送给网站管理员)。

示例来源:(第二页)

<?php $name=$_POST["name"]; //from previous page submission...
      $email=$_POST["email"];// ...(previous page can be same PHP page)
      $someOtherVar="summary"; ?>

<SCRIPT type="javascript/text">
   var name = "<?php echo $name; ?>"; //declaring JS vars having value of PHP vars
   var email = "<?php echo $email; ?>";

   //JS code to make AJAX request to send these JS vars (same as OP's)
</SCRIPT>

<body>
   displaying summary here by php
   <?php 
      echo $name;
      echo $email;
     //..... other summary data if there
   ?><br />
   <input type="button" id="btnEnviarEmail" value="SEND to Webmaster/Confirm" />
</body>