Autor | Zpráva | ||
---|---|---|---|
amorekj Profil |
#1 · Zasláno: 10. 1. 2012, 15:45:45
Dobrý den,
mám tu problém s výpisem z databáze. Nepíše to nikde žádnou chybu. Problém je v tom, že tam kde mám jeden příspěvek na vypsání, nevypíše nic a tam, kde mám 2 příspěvky, vypíše se pouze ten druhý. Děkuji za Vaše rady a posílám kód v oblasti, kde to dělá zmíněné chyby. <?php error_reporting(E_all); require "db.php"; $vysledek = mysql_query ("SELECT * FROM `forum` JOIN `reg` ON `reg`.`id` = `forum`.`id-clena` WHERE `predmet-adresa` = '". mysql_real_escape_string($_GET['str']) ."' ORDER BY `forum`.`id`") ; if(!$vysledek): echo mysql_error(); endif; $zaznam = mysql_fetch_array($vysledek ); if ($_GET['str'] == $zaznam['predmet-adresa']){ if ($zaznam['pro-vedeni'] == 1){ if(isset($_SESSION['pozice']) and $_SESSION['pozice'] == 1){ ?> <h1>Téma: <?php echo $zaznam['predmet']; ?> (pro členy výboru)</h1> <table> <?php while ($zaznam = mysql_fetch_array($vysledek )){ ?> <tr><th><a href="/clen/<? echo $zaznam['id-clena']; ?>" title="<? echo $zaznam['jmeno']; ?> <? echo $zaznam['prijmeni']; ?>"><? echo $zaznam['jmeno']; ?> <? echo $zaznam['prijmeni']; ?></a></th><th><? echo $zaznam['cas-odeslani']; ?></th></tr> <tr><td colspan="2"><? echo $zaznam['zprava']; ?></td></tr> <?php } ?> </table> <?php } else { ?> <h1>Téma není dostupné</h1> <p>Vyberte si prosím jiné téma, na které chcete reagovat.</p> <p>Toto téma je <strong>pouze pro členy výboru</strong>.</p> <?php }} else { ?> <h1>Téma: <?php echo $zaznam['predmet']; ?></h1> <table> <?php while ($zaznam = mysql_fetch_array($vysledek )){ ?> <tr><th><a href="/clen/<? echo $zaznam['id-clena']; ?>" title="<? echo $zaznam['jmeno']; ?> <? echo $zaznam['prijmeni']; ?>"><? echo $zaznam['jmeno']; ?> <? echo $zaznam['prijmeni']; ?></a></th><th><? echo $zaznam['cas-odeslani']; ?></th></tr> <tr><td colspan="2"><? echo $zaznam['zprava']; ?></td></tr> <?php } ?> </table> <?php }} else { ?> <h1>Téma neexistuje</h1> <p>Zadejte prosím <strong>platnou adresu</strong> Vašeho zvoleného tématu.</p> <p>Děkujeme</p> <table> <tr><th>Jméno Příjmení</th><th>Čas odeslání</th></tr> <tr><td colspan="2">Zpráva</td></tr> </table> <?php } ?> |
||
panther Profil |
amorekj:
máš chybu na 6. řádku, kde si vezmeš pouze jeden řádek. Musíš ten výpis dát do cyklu, třeba while .
Možná máš chybu i jinde, ale ten tvůj zápis je strašně nepřehledný, probírat se jím nechci. |
||
amorekj Profil |
#3 · Zasláno: 10. 1. 2012, 15:52:30
to mám dál, ten while ;) ono to vadí, když předtím mám to na 6. řádku? příp. čemu? Pokud se ti zápis nelíbí tak si ho zkus přepsat někam a dej do svého stylu. Každý to píše jinak a líp se ti bude zkoumat chyby "ve svém". Jinak moc dík ;)
|
||
panther Profil |
#4 · Zasláno: 10. 1. 2012, 15:55:16
amorekj:
„Pokud se ti zápis nelíbí tak si ho zkus přepsat někam a dej do svého stylu.“ přepisovat nic nebudu, na to nemám čas. Kde máš chybu hledat, jsem ti řekl. |
||
amorekj Profil |
#5 · Zasláno: 10. 1. 2012, 16:01:09
Ale nevím, jak to spravit. Zkoušel jsem tedy dát před to while, ale není rozdíl.. :(
|
||
Tori Profil |
#6 · Zasláno: 10. 1. 2012, 16:15:00
První volání mysql_fetch_array na ř.6 vrátí pole dat a posune ukazatel na další řádek výsledků. Proto všechna další volání mysql_fetch_* v cyklu čtou data až od druhého řádku. Jestli hledáte jen rychlou záplatu, tak lze použít po ř.6 mysql_data_seek.
|
||
Časová prodleva: 12 let
|
0