Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

funkcija za redjanje formata podataka

[es] :: PHP :: funkcija za redjanje formata podataka

[ Pregleda: 1485 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Biker
..:: Vrsac ::..

Član broj: 13915
Poruke: 83
91.143.219.*



Profil

icon funkcija za redjanje formata podataka24.04.2009. u 18:52 - pre 182 meseci
Tacnije treba mi ideja kako da formatiram tabelu koja se kreira dinamicki sa raznih vrsta izvornih podataka, a podaci su sledeci

veterinar 2.45 KB 1.87 KB
violeta 602.06 KB 2.55 MB
viorel 736.24 KB 2.99 MB
viorelpersa 94.50 MB 141.30 MB
visnic 22.93 MB 1.42 GB
vladaterza 239.54 KB 834.36 KB
voja 1.51 MB 1.14 MB
vrsacpo 5.67 MB 19.00 MB

E sad ja bi trebao da poredjam tu tabelu po protoku, normalno prvo ide GB ako ih ima pa MB, pa na kraju KB.
Ali sta da uradim da poredim te brojeve i da mogu da ponovo poredjam u tabeli po redu???
Neverujem da sam bio jasan ali pitajte, pojasnicu.
Mozda je pitanje za javascript, ali se u to nerazumem, ako jeste molim moderatora da premesti temu. Hvala.

Pozz
Iz supljeg u prazno!!!
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-2.sezampro.yu.



+33 Profil

icon Re: funkcija za redjanje formata podataka24.04.2009. u 19:44 - pre 182 meseci
Pa ne znam zašto ne bi bilo pitanje za PHP, osim ako te nisam dobro razumeo... Ti u stvari samo hoćeš da sortiraš tu tabelu, pre nego što je prikažeš. Čini mi se da je to najbolje odraditi uasort f-jom. Callback f-ja, koja se prosleđuje uasort-u, bi trebala da izgleda npr. ovako:
Code:

function cmp($a, $b)
{
   $jedinice = array('KB'=>1, 'MB'=>2, 'GB'=>3);

   $jedinica_a = substr($a['protok'], -2);
   $jedinica_b = substr($b['protok'], -2);
   
    if ($jedinica_a != $jedinica_b) {
         $vrednost_a =  $jedinice[$jedinica_a];   
         $vrednost_b =  $jedinice[$jedinica_b];   
    } 
    else {
         $vrednost_a = trim(substr($a['protok'], 0, -2));
         $vrednost_b = trim(substr($b['protok'], 0, -2));
    }
    
    if ($vrednost_a == $vrednost_b) {
        return 0;
    }
    return ($vrednost_a < $vrednost_b) ? -1 : 1;
}

Naravno, uasort-u ćeš kao prvi argument proslediti taj tvoj niz sa podacima, koji se verovatno dovlači iz baze. Samo sad ne znam zašto za svaki red imaš na dva mesta taj protok ...
 
Odgovor na temu

Biker
..:: Vrsac ::..

Član broj: 13915
Poruke: 83
91.143.219.*



Profil

icon Re: funkcija za redjanje formata podataka24.04.2009. u 22:01 - pre 182 meseci
Citat:
Nikola Poša:  Samo sad ne znam zašto za svaki red imaš na dva mesta taj protok ...

To je zato sto postoje dve kolone: upload i download.

Niz se kreira dinamicki, pola sa podacima iz jedne baze, pola iz druge pa se odstranjuju neki podaci...
Al sve u svemu mogu da to bacim u array pa da onda obradim funkcijom.

Koliko vidim na prvi pogled mislim da ovo moze da mi zavrsi posao.
Sad cu da se bacim na kodiranje pa javljam rezultat.

Hvala svakako
Iz supljeg u prazno!!!
 
Odgovor na temu

[es] :: PHP :: funkcija za redjanje formata podataka

[ Pregleda: 1485 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.