【问题标题】:PHP echoing full file, not JSON dataPHP 回显完整文件,而不是 JSON 数据
【发布时间】:2020-05-12 15:08:12
【问题描述】:

我花了很多时间试图找出问题所在。什么都没有工作。它继续以文本形式发送 PHP 文件。

这是我的 ajax 请求的 javascript 文件。

var ajax = new XMLHttpRequest();

var method = "GET";

var url = "http://localhost:8000/createTable.PHP";

//send ajax request
ajax.open(method, url, true);
ajax.send();

//retrieve table data
ajax.onreadystatechange = function () {
    if (this.readyState == XMLHttpRequest.DONE && this.status == 200) {
        //convert data to array
        alert(this.responseText);
        var data = JSON.parse(this.responseText);
    }

这是我的 php 文件,它在我的网站上被提醒。

//connect to MYSQL

require_once('../connectSQL.php');

//query

$result = mysqli_query("SELECT * FROM fitness");

//

$to_encode = array();

while ($row = mysqul_fetch_assoc($result)){

    $to_encode[] = row;

}

echo json_encode($to_encode);

mysqli_close($dbc);
//fclose($myfile);

当我将 json 从 javascript 文件发送到 php 以存储在数据库中时,我的 php 文件工作正常。但是,现在我正在从数据库中检索数据,似乎 PHP 文件没有被读取为 PHP。

我尝试在 httpd.conf 中更改各种内容。使用 apache 7 和 mac osx。

【问题讨论】:

  • 愚蠢的问题,但文件确实以<?php 开头,对吗?
  • 是的,很抱歉,它以 ?> 结尾
  • 大写 php 应该不是问题,但您的网络服务器(apache2、nginx 等)可能不将大写 PHP 文件视为 php 文件。无论如何,您应该将文件的扩展名设为小写 php。
  • @HakanSONMEZ 傻了我。那解决了它。谢谢!

标签: javascript php mysql apache


【解决方案1】:

您必须插入 PHP 标记,以便服务器将此代码理解为 PHP

在这种情况下,它看起来像这样:

<?php

//connect to MYSQL

require_once('../connectSQL.php');

//query

$result = mysqli_query("SELECT * FROM fitness");

//

$to_encode = array();

while ($row = mysqul_fetch_assoc($result)){

    $to_encode[] = row;

}

echo json_encode($to_encode);

mysqli_close($dbc);
//fclose($myfile);

?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-02
    • 1970-01-01
    • 1970-01-01
    • 2012-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多