PHP PDO 类同时执行

标签 php mysql pdo while-loop

你好,我正在使用 this PHP PDO 类,我正在尝试编写一个 do while 循环。我从未测试过它是否有效,因为我不想弄乱我的数据库。我想要做的是生成一个数字,如果该数字存在,我希望它生成另一个数字。这是我现在使用 PDO 类的代码:

$db = new db();
do {
        $generate_SID = mt_rand(100000, 999999);
        $bindCheck = array(
            ":sponsorID" => $generate_SID
        );
        $sponsorIDChecker = $db->select("accounts", "sponsorID = :sponsorID", $bindCheck);
    }while(count($sponsorIDChecker) > 0);

如您所见,变量$generate_SID 将生成一个数字,它下面的代码将检查它是否存在于数据库中。

这行得通吗?或者我应该在循环之外放置一些东西吗?谢谢。

最佳答案

所以我删除了循环中的 SQL,因为正如某些人所说,这是个坏主意。我的代码现在看起来像这样:

$sponsorIDrandom = mt_rand(100000, 999999);
        $bindCheck = array(
            ":sponsorID" => $sponsorIDrandom
        );
    $sponsorIDChecker = $db->select("accounts", "sponsorID = :sponsorID", $bindCheck);

    do {
        $generate_SID = mt_rand(100000, 999999);
    }while(count($sponsorIDChecker) > 0);

我为 sponsorID 检查声明了另一个变量,然后在循环中设置了另一个变量。

关于PHP PDO 类同时执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31762681/

相关文章:

php - 格式化用 PHP 创建的 XML 文档 - DOMDocument

mysql - 编写此 MySQL 查询的更好方法 (JOIN)

php - 如何知道是否插入了新行,或者是否更新了现有行?

php - 服务器/本地主机之间的不同环境正在改变日期格式 - php pdo mysql/oci

php - 网站设计阻止数据发布到服务器

php - 从另一个表存储相关数据

php - 错误 :14090086:SSL certificate verify failed on Laravel Homestead

mysql - 连接到 Node js 服务器时出现错误(angularjs、nodejs、mysql 连接)

mysql - 比使用大量 LIKE 查询 mysql 更高效

php - 将 BLOB 插入 Oracle 时出错