我遇到的问题是,当我尝试发布到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运行的。
感谢任何帮助。
答案 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文件