ugrás a tartalomhoz

Egyedi filenevek biztosítása feltöltéskor

Anonymous · 2006. Már. 2. (Cs), 14.07
Hy!

Van arra valainek valami megoldása, hogy filefeltöltéskor (és linkjének az adatbázisba helyezésekor):
hogyan lehet egyedi nevet adni a file-nak, ami biztos, hogy nem fog még létezni a könyvtárban?
 
1

<Nincs cím>

Anonymous · 2006. Már. 2. (Cs), 15.18
hat erre kismilio megoldas lehet
en alltalaban a feltoltesi idot es meg valamit kombinalok (sid,remoteraddr,veletlen 8char) igy ha meg 1 adott masodpecen belul is toltenenek fel valamit aminek alatalaban eleg kicsi az eselye de nem kizarhato akkor is van meg 1 par char ami kulombozo. Vagy egyszeruen tarolod az eddigieket es meg ahoz is hasonlitod
6

getmypid

Hodicska Gergely · 2006. Már. 4. (Szo), 13.40
sid,remoteraddr,veletlen 8char

Érdemes lehet még a getmypid() függvényt bevetni, mert általa biztosított, hogy az egy időben futó scriptek is biztosan más azonosítót fognak generálni.


Felhő
7

:)

Anonymous · 2006. Már. 7. (K), 14.31
Köszi ;)
2

Felhasználási módtól függően...

-zsolti- · 2006. Már. 2. (Cs), 16.39
...lehet mondjuk unixtimestamp-et adni neki. Ez jó lehet cikk felvételnél, admin oldalakon, ahol "kicsi az igénybevétel", viszont pl. egy nagy forgalmú apróhirdetőben már előfordulhat, hogy pont azonos másodpercben töltenek fel két képet, akkor már nem jó.
Amúgy szvsz sorszám (kép ID). Ha leellenőrizted a fájlt, és feltölthető, először az adatábizisba írod az adatait. Utána kiolvasod az ID-jét (az auto_increment mezőből) (MySQL esetén mysql_insert_id függvény) és az alapján nevezed el a move_upload_files résznél.
3

re

Anonymous · 2006. Már. 2. (Cs), 18.39
Igen én is erre gondoltam, de ez azthiszem több erőforrást eszik, mintha php-ből generáltatnék neki vmi stringet. Bár lehet, hogy nem tudom jól..

Tehát, valahogy úgy oldottam meg, hogy lekérdeztem az aktuális időpontot ilyen formán: "yMd_His" , aztán hozzáfűztem még egy random számot: rand(0, 999999) , majd a végére a kiterjesztését: .doc aztán ha sikerült a feltöltés akkor jegyeztem csak be, egyszerre az adatait.
Valami ilyesmit kaptam: 050222_220311_23423.doc
Igaz, ennek is biztos van egy kis esélye, hogy ua. lesz.. :)

Azt el felejtettem mondani, hogy annyi nehezíti dolgom, hogy egyszerre akár 4 file-t is fel lehet a formról tölteni.
4

két megoldás

pp · 2006. Már. 2. (Cs), 18.59
1. beszúrsz egy új elemet az adatbázisba és a sorszámát adod a fájlnévenk. Azután update-eled a mezőt. Mysql-ben auto_increment mező értékét le tudod kérdezni az mysql_insert_id() fügvénnyel.

2. uniqid()
http://hu.php.net/manual/hu/function.uniqid.php

pp
5

;)

pp · 2006. Már. 2. (Cs), 19.01
Hát ezt írta Zsolt is...pihennem kéne...
pp