小编ksb*_*b86的帖子

jQuery:我可以在更长的$ .ajax请求待处理时发送和接收$ .ajax响应吗?

情况:
我正在使用$ .ajax()POST向php脚本发送请求,该脚本将大约400,000-500,000行插入到db中.这一直需要3.5到4分钟.(在此期间,请求是PENDING).

问题:
我需要一些方法来显示页面上的进度.(比如一个 %).我尝试在setInterval中使用$ .ajax(),每隔5秒左右检查一次,但是它们似乎会在第一个(更长的)$ .ajax()完成时生成.

问题:
默认情况下不是$ .ajax()async吗?这不应该意味着请求可以在任何时间以任何顺序发送,并且应该以任何顺序随时收到响应吗?这甚至与异步有什么关系吗?有没有办法定期从一个请求发回'半响应'?或者,当有待处理的请求/响应时,我是否无法发送和接收请求/响应?(见下面的精彩图纸)

提前致谢!!!

多次请求http://kshaneb.com/reqres.png

php mysql ajax jquery insert

9
推荐指数
2
解决办法
2059
查看次数

自运行php脚本?

情况:
我的php/html页面每5-10分钟左右检索一个不同域的另一个页面的内容.我使用JavaScript setInterval()和jquery .load()将来自其他域的内容请求到我页面上的元素中.每次检索内容时,javascript都会将新内容与之前的内容进行比较,然后我对一个php脚本进行Ajax调用,该脚本会向我发送一封更改内容的电子邮件.

问题:
除了我需要一个不断打开的浏览器,请求更新之外,这一切都运行良好和花花公子.

问题:
有没有办法通过服务器上的某种"自执行"脚本来实现这一目的?我只需要启动一次,并且只要我希望脚本运行,它就会继续在它自己运行而不需要打开浏览器?

提前致谢!PS我无论如何都不是php/javascript专家,但我可以解决这个问题.

php

5
推荐指数
1
解决办法
1677
查看次数

大型 mysql 插入语句

我有一个如下所示的 .txt 文件:

    id,lat,lon,sequence,dist
    98372,40.535257,-111.871612,1,0.0
    98372,40.536023,-111.872235,2,0.1001
    98372,40.535629,-111.872599,3,0.1335
    98372,40.535499,-111.872559,4,0.1758
    ...etc
Run Code Online (Sandbox Code Playgroud)

这个文件有 863650 行长!(34MB)
我需要使用 MyISAM 引擎将每一行作为一行插入 MySQL 数据库中。(我假设这将是最快的)

我在 GoDaddy 的服务器上托管,因此我对 apache 和 mysql 配置没有太多控制权。

这是我目前所拥有的,它可以工作,除了需要大约 6 分钟以上并且服务器在 2 分钟后超时,因此它永远不会完成:

    $raw = file_get_contents('file.txt');
    $lines = explode("\r\n", $raw);
    $tablename = 'tablename';
    $tableHeaders = 'id,lat,lon,sequence,dist';
    foreach($lines as $line) {
        $line_values = explode(",", $line);
        $sqlValues = "VALUES(";
        foreach($line_values as $value) {
            $sqlValues .=  "'$value',";
        }
        $sqlValues = substr($sqlValues, 0, -1) . ")";
        $sqlSyntax = "INSERT INTO $tablename ($tableHeaders) $sqlValues";
        $mysqlcon->query($sqlSyntax);
    }
Run Code Online (Sandbox Code Playgroud)


这个可以优化得更好吗?或者是否可以构建一个巨大的插入语句,例如:

    "INSERT INTO …
Run Code Online (Sandbox Code Playgroud)

php mysql timeout insert

1
推荐指数
1
解决办法
2720
查看次数

标签 统计

php ×3

insert ×2

mysql ×2

ajax ×1

jquery ×1

timeout ×1