I need to show some banners on a web page. The number of banners will be from 10 (maximum 10). I can set the number of banners and each banner folder in the database. Banner images are stored in separate server folders depending on the category. Banners are displayed in columns.
My code, Here long1, long2, ... long10 are the directory names from the database
$array=array(); for($n=1;$n<=$long;$n++) { $files = array(); $dir=${'long'.$n}; if(is_dir($dir)) { $openDir = opendir($dir); while (false !== ($file = readdir($openDir))) { if ($file != "." && $file != "..") { $files[] = $file; } } closedir($openDir); } mt_srand((double) microtime()*1000000); $randnum = mt_rand(0,(sizeof($files)-1)); $arraycount=count($array); for($index=0;$index<=$arraycount;$index++) { if(!in_array($array,$randnum)) { $array[]=$randnum; } } $img = $dir."/".$files[$randnum]; <input type="image" class="advt_image" src="<?=$img;?>" alt="" name=""/> }
ex: if 7 banners are installed in the database, I have to show 7 banners from another or the same folder (some banners will be from the same folder). I need to avoid duplicating banners every time I display a web page.
I assigned an array to store each random number. Do I need to change something in the code? any thought / idea?
Thanks!
source share