使用AJAX发布到PHP - 返回完整的PHP页面

时间:2013-06-22 23:04:17

标签: php jquery ajax cordova

我遇到的问题是,当我尝试发布到PHP页面时,它将只返回整个PHP文档,而不是回显的内容。

 <script type="text/javascript">
    $.ajax({ type:"POST",
             url:"backMap/locationCreation.php",
             data: { name: "TEMP" },
             success: function(data) { $("#awesomet").html(data);},
             error: function(xhr, textStatus, thrownError, data) {
                alert("Error: " + thrownError); 
             }
    });
 </script>
 <div id="awesomet">Not showing.</div>

有了这个,我试图将Ajax Post发送到给定的URL。我给它一些数据,如果它成功返回,那么它将把它的数据放在div中。

 <?php
   if (isset($_GET['name'])) {
       echo "Asked for name!";
   }
   for ($i = 1; $i <= 10; $i++) {
      echo '<p>For loop! Value: ' . $i . ' of 10.</p>';
   }
 ?>

当我打电话给我时,我收到了整个php页面。

我真的得到整个页面,if语句,for循环和所有。包括<?php标志。我不明白为什么我收到这样的数据。

我是通过Phonegap运行的。

感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

如果您看到包含PHP声明的整个php文件,则可能表示您的Web服务器配置存在问题。也许您的网络服务器无法将以.php结尾的文件识别为PHP文件。

答案 1 :(得分:0)

试试这个

 <script type="text/javascript">
    $.ajax({ type:"POST",
             url:"backMap/locationCreation.php",
             data: { name: "TEMP" },
             dataType : 'json',
             success: function(data) { $("#awesomet").html(data.return);},
             error: function(xhr, textStatus, thrownError, data.return) {
                alert("Error: " + thrownError); 
             }
    });
 </script>

并在PHP中

 if (isset($_POST['name'])) {
   $a =array();
   $a['return'] = "Asked for name!";
   echo json_encode($a);
 }

此外,您必须检查Apache配置,因为您正在以某种方式获取.php文件