php While循环返回单个sql行而不是多个

时间:2017-11-25 00:19:07

标签: php mysql

我希望我的代码检查sql表中的每一行。我使用了一个while循环,因为它应该检查sql表中的每一行。相反,它只会查看第一行,而不会更进一步。 if语句和更新查询确实有效。 while循环不会比第一行更进一步。即使我使用的第二个选择查询返回9行。

$stmt = $pdo->prepare("SELECT curdate() FROM promocode");
            $stmt->execute();
            $row = $stmt->fetch();
            $currentdate = $row["curdate()"];



            $stmt = $pdo->prepare("SELECT BeginDatum, EindDatum, Gebruikt, MaxGebruikt, PromocodeID FROM promocode");
            $stmt->execute();


            while ($row = $stmt->fetch()) {
                if ($currentdate >= $row["BeginDatum"] && $currentdate <= $row["EindDatum"] && $row["Gebruikt"] < $row["MaxGebruikt"]) {
                    $actief = "yes";
                } else {
                    $actief = "no";
                }
                $stmt = $pdo->prepare("UPDATE promocode SET Actief=? WHERE PromocodeID=?");
                $stmt->execute(array($actief, $row["PromocodeID"]));
            }

0 个答案:

没有答案
相关问题