Autor Zpráva
3misho3
Profil
Dobry den,

potrebujem script, ktory zobrazi nahodny subor z urciteho adresara.

Napriklad v adresari "reklamy" budem mat 5 suborov "reklama1.php" (alebo "reklama1.txt") atd..

A na moju stranku dam ten script tak mi to bude zobrazovat 1 nahodby subor (reklamu) z toho adresara..

Myslim ze je to dost jasne napisane tak snad mi pomozete.. dakujem:)
Taps
Profil
3misho3
zkus něco takového

<?php
if ($handle = opendir('.')) {
    while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != "..") {
            $soubory[]=$file;
        }
    }
    closedir($handle);
}
$soubor= array_rand($soubory);
include ($soubor);
?>
cistax
Profil
pokud tam mas pet souboru, tak to udelej nejak takto

$cislo = mt_rand(1,5);
$reklama = $soubor[$cislo];
a pak si do toho dopis to jak to chces zobrazovat. Jestli treba jenom read(); nebo i include...

takze napriklad

$cislo = mt_rand(1,5);
$reklama = $soubor[$cislo];

$soubor[1] = "reklama1.php";
$soubor[2] = "reklama2.php";
$soubor[3] = "reklama3.php";
$soubor[4] = "reklama4.php";
$soubor[5] = "reklama5.php";

include("reklamy/$reklama");



Možná že je to trochu složité, ale urcite bych to tak udelal

EDIT: Pozde, a slozite:)
Ofi
Profil
pokud se budou jmenovat např. :
reklama1.php,reklama2.php,reklama3.php,reklama4.php,reklama5.php

tak například jednoduše:
<?php
$x =  rand(1,5);

$soubor = "reklama".$x.".php";
include "reklamy/".$soubor;

?>


pokud bys to měl napsáno různě(ty názvy) a i neznámý počet tak:
<?php
$adresar = opendir("reklamy");
$i = 0;
$a = array();
while (!is_bool($soubor = readdir($adresar))) {
	if(!is_dir("./$soubor")) {
		$a[$i] = $soubor;
	}
	$i++;
}
$x = rand(1,$i);
include "reklamy/".$a[$x];
closedir($adresar);
?>
3misho3
Profil
Aha no diki moc ale chcel by som ten posledny:

<?php
$adresar = opendir("reklamy");
$i = 0;
$a = array();
while (!is_bool($soubor = readdir($adresar))) {
if(!is_dir("./$soubor")) {
$a[$i] = $soubor;
}
$i++;
}
$x = rand(1,$i);
include "reklamy/".$a[$x];
closedir($adresar);
?>

a neviem co tam mam doplnit.

dajte taky navod..
Ofi
Profil
jedine co zmenis je $adresar = opendir("reklamy"); kde misto slova reklamy bude nazev slozky(popripade cesty) kdy ty reklamy sou ulozeny (napr. data/scripty, obecne slozka/slozka2/slozka3...
pokud to mas umistene ve slozce reklamy ktera neni v zadne dalsi slozce tak tam nech to co tam je...

a to same co napises tam vyplnis i sem include "reklamy/".$a[$x]; misto slova reklamy.

otazka: pracoval jsi nekdy v PHP?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: