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: 3760
  • 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: 23212
  • 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 1082 korisnika na forumu :: 128 registrovanih, 14 sakrivenih i 940 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 15694 - dana 01 Feb 2026 12:23

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 015, 100jan, A.R.Chafee.Jr., AleksSE, aleph_one, Alesalebg85, alkatraz080, Apis Dr, aramis s, AS, asdfjklc, avijacija, blankspace, blatruc82, bojank, Bojcca, bolimejoli, bounty hunters, BrcakRS, BSD, Buzdovan, C-Gun, celik, cenejac111, Centauro, Chainsaw, coaa, cojapop, cuvarkuca, cvrle312, cyprus, Darth Malak, deks, Djuza, dolinalima, DonRumataEstorski, Draganeli, draganl, drimer, Dukelander, dulleo, Dungorth, dushan, Dusko_Dugousko, Dzoni2412, ekozelj, eulereix, EXIT78, FOX, gale48, Giro77, glados, Gonga, GUARIN, HrcAk47, ikan, Insan, istina, ivan1973, jalos, Jan, knutveliki, Koridor, krasta, kreker, ladro, Laluvr, Lavočkin, Lep1na, Levi, Lošmi, LUDI, MarijaC84, marsi, MaRtInsrbija1993, mercedesamg, Mig 29, miki kv, MiljanXD, mino bosanac, monomah, MrG, narandzasti, nenad81, Neutral-M, nick79, nobutado, Nomica, NorthWind, Oscar, OtacMakarije, Pale2025, Pekman, pisac12, Podljub, Prečanin30, proka89, rikirubio, Robin, ruma, S-lash, sap, Sin Boskic, Smiljkovich, sombrero, Sonic, SpaDej, stagezin, styg, The Boss, Toper, tuf, tuja, tvlada, ujke, Vanderx, Vatreni Zmaj, Veless, vensla, vlado_pg, VojaeZ, vzd1389, Vzor50, Wehicle, yufighter, zdrebac, Zoran1959, 79693