让用户等待再次尝试连接 - mysqli php

时间:2016-07-24 15:22:04

标签: php mysql mysqli

我有这个连接到mysqli:

$mysqli_c = new mysqli($host, $us, $password, $bd);

if (mysqli_connect_errno()) {
    if (mysqli_errno() == 1203) {
        header("Location: too_many.php");
        exit;
    }
}

这得到了太多的连接"错误。

我想要的是而不是重定向到too_many.php,如果出现错误1203,我想在10秒后再试一次。这样用户可以认为我的网站加载速度很慢,但他不会看到错误页面。

任何想法如何做到这一点?好吗?

2 个答案:

答案 0 :(得分:1)

do {
$status="ok";
    $sql = new mysqli("localhost", "root", "", "site");
    if (mysqli_connect_errno()) {
        $status = 'error';
        sleep(10);
    }
}while($status == 'error');

答案 1 :(得分:0)

<?php

    function connect($i) {
        $mysqli_c = new mysqli($host, $us, $password, $bd);
        if (mysqli_connect_errno()) {
            if (mysqli_errno() == 1203) {
                $i=$i+1;
                if ($i >= 4) {
                     header("Location: too_many.php");
                     exit;
                }
                sleep(10);
                connect($i);
            }
        }
    }
    connect(1);

?>