PHP PDO从数据库中选择与变量匹配的条目

时间:2015-04-21 00:28:55

标签: php pdo

我已经在这里看了一些关于此问题的其他答案,但我一直都会遇到错误,所以这里有。

当用户访问该网站时,系统会要求他们提供其名称并为其分配随机整数。当他们点击提交输入他们的名字时,表单将被提交并保存到数据库中,用户将被重定向回主页面。如果随机数再次与数据库中保存的数字匹配,则显示该名称。

将数值插入数据库时​​没有问题,但是我在检索它们时遇到了一些问题。

我与数据库的连接很好,只是为了这个问题而将值保留为通用。

<?php
    $min=1;
    $max=100;
    $rand_number = rand($min,$max);

    try {
        $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
        //Set PDO Error Mode to Exception
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

        //Prepare SQL
        $stmt = $conn->prepare("select nickname from users where number=".$rand_number);
        $stmt->execute();

        if (!$stmt) {
            foreach($result as $row) {
                    echo $row['nickname'];
            }
        }
    }
?>

我收到的错误是我将查询与变量匹配的部分出了问题。

1 个答案:

答案 0 :(得分:2)

我唯一真正看不到的是你要获取数据的地方。您可以使用fetch*的{​​{1}}方法之一,也可以只是迭代语句本身(它实现Traversable)。

此外,您应该使用参数绑定。

PDOStatement