Autor | Zpráva | ||
---|---|---|---|
Kokosak Profil * |
#1 · Zasláno: 6. 5. 2010, 21:29:24
při obyčejným nahrávání více záznamů z db používám tohle:
while ($data = mysql_fetch_array($sql, MYSQL_BOTH)){ (v $sql je sql dotaz) jenomže teď to potřebuju udělat složitějc. Potřebuju aby mi to vypisovalo čísla kalikrát to ciklus provedlo. No prostě něco takovíhleho: for ($i = 1; $i <= 4; ++$i) { echo $i;} jenomže do toho musím něják dostat ten sql dotaz. A ještě jedna otázka: Potřebuju aby u každýho druhýho řádku v tabulce byla jiná barva pozadí. To znamená že potřebuju při nahrávání u každýho druhýho řádku změnil background. Předem děkuji. |
||
aknerats Profil * |
#2 · Zasláno: 6. 5. 2010, 22:51:36
$c = 0; while(true) { $class = ($c%2==0)?'even':'odd'; neco; echo '<div class="'.$class.'">.....'; $c++; } |
||
Kokosak Profil * |
#3 · Zasláno: 6. 5. 2010, 22:57:39
Nejspíš sem nejvíc blbej, nevím co je even a odd. A hlavně, neudělá mi tohle nekonečnej cyklus?
|
||
aknerats Profil * |
jeeee :x
even = sudy, odd = lichy ano je to nekonecnej cyklus, do while si dej co potrebujes (coz, bys pochopil se spetkou snahy, kdyz o kus dal vidis prikaz "neco" a vubec cela vec jak jaksi "v pseudokodu") Moderátor Majkl578: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
|
||
Majkl578 Profil |
#5 · Zasláno: 6. 5. 2010, 23:02:15 · Upravil/a: Majkl578
for ($i = 1; $data = mysql_fetch_assoc($sql); $i++) { echo $i; } aknerats: ??? |
||
Kokosak Profil * |
#6 · Zasláno: 7. 5. 2010, 08:59:15
|
||
aknerats Profil * |
#7 · Zasláno: 7. 5. 2010, 13:01:39
No hlavne ze v tom naprosto srozumitelnym mas ty barveni sudejch a lichejch radku, ze jo.
Btw mam dojem ze ten for neni efektivni, protoze zjistuje dylku toho pole pri kazdym prubehu, co imo while nedela (a ty jsi tam ten while ve svym prikladu mel). No nic nechme to tak, slepice je vlastne taky ptak ;) |
||
Joker Profil |
#8 · Zasláno: 7. 5. 2010, 13:27:32
Kokosak:
Ono to může zůstat i ve while, jak to bylo na začátku: $i = 1; while ($data = mysql_fetch_array($sql, MYSQL_BOTH)){ $trida = (($i % 2) == 0) ? "sudy" : "lichy"; // číslo řádku je $i, řádku se nastaví class="$trida" a v CSS se udělají barvy pro třídy sudy a lichy ... $i++; } |
||
aknerats Profil * |
#9 · Zasláno: 7. 5. 2010, 14:55:35
^^ coz, je to, co jsem psal na zacatku
|
||
__construct Profil |
#10 · Zasláno: 7. 5. 2010, 14:59:49
nemusíš tam zbytočne strkať nejakú podmienku - použi toto
|
||
panther Profil |
#11 · Zasláno: 7. 5. 2010, 15:07:59
__construct:
„použi toto“ ...což nefunguje všude a proč do všeho zatahovat JS, který to bude fixovat, že? Přidání třídy je jednodušší, ničemu ta třída nepřekáží. Pokud bychom šli do důsledků, nemusí být dvě třídy, stačí jen jedna (třeba sudá, liché řádky mohou zůstat bez třídy). |
||
Joker Profil |
#12 · Zasláno: 7. 5. 2010, 15:29:41
aknerats:
„^^ coz, je to, co jsem psal na zacatku“ Až na to while(true) (a pojmenovat třídy „even“ a „odd“ zjevně taky nebyl nejlepší nápad, protože to Kokosak nepochopil) __construct: „nemusíš tam zbytočne strkať nejakú podmienku - použi toto“ Pokud to jde jednoduše řešit přidáním třídy na serveru, řešil bych to přidáním třídy. CSS nth-child má zatím moc malou podporu. |
||
__construct Profil |
#13 · Zasláno: 7. 5. 2010, 15:50:41
Joker:
„moc malou podporu“ Podporujú to všetky moderné (nie staršie ako 2 roky) prehliadače okrem I-Explorera .. |
||
panther Profil |
#14 · Zasláno: 7. 5. 2010, 15:51:41
__construct:
„okrem I-Explorera“ to je to podstatné. Ještě, žes to dodal :-) |
||
Joker Profil |
#15 · Zasláno: 7. 5. 2010, 16:10:14
__construct:
„Podporujú to všetky moderné (nie staršie ako 2 roky) prehliadače okrem I-Explorera“ Ano, kromě IE 6, 7, 8 a Firefoxu do 3.5 (to taky není starší než 2 roky). Takže podle aktuálních statistik (ČR) to nebude fungovat asi tak polovině návštěvníků. |
||
Alphard Profil |
#16 · Zasláno: 7. 5. 2010, 16:49:25
Kokosak:
Kdyby vám výše uvedené kódy nestačily, tak Nejčastější potíže s PHP (FAQ). |
||
Časová prodleva: 14 let
|
0