For Loop,Sleep,由于循环而无法加载页面

问题描述:

我正在创建一个小型比特币支付网关来支付0.25 BTC并且只需要1次确认。我创建了一个窗体(form.html),它显示了一个独特的随机地址($_POST['address']),所以在你下一页后提交我需要它显示一个页面并为我做一些检查......但是当我点击提交时只是在浏览器底部显示“等待页面加载”,实际上并没有加载页面(HTML上面),我确信这是因为for循环占用了页面,但我是不知道如何解决它。For Loop,Sleep,由于循环而无法加载页面

我的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荒废了,这是我在一段时间的第一次尝试,如果有人可以点我在正确的方向我在做什么不正确,这将是多少赞赏。

谢谢任何​​人在此花费任何时间。

+0

那么你使用PHP ..虽然这可能是可能通过'flush',我宁愿切换到JavaScript – kero 2014-09-22 10:47:43

你定义作为循环计数器,但你没有使用它? 最有可能没有满足休息条件,你实际上正在做一个大睡900 * 30秒= 450分钟 我绝对相信你不需要这个。 更不用说,你必须改变cnf中的一些变量,ini ...如果你需要在很长一段时间后的回应

从我可以看到$默认可能为零和/或$ conf是< = 0

sleep

,单位为毫秒的延迟,使用 usleep

没有使用PHP的一些年,但我认为,睡眠是秒。 尽量不要做前端检查与后端语言作为您的帖子下的第一个评论说,但我只能猜测你想达到什么...

+0

Doh,睡眠仅仅意味着1秒,所以15分钟(通常一个确认的长度,页面仍然不会加载,但是),你是正确的,我不是使用循环计数器。有没有更好的方法来反复检查所有这些信息? – hexce 2014-09-22 11:01:41

+0

请参阅上面的编辑 – ninjabber 2014-09-22 11:08:58