私のウェブサイトのデータベースから3つのランダムな画像を表示したいと思います。以下はそのコードです:
$query = mysql_query ("SELECT id,url FROM tbl_gallery2");
if (mysql_num_rows($query) >= 3) {
$my_array = array();
$last_array = array();
while ($r = mysql_fetch_row($query)) {
$my_array[] = $r[1];
}
function makernd () {
$number = array_rand($my_array,1);
if (in_array($number,$last_array)) {
makernd();
} else {
$last_array[] = $number;
return $number;
}
}
for($i = 1 ; $i < 3 ; $i++) {
$item = makernd();
echo '<img src="./images/slider/'.$item.'.jpg" alt="" class="slider" />';
}
}
しかし、このコードを実行すると、次のエラーが発生します。
未定義の変数:my_array in line ... // makernd()関数の最初の行。
しかし、私は$my_arrayがこの関数のアクセス可能な配列であることを期待していました。
どうしたの?