jason php datasheet - 需要帮助

人气:650 发布:2022-09-22 标签: php ajax json

问题描述

请问我的代码有问题....它不会从数据库返回数据。

please am having problem with my code.... it's not returning data from database.

<script type="text/javascript">
var myTimer;

function ajax_json_data(){
    var databox = document.getElementById("databox");
    var arbitrarybox = document.getElementById("arbitrarybox");
    var hr = new XMLHttpRequest();
    hr.open("POST", "request.php", true);
    hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    hr.onreadystatechange = function() {
        if(hr.readyState == 4 && hr.status == 200) {
            var d = JSON.parse(hr.responseText);
            arbitrarybox.innerHTML = d.arbitrary.returntime;
            databox.innerHTML = "";
            for(var o in d){
                if(d[o].title){
                    databox.innerHTML += '<p><a href="page.php?id='+d[o].id+'">'+d[o].title+'</a><br>';
                    databox.innerHTML += ''+d[o].cd+'</p>';
                }
            }

        }

    }
   hr.send("limit=");
    databox.innerHTML = "requesting...";
    myTimer = setTimeout('ajax_json_data()',6000);
}
</script>

<?php
header("Content-Type: application/json");
if(isset($_POST['limit'])){
    $limit = preg_replace('#[^0-9]#', '', $_POST['limit']);
    include_once("phpincludes/dataconect.php");
    $i = 0;
    $jsonData = '{';
    $sqlString = "SELECT * FROM bible WHERE  ORDER BY RAND() LIMIT $limit";
    $query = mysqli_query($db_conx, $sqlString) or die (mysqli_error());
    while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)) {
        $i++;
        $id = $row["id"];
        $title = $row["title"];
        $cd  = $row["creationdate"];
        $cd = strftime("%B %d, %Y", strtotime($cd));
        $jsonData .= '"article'.$i.'":{ "id":"'.$id.'","title":"'.$title.'", "cd":"'.$cd.'" },';
    }
    $now = getdate();
    $timestamp = $now[0];
    $jsonData .= '"arbitrary":{"itemcount":'.$i.', "returntime":"'.$timestamp.'"}';
    $jsonData .= '}';
    echo $jsonData;
    }else
        echo ("nothing was posted");

?>

推荐答案

_POST [' limit'])){ _POST['limit'])){

limit = preg_replace(' #[^ 0-9 ]#',' ', limit = preg_replace('#[^0-9]#', '',

_POST [' limit']); include_once( phpincludes / dataconect.php); _POST['limit']); include_once("phpincludes/dataconect.php");

146