Seo Forum & AI

Coding & Programming => Programming Forum => PHP Forum => Topic started by: helenedwards on 10-08-2016, 04:04:16

Title: Fetch data using ajax
Post by: helenedwards on 10-08-2016, 04:04:16
hi, I have two tables in my database first one id and the other one text.

this is index.php file I can fetch the data from db like this way


<?php include "config.php"?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">

<title>Title</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-3.1.1.min.js"></script>
<script type="text/javascript" src="ajax.js"></script>
</head>
<body>

<ul>

<?php
$result = $db->query("select * from veri ORDER BY id DESC ");
while ($row = $result->fetch_object()) {
echo '<li id="'.$row->id.'">'.$row->text.'</li>';
}


?>
</ul>

</body>
</html>
what I want to do is that once I insert a new item into a database this item is supposed to show up on top of the list without refrehing the page .This is my code but It doesnt work What am i doing wrong

ajax.js file

$(function () {

    $ajaxLoad = function () {

        var lastid = $("ul li:first").attr("id");

        $.ajax({
            type: "post",
            url: "ajax.php",
            data: {"lastid": lastid},
            dataType: "json",
            success: function (result) {
                if (result.error) {
                    $("#result").html(result);

                }
                else{
                    $("ul").prepend(result.data);
                }
            }

        });
    }
    setInterval("ajaxLoad()",1000);

});


this ajax.php file

<?phprequire "config.php";if ($_POST) {    $lastid = $_POST["lastid"];    if (!$lastid) {        $array["error"] = "something  is wrong";    } else {        $query = $db->query("select * from veri where id>$lastid ORDER  by id DESC ");        if (mysqli_affected_rows()) {            while ($row = $query->fetch_object()) {    $array["data"]='<li id="'.$row->id.'">'.$row->text.'</li>';            }        } else {            $array["error"] = " there is no new record";        }    }    echo json_encode($array);}?>