Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php JSFIDLE:无法从数据库加载Ajax数据_Php_Jquery_Html_Ajax_Database - Fatal编程技术网

Php JSFIDLE:无法从数据库加载Ajax数据

Php JSFIDLE:无法从数据库加载Ajax数据,php,jquery,html,ajax,database,Php,Jquery,Html,Ajax,Database,我正在尝试加载数据库信息,但在JSFIDLE中似乎不起作用 HTML: 阿贾克斯: } PHP: 它在我的本地主机上工作,但我似乎无法让它在小提琴上工作。我甚至可以在这里看到JSON数据 我不知道这是否可能 任何帮助或建议将不胜感激 因为您的JSFIDLE无法找到php文件以及包含从window.onload调用的函数populate的ajax文件 因此,您必须包含这些文件并提供适当的路径。JSFIDLE提供了在外部资源标题下包含外部文件的选项,因此请尝试包含所有需要的php文件。您的FIDLE

我正在尝试加载数据库信息,但在JSFIDLE中似乎不起作用

HTML:

阿贾克斯:

}

PHP:

它在我的本地主机上工作,但我似乎无法让它在小提琴上工作。我甚至可以在这里看到JSON数据

我不知道这是否可能


任何帮助或建议将不胜感激

因为您的JSFIDLE无法找到php文件以及包含从window.onload调用的函数populate的ajax文件


因此,您必须包含这些文件并提供适当的路径。JSFIDLE提供了在外部资源标题下包含外部文件的选项,因此请尝试包含所有需要的php文件。您的FIDLE将完美运行。

在回显json数据之前,您必须添加以下内容。在浏览器中呈现为json文件,然后允许外部请求

header('Content-Type: application/json');
header("Access-Control-Allow-Origin: *");
那么在那次使用之后

<script src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript">
    $(document).ready(function(e) {
        $.getJSON('http://www.mochamedia.co.za/clients/testing/js/journal-populate.php',function(data){
            var items = [];
            $.each(JSON.parse(data), function(key, val) {
                items.push('<option id="' + key + '" value="'+val+'">' + val + '</option>');
            }); 
            $('#accountNumber').append(items.join("\n"));
        });
    });
</script>

我编辑了你的,所以它被包装在头部,我从控制台得到以下错误:GEThttp://fiddle.jshell.net/mpVQn/4/show/journal-populate.php 404找不到。它正在试图找到一个相对路径。JSFiddle不在您的服务器上,首先您需要绝对URL,然后您可能会被同一来源策略阻止?@adeneo所以它在JSFiddle上不起作用?我确实包含了它,它不起作用。。因此,您的答案没有帮助。..@msbodetti尝试运行您可以找到警告消息。所以首先解决这个错误。我会尝试这个,但我认为它不会工作。。。JSFIDLE允许您输出JSON,但不能从外部源加载它。在这里阅读他们的说明
<?php 
  include('dbconn.php');
  //--------------------------------------------------------------------------
  // Example php script for fetching data from mysql database
  //--------------------------------------------------------------------------
  $databaseName = "mochamhy_test";
  $tableName = "accountMaster";

  //--------------------------------------------------------------------------
  // 1) Connect to mysql database
  //--------------------------------------------------------------------------

  $con = mysql_connect($gaSql['server'],$gaSql['user'],$gaSql['password']);
  $dbs = mysql_select_db($databaseName, $con);
  //--------------------------------------------------------------------------
  // 2) Query database for data
  //--------------------------------------------------------------------------

  $result = mysql_query("SELECT * FROM $tableName ORDER BY `accountNumber` ASC");          //query
  //$array = mysql_fetch_array($result);                          //fetch result 
  $data = array();
    while ( $row = mysql_fetch_row($result) )
        {
             $data[] = $row;
        }
  //--------------------------------------------------------------------------
  // 3) echo result as json 
  //--------------------------------------------------------------------------
  echo json_encode($data);

?>
header('Content-Type: application/json');
header("Access-Control-Allow-Origin: *");
<script src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript">
    $(document).ready(function(e) {
        $.getJSON('http://www.mochamedia.co.za/clients/testing/js/journal-populate.php',function(data){
            var items = [];
            $.each(JSON.parse(data), function(key, val) {
                items.push('<option id="' + key + '" value="'+val+'">' + val + '</option>');
            }); 
            $('#accountNumber').append(items.join("\n"));
        });
    });
</script>