PHP də kömək

Salam PHP də belə bir şey etmək istəyirəm, istiqamət verməyinizi xahiş edirəm: bütün istifadəçilər sayta nə fayl yükləsələr hamısı bir direktoriyanın içində olsun, lakin, fayllar serverə yüklənəndə əsl adı faylınid nömrəsi və userin id nömrəsi bazaya yazılsın, faylın özü isə id nömrə şəklində saxlanılsın serverdə.Lakin saytdan kimsə həmən faylı yükləmək istəsə sayt.com/userid/fileid/fayladi yazanda həmən faylı yükləyə bilsin, yəni onun komputerinə faylın adı olduğu kimi yüklənsin, id nömrəsi şəklində yox.
Əslində hər dəfə serverə fayl yüklənəndə ayrıca direktoriya açmaq şəkilində etmək olar, lakin mən istəmirəm ki, bu qədər direktoriya yaransın, lakin eyni zamanda kimsə faylı yükləmək istəsə öz adı formasında yükləyə bilsin.Bəlkə digər başqa yolla da etmək olarsa, təkliflərinizi verin zəhmət olmasa.

P.S:Yəni əsas prinsip, iki eyni adda fayl yüklənsə problem çıxmasın, eyni zamanda faylların heç birinin adında dəyişiklik olmasın.


Yadda saxlama
Kateqoriya: Web skriptlər, kod həlləri . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (3 cavab var)

(08:35, 10/03/2012 ) #10396

Salam. Eger fayllarin bir qovluqda saxlanaraq ve yuklenendede qovluq/fayladi.fayltipi kimi pramoy browserde yazaraq yuklenilmesini isteyirsinizse bu mumkun deyil. Ola biler ama eyni adli fayl olanda problem yaranacaq. Sizin dediyiniz kimi fayllari bir qovluqda saxlayib lakin yuklenende faylin heqiqi adi kimi yuklenmesi ucun mutleq fayli yukleyende yukle.php?fayl_id=$fayl_id bu wekilde yazib yuklenmelidi. Bunuda bele qura bilersiniz. Fayl servere yuklenende fayl qovluqda her hansi idle saxlanilsin. Sonra faylin idi.tipi, yani serverin qovlugundaki adi ve faylin esl adi mysql bazaya insert olunsun. Istifadeci fayli yukleyende ise fayl bazadaki adi ile kew qovluguna copy olunsun ve istifadeci kew qovlugu/faylin esl adi.faylin tipi linkine yonlendirilsin ordan yuklesin fayli. Kew qovlugundan da fayl teyin etdiyiniz vaxtdan sonra silinsin.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(12:58, 10/03/2012 ) #10404

Salam. Dediyiniz məsələni həll etmək olar. Amma uzun məsələdir, ondansa daha optimal yollar seçin.
Siz deyən məsələni
1. Apache .htaccess faylında müvafiq sətirlər əlavə etməklə elə etmək olar ki, sayt.com/userid/fileid/fayladi müraciətini edəndə apache onu sayt.com?uid=userid&fid=fileid&fname=fayladi kimi başa düşsün. Bunu etmək çətin deyil. Beləliklə fayla ulaşım təmin oldundu url-dəki FİD dəyişəni vasitəsilə.
2. Sonrakı mərhələ isə faylı yükləməyə təqdim edərkən id ilə yox fayl adı ilə təqdim etməkdir. Bu isə serverə əlavə güc salan prosesdir. Yükləmə prosesində file_get_contents(“id.tip”) verib daha sonra onu header-i faylin tipinə uyğun olan bir fayl şəklində echo vermək lazımdır. Bu zaman user faylın_adı.faylın_tipi kimi bir fayl yükləmiş olacaq.
Beləliklə bircə adi fayl yükləmə işinə görə bu qədər əziyyət çəkmiş olacaqsınız.
Mən sadəcə prosesi təsvir elədim, müvafiq kodları google-layıb tapmaq asandır. (Əsas həlledici olan .htaccess-ə yazacağınız apache kodudur.)

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(20:04, 10/03/2012 ) #10429

Amma indi fikirləşirəm ki, belə serveri çox məşğul edəcəm, həm də səhv eləmirəmsə bu zaman download resume etmək olmayacaq.Bəs əgər mən hər user və hər userin hər faylı üçün ayrıda direktoriya açmış olsam, sonra gələcəkdə userlərin sayı 2 min, hərəsinin də 100 faylı və yaxud bundan artıq olsa bu qədər direktoriyalarla heç bir problem olmayacaq ?

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

Software Developer cavab verdi - Kripto odəmə qəbulu, xarici musterilerden (1 saat əvvəl)

Cənab cavab verdi - Azərbaycandakı supermarket kassalarında işlədilən proqram (3 gün əvvəl)

E. Hacı cavab verdi - Proqramlaşdırma - fəlsəfə (4 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (5 gün əvvəl)

Cənab cavab verdi - kurs diplomu ilə işləyə bilərəm? (6 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (9 gün əvvəl)

E. Hacı cavab verdi - Proqramlaşdırma - fəlsəfə (9 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (9 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (10 gün əvvəl)

E. Hacı cavab verdi - Proqramlaşdırma - fəlsəfə (10 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (12 gün əvvəl)

Aysu2009 cavab verdi - Azərbaycan əsgər mahnısının sözlərini ingilis dilinə tərcümə etmək (12 gün əvvəl)

Aysu2009 cavab verdi - Atestat almaq üçün ne etmeliyem? (12 gün əvvəl)

Aysu2009 cavab verdi - Azərbaycan əsgər mahnısının sözlərini ingilis dilinə tərcümə etmək (12 gün əvvəl)

Software Developer cavab verdi - Xamaya başqa nə deyirlər? 6 hərflidir (17 gün əvvəl)

Software Developer - 615 xal

E. Hacı - 608 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23296 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2024