Zadejte hledaný výraz...

Automatické generovanie názvu v PHP

Jakub Krupa
verified
rating uzivatele
(29 hodnocení)
26. 9. 2010 13:04:46
Potrebujem poradiť - mám kód:
$file = basename($_FILES)
používam to na pomenovanie obrázku ktorý chcem uploadnúť na svoj server. Problém je v tom že keď zvolím dva rovnaké názvy tak mi to prepíše pôvodný obrázok. Ako kód upraviť aby mi to generovalo názov: "xyz568_môjnazov.jpg
?
Ďakujem
26. 9. 2010 13:04:46
https://webtrh.cz/diskuse/automaticke-generovanie-nazvu-v-php#reply562825
primakluk
verified
rating uzivatele
(2 hodnocení)
26. 9. 2010 13:15:21
// *** generovat nahodny osmimistny nazev
$moznosti= array("1","2","3","4","5","6","7","8","9","0","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z");
$mista="8";
$heslo="";
for ($i=0 ;$i<=$mista-1 ;$i++)
{
$nahoda=rand(0, count($moznosti)-1);
$hotovo.=$moznosti;
}
$novynazev = $hotovo;
// ***************** nahrat soubor ******************
if ($_FILES == "image/png") $typ = "png";
if ($_FILES == "image/jpeg") $typ = "jpg";
if ($_FILES == "image/jpg") $typ = "jpg";
if ($_FILES == "image/gif") $typ = "gif";
$kam = $novynazev . "." . $typ;
copy($_FILES,$kam); //při ukládání se použije název $kam
26. 9. 2010 13:15:21
https://webtrh.cz/diskuse/automaticke-generovanie-nazvu-v-php#reply562824
Senky
verified
rating uzivatele
(4 hodnocení)
26. 9. 2010 13:17:09
Čo tak generovať názov podľa md5 aktuálneho času?
md5(gmdate('ddmmyyyyhhnnsszzz'));
tým by si zastúpil to "xyz568_" v časti názvu... Len to bude trochu dlhé, takže si to potom môžeš skrátiť cez substr()...
26. 9. 2010 13:17:09
https://webtrh.cz/diskuse/automaticke-generovanie-nazvu-v-php#reply562823
Vít Jurásek
verified
rating uzivatele
(56 hodnocení)
26. 9. 2010 14:35:56
použij funkci uniqid('')
vygeneruje ti to unikátní identifikátor, navíc pokud vložíš mezi 2 apostrofy text (třeba identifikátor uživatele), bude přidán na počátek
26. 9. 2010 14:35:56
https://webtrh.cz/diskuse/automaticke-generovanie-nazvu-v-php#reply562822
Kamil Tomšík
verified
rating uzivatele
(3 hodnocení)
26. 9. 2010 18:11:51
nejcistsi reseni je proste se mrknout, jestli tam dany soubor je a potom pripojit _2 a nebo _3, atd. neni to nejjednodussi, ale je to necistejsi a neni sance, ze si neco prepisete... uniqid teoreticky muze (po urcite dobe) vygenerovat 2 stejne retezce, tudiz to neni bezpecne
26. 9. 2010 18:11:51
https://webtrh.cz/diskuse/automaticke-generovanie-nazvu-v-php#reply562821
Martin Klíma
verified
rating uzivatele
(13 hodnocení)
26. 9. 2010 18:22:01
proč nepoužívat funkci time(); ?
26. 9. 2010 18:22:01
https://webtrh.cz/diskuse/automaticke-generovanie-nazvu-v-php#reply562820
Kamil Tomšík
verified
rating uzivatele
(3 hodnocení)
26. 9. 2010 19:04:28
Napsal Pooky;575743
proč nepoužívat funkci time(); ?
sance, ze nekdo nahraje stejny soubor 2x ve stejnou vterinu je dost mala, ale je tady - tudiz to neni 100%, pro 90% to ale asi stacit bude, mas pravdu.
cili nazev souboru + time ()
26. 9. 2010 19:04:28
https://webtrh.cz/diskuse/automaticke-generovanie-nazvu-v-php#reply562819
Pro odpověď se přihlašte.
Přihlásit