テーブルから 2 つのランダムな行を取得しています。次に、それらを比較して、それらが同じ行ではないことを確認します。もしそうなら、私が乗るまでランダムな行を選択し続けたいのですが、それは同じではありません。
現在、ランダムな行を選択していますが、別の行を取得しようとして while ループを実行すると問題が発生します。次のエラーが表示されます「非オブジェクトでメンバー関数 fetch() を呼び出します」
for ($i = 1; $i <= $cycles; $i++) {
$t1 = $dbtemp->query("SELECT * FROM `test` ORDER BY RAND() LIMIT 1");
$t2 = $dbtemp->query("SELECT * FROM `test` ORDER BY RAND() LIMIT 1");
$winner = $t1->fetch(PDO::FETCH_ASSOC);
$loser = $t2->fetch(PDO::FETCH_ASSOC);
if($winner['id'] == $loser['id']) {
while($winner['id'] == $loser['id']) {
$t2 = $dbtemp->query("SELECT * FROM `content` ORDER BY RAND() LIMIT 1");
$loser = $t2->fetch(PDO::FETCH_ASSOC); // Error occurs on this line
}
}
この作業をどのように行うべきか、または行うことができるかについての提案は素晴らしいでしょう.