Napredni overlib i sortiranje

1

Napredni overlib i sortiranje

offline
  • m4rk0  Male
  • Administrator
  • Administrator tech foruma
  • Marko Vasić
  • Gladijator - Maximus Decimus Meridius
  • Pridružio: 14 Jan 2005
  • Poruke: 15766
  • Gde živiš: Majur (Colosseum)

Ne znam dal je ovo za php, dal za web aplikacije ili web dizajn forum (posto objedinjuje temtiku iz sve tri oblasti), al otvorio sam temu u ovom forumu.

Evo da quotujem samog sebe da se ne bih ponavljao:


m4rk0 ::Evo sta mi je prvo na to do listi:

1. Da ubacim overlib-ove u kojima ce se automatski generisati sledece: velicina "oznacenog" fajla, broj downloada, datum postavljanja i datum poslednjeg downloada.
2. Da ubacim skriptu koja ce omoguciti da se izvrsi rasporedjivanje tutorijala po sledecim principima: po velicini, po broju downloada, po datumu uploada, po datumu poslednjeg downloada...



Ima li neko ideju kako ovo da odradim ?



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 01 Mar 2005
  • Poruke: 549
  • Gde živiš: Apatin

Ovako za veličinu fajla možeš da prikažeš:
$velicina1 = filesize('putanja/imefajla.rar']); $kb = 1024; $velicina2 = $velicina1 / $kb; $velicina = round ($velicina2);

kasnije samo:
echo $velicina.' Kb';

broj downloada i datum poslednjeg download moraš da povećavaš svaki put kada neko klikne (moj savet je da odmah u odmah u tome fajlu sakriješ i putanju do fajla)

datum postavljanja moraš da upišeš u bazu kada uploaduješ fajl (ukoliko ga uploaduješ kroz browser) daj malo više informacija o ovome kako postavljaš tutorijale

prvo moraš da središ sve u prvom koraku da bi kasnije mogao da ih rasporedjuješ...

I još nešto ukoliko ovo sve sam planirš da modifikuješ u PHP-Nuke bolje onda instaliraj neku skriptu za download koja će ti sve ovo sama odraditi.



offline
  • m4rk0  Male
  • Administrator
  • Administrator tech foruma
  • Marko Vasić
  • Gladijator - Maximus Decimus Meridius
  • Pridružio: 14 Jan 2005
  • Poruke: 15766
  • Gde živiš: Majur (Colosseum)

Citat:I još nešto ukoliko ovo sve sam planirš da modifikuješ u PHP-Nuke bolje onda instaliraj neku skriptu za download koja će ti sve ovo sama odraditi.

Upravo to bi bilo najbolje, ali nikako da pronadjem taj modul za nuke.

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3745
  • Gde živiš: 127.0.0.1

Mozes sve to i sam da uradis, napravi jednu tabelu u MySQL bazi (ID, ime fajla, putanja do fajla, velicina, datum postavljanja, broj downloada, datum poslednjeg downloada). Napravi jednu PHP formu koja ce da ti ovo upisuje u bazu (i nesto sama da sracuna - id, velicinu, datum postavljanja, i nesto da setuje na 0/nikad - broj downloada, datum poslednjeg downloada).

Onda imas jedan mali PHP fajl koji sluzi za dowload, recimo download.php?id=id_fajla, koji ima par linija koda (izvlaci putanju do fajla, dodaje 1 na broj downloada i setuje datum poslednjeg downloada) i sledeci kod za download :
<? header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="$putanja_do_fajla"'); ?>

Overlib na prednjoj strani ces veoma lako da uradis, ako vec imas sve ove podatke u bazi Smile

Probaj ovako, ako zapne negde, tu sam Very Happy

offline
  • igor86  Male
  • Stručni saradnik
    Web programiranje
  • Pridružio: 24 Maj 2006
  • Poruke: 1633

Mislim da bi trebao malo pokazati dokle si dogurao?

offline
  • m4rk0  Male
  • Administrator
  • Administrator tech foruma
  • Marko Vasić
  • Gladijator - Maximus Decimus Meridius
  • Pridružio: 14 Jan 2005
  • Poruke: 15766
  • Gde živiš: Majur (Colosseum)

Ipak sam odlucio da ne stavljam te stvari tipa: datum poslednjeg downloada/uploada itd. Samo cu staviti da mi racuna velicinu fajla.
BTW:

$velicina1 = filesize('putanja/imefajla.rar']);

Posto imam mnogo fajlova za koje treba da racunam njihovu velicinu, kako da stavim sve te putanje do fajlova (u ovom gore code-u je valjda prikazan primer za samo jedan faj)

Dopuna: 10 Jan 2007 17:47

Tj jel to ide po ovom principu ?

$velicina1 = filesize('http://www.tutoriali.org/Tutorials/Grafika/3DS%20MAX%207.rar']);
$kb = 1024;
$velicina2 = $velicina1 / $kb;
$velicina = round ($velicina2);

$velicina2 = filesize('http://www.tutoriali.org/Tutorials/Grafika/3D%20Studio%20MAX%203%20Do%20kraja.rar']);
$kb = 1024;
$velicina3 = $velicina2 / $kb;
$velicina = round ($velicina3);

$velicina3 = filesize('http://www.tutoriali.org/Tutorials/Grafika/AutoCAD%202007.rar']);
$kb = 1024;
$velicina4 = $velicina3 / $kb;
$velicina = round ($velicina4);

itd..

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23211
  • Gde živiš: Niš

...i na kraju ces da naucis PHP Very Happy

offline
  • igor86  Male
  • Stručni saradnik
    Web programiranje
  • Pridružio: 24 Maj 2006
  • Poruke: 1633

<? function get_filesize ($file) { $dsize=@filesize($file);             if (strlen($dsize) <= 9 && strlen($dsize) >= 7) {                                $dsize = number_format($dsize / 1048576,1);                 return "$dsize MB";             } elseif (strlen($dsize) >= 10) {                 $dsize = number_format($dsize / 1073741824,1);                 return "$dsize GB";             } else {                 $dsize = number_format($dsize / 1024,1);                 return "$dsize KB";             } } function directory($result) {          $handle=opendir(".");      while ($file = readdir($handle)) {      if ($file == "." || $file == "..") { } else {  print "<a class="ulink" href=$file>$file</a><br>n"; }            }      closedir($handle); return $result; } ?>

Druga funkcija je za dobijanje svih fajlova unutar jednog direktorijuma. (ako ti zatreba)
Inače najbolje bi ti bilo da napraviš dvije baze, jednu sa kategorijama, a jednu sa imenima fajlova, koje ćeš poslije lako moći uređivati.
Tako bih bar ja radio.
(Onda možeš sve gore navedene stvari uraditi kao i neku pretragu)

offline
  • m4rk0  Male
  • Administrator
  • Administrator tech foruma
  • Marko Vasić
  • Gladijator - Maximus Decimus Meridius
  • Pridružio: 14 Jan 2005
  • Poruke: 15766
  • Gde živiš: Majur (Colosseum)

@igor86

Posto je u pitanju phpnuke, taj code sto si mi dao bih trebao da inkludujem u blok (koji je zasluzan za generisanje naziva svih tutoriala na mojoj index stranici). Jel tako ?

BTW: Evo kako sada izgleda code od tog bloka:

<?php if (eregi("block-tutorijaliSerb.php",$PHP_SELF)) { Header("Location: index.php"); die(); } ob_start(); include("spisakSerb.php"); $output = ob_get_contents(); ob_end_clean(); $content = $output; ?>

BTW: spisakSerb.php je fajl u kome sam stavio spisak svih tutoriala.

Jel ok ako ovaj gore code sto si napisao, sacuvam kao na pr "filesize.php" i kao takvog ga inkludujem u ovaj moj code ?

offline
  • igor86  Male
  • Stručni saradnik
    Web programiranje
  • Pridružio: 24 Maj 2006
  • Poruke: 1633

Pa najbolje bi bilo da while petljom uzima fajl po fajl iz tog spisakSerb.php i za svaki generise velicinu fajla. (Ali to je staticni podatak, tako da i nevidim potrebu da se svaki put generise) Usput mozes uraditi to sto si napisao.

Ko je trenutno na forumu
 

Ukupno su 1235 korisnika na forumu :: 50 registrovanih, 5 sakrivenih i 1180 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: amaterSRB, Asparagus, Atomski čoban, bladesu, BlekMen, bojanM84, BORUTUS, Brana01, comi_pfc, DeerHunter, dencorr, Dimitrise93, dragoljub11987, FileFinder, Griffon vulture, GveX, havoc995, Ilija Cvorovic, Karla, kolle.the.kid, kovinacc, kuntalo, ladro, milan.vukovic, MILO-VAN, Milometer, milutin134, misa1xx, Mixelotti, NoOneEver Dreams, pacika, panonski mornar, pein, procesor, Rakenica, rodoljub, Sir Budimir, Sirius, slonic_tonic, solic, Srle993, tubular, vaso1, vathra, virked, voja64, yrraf, YU-UKI, 125, 79693