Autor | Zpráva | ||
---|---|---|---|
qweqwe Profil * |
#1 · Zasláno: 19. 10. 2010, 22:40:51
Zdravim mam dotaz.
Potrebuju poradit jak radit urcity data. Z DB pomoci while vypisu urcity data napr IP adresu na tu IP adresu se napojim a stahnu nejaky data, ty data budou pokazdy jiny a bude to cislo. Tohle cely se mne vypise v poradi razeny podle ID v db. Ale ja bych chtel aby se to radilo podle toho ziskanyho cisla a nvm jak to udelat. |
||
Keeehi Profil |
#2 · Zasláno: 19. 10. 2010, 22:45:20
v dotazu použít
SELECT … … … ORDER BY cislo |
||
qweqwe Profil * |
#3 · Zasláno: 20. 10. 2010, 07:01:09
ale ony prave nejsou v db ty ziskam az vypsanim dat z db
|
||
Keeehi Profil |
#4 · Zasláno: 20. 10. 2010, 07:22:12 · Upravil/a: Keeehi
qweqwe:
Uložte si IP adresy do pole, pak ten obsah stáhněte, přidejte do pole k IP a a nakonec použijte nějakou z funkcí na seřazení pole (záleží na návrhu). Pokud tedy výsledkem bude asociativní pole ip => cislo, tak bych použil asort <?php $data = array("12.214.45.157" => 64631654, "95.65.45.198" => 654321, "84.58.12.1" => 676543218, "154.154.2.96" => 468462); asort($data); foreach ($data as $key => $val) { echo "$key = $val\n"; } ?> |
||
qweqwe Profil * |
dik za odpoved jeste potrebuju trochu pomoct
1. jak naplnim z DB pole nejak jsem na to neprisel (dosahl jsem jen toho ze jsem ziskal posledni hodnotu) 2. kdyz bych tam chtel z te DB zahrnout napr 2 vysledky a dve ziskany hodnoty? (ted tam je brana jedna hodnota z DB a jedna ziskana) Moderátor panther: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
|
||
panther Profil |
#6 · Zasláno: 20. 10. 2010, 17:03:01
qweqwe:
„dosahl jsem jen toho ze jsem ziskal posledni hodnotu“ cyklus while, tedy nějak takto: while ($data = mysql_fetch_assoc($result)) { var_dump($data); //dumpne každý jednotlivý řádek } 2. dotaz jsem nepochopil. |
||
qweqwe Profil * |
no nic napisu sem primo ukazku:
while($row = mysql_fetch_assoc($sql)){ //data z db $a = $row["a"]; $b = $row["b"]; //data ktery ziskam pomoci dat z db $c = X; //nejaky cislo $d = X; //nejaky cislo //pokud ted vypisu ty promenny tak to bude podle poradi v db a ja chcu aby se mne to vypsalo serazeny od nejvetsiho cisla ktery bude v promenne $c. } Moderátor panther: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na ). Moderátor panther: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
|
||
panther Profil |
#8 · Zasláno: 20. 10. 2010, 17:32:38
qweqwe:
proměnné mezi sebou neseřadíš, potřebuješ mít ty 4 hodnoty v poli a to pole seřadit. |
||
qweqwe Profil * |
#9 · Zasláno: 20. 10. 2010, 17:43:50
no to je mi jasny, ale nevim jak je do toho pole dostanu
|
||
panther Profil |
#10 · Zasláno: 20. 10. 2010, 17:48:00
qweqwe:
$data = array(); while($row = mysql_fetch_assoc($sql)){ //data z db $data['a'] = $row["a"]; $data['b'] = $row["b"]; //data ktery ziskam pomoci dat z db $data['c'] = X; //nejaky cislo $data['d'] = X; //nejaky cislo rsort ($data); var_dump($data); //pokud ted vypisu ty promenny tak to bude podle poradi v db a ja chcu aby se mne to vypsalo serazeny od nejvetsiho cisla ktery bude v promenne $c. |
||
Keeehi Profil |
#11 · Zasláno: 20. 10. 2010, 17:50:01
qweqwe:
Mám problém s tím tvým kódem. Co je v databázi ve sloupci a a co ve sloupci b? Jestli jsou to obě ip adresy, proč nejsou v jednom sloupci ve dvou záznamech. Potřebuji tedy vlastně vysvětlit, jak ta databáze vypadá. $c = X; //nejaky cislo $d = X; //nejaky cislo $c = ziskej_cislo_z_ip($a); $d = ziskej_cislo_z_ip($b); |
||
qweqwe Profil * |
#12 · Zasláno: 20. 10. 2010, 17:51:35
respektive $a je ip $b je port, pak se napojim na tuto IP z ni vytahnu data a ty budou v promenny $c a $d obe hodnoty budou cislo
|
||
Keeehi Profil |
#13 · Zasláno: 20. 10. 2010, 17:56:44 · Upravil/a: Keeehi
qweqwe:
Takže k jedné IP budou 2 čísla? Takže výpis bude vypadat takto: 156.1.5.2 - 65496 156.1.5.2 - 89458 45.487.45.5 - 104658 … |
||
qweqwe Profil * |
#14 · Zasláno: 20. 10. 2010, 18:00:43
no v podstate jo
|
||
Keeehi Profil |
#15 · Zasláno: 20. 10. 2010, 18:11:17
<?php while($row = mysql_fetch_assoc($sql)){ $a = $row["a"]; $b = $row["b"]; $c = ziskej_cislo_z_ip($a:$b); $d = ziskej_cislo_z_ip($a:$b); $data[]=array($a,$c); $data[]=array($a,$d); } function cmp($a, $b) { if ($a[1] == $b[1]) { return 0; } return ($a[1] < $b[1]) ? -1 : 1; } usort($data, "cmp"); foreach ($data as $value) { echo "IP: $value[0] - $value[1]<br>\n"; } ?> |
||
qweqwe Profil * |
#16 · Zasláno: 20. 10. 2010, 19:20:15
dik udelal jsem to trochu jinak, ale hodne mne tam pomohla jedna cast :)
|
||
Časová prodleva: 13 let
|
0