私は、rand()関数を使ってリストからランダムイメージを選ぶPHP上に単純イメージランダマイザを書きました。コードは完璧に動作し、htmlに画像として含めるとランダムな画像が生成されます。PHPイメージランダマイザーを再利用
同じhtmlに2度挿入しようとすると問題が発生します。ランダムなイメージが生成され、それを含めた両方の時間に表示されますが、同じイメージになります。言い換えれば、私は自分のページに繰り返しランダムな画像を取得します。
これを簡単に解決するには、randomizer.phpをコピーして新しい名前を付け、両方のイメージをHTMLに組み込むだけです。私がこれをやりたくない理由は、私の最終的なHTMLには約25枚の写真があるからです。これを行うにはもっと良い方法があるはずです。私のファイルは別のサーバーでホストされており、HTMLサーバーはPHPをサポートしていないので、PHP関数を自分のHTMLに追加することはできません。
randomizer.phpファイルの25個のコピーを作成する(またはそれを含む25個の異なるファイルを作成する)以外にも、より良い修正方法がある場合は、教えてください。私はあなたの意見を最も高く評価します!
ありがとう、非常に!ここで
は、コードの抜粋です:
if (count($fileList) > 0) {
do { //do-while loop will get a new random image until that image has not been used yet in this session
$imageNumber = rand(0 , (count($fileList) - 1)); //get random image from fileList
$iterations++;
} while(!(empty($_SESSION['img' . $imageNumber])) && iterations < 200);
$_SESSION['img' . $imageNumber] = True; //this image number has been displayed
$_SESSION['shown']++; //increments the number of shown pictures in this signature
$img = $folder.$fileList[$imageNumber];
}
私たちはどこから始めるのですか? – fazo