随机图像PHP / SQL

时间:2015-06-02 12:29:02

标签: php sql pdo

我有2个数据库表。 loppe usernameloppeID以及billeder包含loppeIDbilledeNavn

我希望div包含来自同一billedeNavn的2个随机username。我尝试过一些东西,但我只能弄清楚如何从同一个billedeNavn(用户名)获得2 loppeID。我对这一切都很陌生。所以我会感激任何帮助。

<?php
    $frontimage = ("SELECT * FROM loppe RIGHT JOIN billeder ON loppe.loppeID=billeder.loppeID WHERE loppe.username = '$username' ORDER BY RAND()");
    $st = $db->prepare($frontimage);
    $st->execute();
    $row = $st->fetch();
    $loppeid = $row['loppeID'];
    $loppe = $loppeid;

    $sql = "SELECT * FROM billeder WHERE loppeID = :loppeID order by rand() limit 2";
    $stmt = $db->prepare($sql);
    $stmt->execute(array("loppeID" => $loppe));
    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        $fname = $row['billedeNavn'];
        echo '<div class="col-xs-6 loppe-pic-outer"><img class="img-responsive loppe-pic" src="loppebilleder/'.$fname.'"></div>';
    }
?>

1 个答案:

答案 0 :(得分:0)

你有没有尝试过这种改变? $sql = "SELECT * FROM billeder WHERE loppeID = :loppeID order by rand() limit 2";
到这个 $sql = "SELECT * FROM billeder WHERE loppeID = '.$loppeid.' order by rand() limit 2";

在使用php和数据库时弄清楚发生了什么的好方法是在创建查询后执行类似的操作 $sql = "SELECT * FROM billeder WHERE loppeID = '.$loppeid.' order by rand() limit 2"; die($sql);

因此,您将看到数据库实际查询的内容,您可以在sql字符串或查询中进行检查。