对于循环,睡眠,页面未加载由于循环

时间:2014-09-22 10:46:01

标签: php loops post for-loop freeze

我正在创建一个小比特币支付网关,支付0.25 BTC,只需要1个确认。我创建了一个表单(form.html),它显示了一个唯一的随机地址($_POST['address'])所以在你点击提交后的下一页我需要它来显示一个页面并为我做一些检查...但是当我点击提交它只是在我的浏览器底部说“等待页面加载”并且实际上没有加载页面(其上有HTML),我确信这是因为for循环占用页面但我不确定如何绕过它。

我的循环

for ($i=0; $i <= 900; $i++) {

    $conf = file_get_contents('https://blockchain.info/q/addressbalance/' . $_POST['address'] . '?confirmations=1');
    $seen = file_get_contents('https://blockchain.info/q/addressfirstseen/' . $_POST['address']);

        if ($seen != 0) {
            if($conf >= 25000000) {
                echo "Payment Complete <br><br>";
                break;
            } elseif ($conf != 0 && $conf < 25000000) {
                echo "You Did Not Pay Enough Bitcoins<br><br>";
                break;
            }
        }
        sleep(30);
}

我对PHP非常生疏,这是我有一段时间的第一次尝试,如果有人能指出我正确的方向,我会做的不正确,非常感谢。

感谢任何人花在这上面的任何时间。

1 个答案:

答案 0 :(得分:1)

您将定义为循环计数器,但您没有使用它?! 最有可能没有达到破坏标准,而你实际上是在休息900 * 30秒= 450分钟 我绝对相信你不需要这个。 更不用说你必须在cnf,ini中更改一些变量...如果你需要在很长一段时间后回复

从我所看到的,默认情况下$ see可能为零和/或$ conf为&lt; = 0

sleep

延迟(以毫秒为单位),使用 usleep

没有使用过PHP几年,但我相信睡眠是在几秒钟内。 尽量不要使用后端语言进行前端检查,因为你帖子中的第一条评论说但我只能猜到你想要实现的目标......