【问题标题】:jQuery AJAX request returning raw PHP instead of result of running PHPjQuery AJAX 请求返回原始 PHP 而不是运行 PHP 的结果
【发布时间】:2015-10-05 02:23:35
【问题描述】:

我正在创建一个基于 Web 的应用程序,该应用程序与同一服务器上的 MySQL 数据库交互。我正在使用 Javascript/jQuery 来形成查询,然后尝试使用 php 来查询数据库。

目前,我只是想学习 AJAX 请求和 php(在我的本地计算机上测试)。特别是,我试图“提醒”我的 php 代码的结果并将其添加到 div 中。但相反,我收到原始 php 代码的警报,而我的 div 只是空白。 (如果将 url 设置为普通文本文件,则不是这种情况)。

如何将回调的变量“result”设置为 php 脚本的输出?

下面是我的 ajax 请求的 jQuery 代码:

$.ajax({

  url: 'getData.php',
  data: queryString,
  method: 'GET',
  cache: false,
  success: function(result) {
    alert(result);
    $('#dataTable').html(result);
  },
  error: function(jqXHR, textStatus, errorThrown) {
    if(jqXHR.status == '500') {
      alert('Internal server error: 500');
    } else {
      alert('Unexpected error');
    }
  }
})

这是我的简单 php 文件:

<?php
echo "huh";

?>

【问题讨论】:

  • 您是从网络服务器执行此操作的吗?
  • PHP 没有安装?未启用 PHP?未在 userdir 上启用 PHP(对于 apache)?未安装 PHP5-fpm(对于 nginx)?配置错误?
  • 您的“简单 php”文件是否被解析为 PHP?它有 .php 扩展名吗?
  • 你应该设置数据类型吗?
  • PHP 不是客户端语言。它是一种服务器端语言,所以它需要网络服务器。您可以编写 javascript 和 html,它可以与您的浏览器一起使用,因为它们是客户端,而不是 PHP。

标签: javascript php jquery ajax


【解决方案1】:

如果我理解您在下面的帖子和评论,您可以从本地路径打开您的页面。前任。 file:///C:....

在 AJAX 请求中,您无需指定主机名就对文件提出请求。 (getData.php)

在这种情况下,您的请求不会被任何网络服务器处理,也不会被 PHP 处理器解释。

要执行 PHP 代码,您必须请求一些网络服务器(安装了 PHP)。前http://localhost/getData.php

但如果你只是想学习 AJAX,你可以简单地请求一些 html 文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-19
    • 1970-01-01
    • 1970-01-01
    • 2015-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多