Autor Zpráva
Nevím jak?
Profil *
PHP skript umí zjistit název souboru ve složce, který má být vytvořen, má následovat podle čísla a do něho být zapsán obsah.
$max = 0;
foreach (new RegexIterator(new DirectoryIterator($dir = 'video'), '~^(\d+)\.php$~', RegexIterator::GET_MATCH) as $item) {
    if ($item[1] > $max) $max = $item[1];
}
$max++; //o jedno vyšší než poslední
file_put_contents("$dir/$max.php", $obsah);

K tomu číslu, jestli by nešlo i nějaký písmenko/a nahodný?
Majkl578
Profil
Zakomponuj do toho tuhle funkci.
Nevím jak?
Profil *
Jsem na to koukal a zkoušel jsem to a vůbec nevím.
AM_
Profil
pokud ta čísla rostou vždy o 1, jaký má smysl připojovat k nim písmena? pak se jen zkomplikuje proces hledání nejvyššího čísla souboru, ne?
Nevím jak?
Profil *
Spíš potřebuju, aby to místo čísla psalo nahodný písmenka a čísla dohromady, ale nesmí se opakovat.
AM_
Profil
čili nechceš po sobě jdoucí řadu čísel, ale náhodné sekvence písmen a čísel (což je něco úplně jiného)? můžeš použít sha1(uniqid());
Nevím jak?
Profil *
Ano, ale chtěl bych to nějak zabespečit, aby se nikdy nevytvořil stejnej soubor.
AM_
Profil
Teoreticky pokud by se dvěma uživatelům podařilo vytvořit soubor ve stejnou mikrosekundu, tak by se jmenoval stejně. Pokud uniqid() nastavíš jako první parametr např. uživatelské jméno přihlášeného uživatele nebo něco pro daného návštěvníka unikátního, a druhý parametr(more_entropy) nastavíš na true, šance na stejné jméno souboru bude tak mizivá, že prakticky nemá smysl to řešit. Pokud bys to chtěl mít 100%, chtělo by to nějaký semafor, což není úplně triviální věc a myslím, že PHP pro ně nemá vestavěnou podporu.
Nevím jak?
Profil *
Třeba id to má každej uživatel jiné.
Nevím jak?
Profil *
Nemohl bys mě nějak nakopnout, nevím jak začít?
miho
Profil *
PHP má podporu semaforů.

Viz http://cz.php.net/manual/en/function.sem-acquire.php

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0