Stránka 1 z 1
Problém s cykly - prosím rychle :-)
Napsal: 09 pro 2012 11:21
od CrazyC0de
Zdravím ,, mám problém s cykly ...
Mám aplikaci ve které vypisuji uživateke(v žebříčku),
Vypisuji je podle bodů a potřebuji k nim i umístění.
Umístění má fungovat tak že vygeneruje čísla od 1 až do počtu nalezených uživatelů a pak tyto čísla přiřadí do tabulky(<td>$cislo</td>)...
Tady je kod , snad mi pomůžete :
Kód: Vybrat vše
<?php
$seber = "SELECT * FROM users ORDER BY body ASC";
$seber = mysql_query($seber);
$pocet = mysql_num_rows($seber);
for($c=1; $c<4;$c++){
while($while2 = mysql_fetch_array($seber))
{
$name = $while2["name"];
$email = $while2["email"];
$body = $while2["body"];
echo "<tr><td>$name</td><td>$email</td><td>$body</td><td>$c</td></tr>";
}
echo "dsfdsf</td></tr>";
}
?>
Re: Problém s cykly - prosím rychle :-)
Napsal: 09 pro 2012 14:07
od mmmartin
Nechám stranou název, který o obsahu dotazu neříká vůbec nic. On ale ani obsah příspěvku neříká nic o tom, co je špatně. Informace o tom, jak má umístění fungovat (?) je sice dobrá, chybí ale informace o tom, v čem spočívá tvůj problém s cykly. Pokud žádáš, aby ti někdo napsal kód, řekni to rovnou, pokud stačí, když ti někdo zkontroluje tvůj kód a případně v něm odhalil chybu/chyby, bylo by dobré zmínit, kde se kód zasekne, případně zda se vůbec rozjede.
Re: Problém s cykly - prosím rychle :-)
Napsal: 09 pro 2012 14:36
od CrazyC0de
Nečekám hledání chyb,, čekám spíše vysvětlení nebo kod jak to má fungovat :-) ,,,
Omlouvám se, kod by měl fungovat následovně :
Vypíše všechny účty do žebříčku, podle bodů - je to tabulka kde je email,jméno,body,umístění, a v tom umístění spočívá problém, potřebuji číslo od 1 až do počtu účtů...
Tedy třeba tabulka :
Jméno - Email - body - umisteni
Adam -
adam@email.cz - 33 - 1
a hráč pod adamem bude mít umístění dva :-)
doufám že jsem to vysvětlil lépe :-) ...
--- Doplnění předchozího příspěvku (09 Pro 2012 14:41) ---
a to číslo se bude generovat whilem,,, jenže jsou to dva cykly v sobě a když to generuji tak se jeden uživatel generuje 3x, ten další taky atd...
Re: Problém s cykly - prosím rychle :-)
Napsal: 09 pro 2012 19:45
od CZechBoY
Kód: Vybrat vše
<?php
$sql = "SELECT * FROM users ORDER BY body DESC";
$query = mysql_query($sql);
$i = 1;
while($row = mysql_fetch_array($query))
{
echo "<tr><td>".$row['name']."</td><td>".$row['email']."</td><td>".$row['body']."</td><td>".($i++)."</td></tr>";
}
echo "dsfdsf</td></tr>";
}
?>
v tom sql dotazu se to má řadit podle bodů sestupně ne? nejvíc bodů -> první místo
Re: Problém s cykly - prosím rychle :-)
Napsal: 09 pro 2012 20:04
od CrazyC0de
ano
--- Doplnění předchozího příspěvku (09 Pro 2012 20:12) ---
Díky CZechBoY, velice mi to pomohlo, a ještě bych se chtěl zeptat , jak to funguje ? nevidím tam nikde while($i > $neco) ,, vidím pouze $i = 1; a při vypisování ($i++),, jak to funguje ?
A ještě jednou díky
Re: Problém s cykly - prosím rychle :-)
Napsal: 10 pro 2012 00:15
od CZechBoY
mysql_fetch_array vrací pole toho řádku, nebo false když došel na konec výpisu - toho se využije a porovnává se návratová hodnota ve whilu
je to vlastně stejné jako while(($row=mysql_fetch_array($query)) !== false){..}
nevím proč uvádíš while($i > $neco), když to v zadání není...
Re: Problém s cykly - prosím rychle :-)
Napsal: 10 pro 2012 13:06
od CrazyC0de
Z toho jsem moc nepochopil,, zajimá mě jak funguje to vypisování,, máš tam jenom to ($i++) a před tím to $i = 1;
Pochopil jsem to správně ? Mám na to tuhle teorii , stroj začne počítat od čísla zadaného v proměnné $i ,, a při každém výpisu k ní přičte jedničku tedy i++ ,,, opravdu nevím ,, oprav mě ,, pokud jsem to řekl špatně ...
A předem se omlouvám za chyby :-)
Re: Problém s cykly - prosím rychle :-)
Napsal: 10 pro 2012 13:16
od CZechBoY
no jasně, $i++ = $i = $i + 1 => inkrementace, opačná operace je dekrementace $i--
na začátk upřiřadim počáteční hodnotu $i=1 (chci vypisovat od jedničky)
jelikož jsem tam dal $i++ a ne ++$i tak se inkrementace provede až po provedení toho kroku (vypsání nějakýho textu)
Re: Problém s cykly - prosím rychle :-)
Napsal: 10 pro 2012 15:00
od CrazyC0de
děkuji,, jsi moc hodný :-) ,, opravdu jsi mi pomohl,,, takovéto rádce mohu jen ocenit :-)