Java脚本只从日志文件中读取7行数据

时间:2016-02-24 16:34:19

标签: javascript php

由于某种原因,我的脚本只会从日志文件中读取最多7行数据。当然我需要它来读取无限(在合理范围内)的数据行,因为我的日志文件每30分钟到1小时将至少有1000到2000行数据。我无法弄清楚为什么如果有超过7行的数据,脚本似乎根本就没有运行。

以下是获取数据的代码:

<html>
    <head>
        <title>Send Data Test</title>
        <script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script>

    </head>
    <body onload="clickFunction()">
     <div id="result"></div>

        <script type="text/javascript">

                function clickFunction() {
                    var sURL = "dump.log";
                    var oRequest = new XMLHttpRequest();
                    oRequest.open("GET", sURL, false);
                    oRequest.send(null)

                    if (oRequest.status == 200) {//code 200 is successful case
                       debugger;
                        var fileContent = oRequest.responseText;

                        var jsonArray = new Array();
                        while (fileContent.indexOf("]") > 0) {
                            var jsonStr = fileContent.substring(fileContent.indexOf("[") + 1, fileContent.indexOf("]"));
                            fileContent = fileContent.substring(fileContent.indexOf("]") + 1);
                            var jsonObj = JSON.parse(jsonStr);
                            jsonArray.push(jsonObj);
                        }
                       debugger;
                        for (i = 0; i < jsonArray.length; i++) {
                            var jsonStr1 = jsonArray[i];
                            $.ajax({
                                url: "newText.php",
                                type: "POST",
                                data: {
                                    email: jsonStr1.email,
                                    event: jsonStr1.event,
                                    timestamp: jsonStr1.timestamp,
                                    sg_message_id: jsonStr1.sg_message_id
                                }
                                ,
                                dataType: "JSON",
                                success: function (data) {
                                   // debugger;
                                    alert(data);

                                 $("#result").html(data);
                                }
                            });
                        }
                    }
                    else {
                        alert("Error executing XMLHttpRequest call!");
                    }
            };
        </script>

    </body>
</html>

以下是用于将其存储在我的数据库中的代码(文件名newText.php)

<?php
    //echo "<pre>";print_r($_REQUEST); die;
    $email = json_encode($_POST["email"]);
    $timestamp = json_encode($_POST["timestamp"]);        
    $event = json_encode($_POST["event"]); 
    $sg_message_id = json_encode($_POST["sg_message_id"]);

$con = new mysqli("localhost", "", "", "");

if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$queryRes = mysqli_query($con, "INSERT INTO sendgrid_data (email,event,sg_message_id,post_time) VALUES ('$email','$event','$sg_message_id','$timestamp')");

mysqli_close($con);

if($queryRes>0){
    echo 'Worked'; // so I know it worked
}


?>

更新:

所以我发现了问题。一些数据行以[和end with]开头,但是其他行以[然后以该行结尾}而在下一行以{然后在该行结束时开始]

开头

这是我获取数据的方式,因为它是关于同一个人的。那么,当一些不同的时候,如何让脚本选出数据行呢?

0 个答案:

没有答案