Autor Zpráva
joj
Profil *
Ahojte. Mám databázu z ktorej chcem vypísať posledných 10 záznamov podľa dátumu vloženia alebo id. Problém je s tým, že nevypíše dnes vložené záznamy. Keď nedám podmienky ako order by a limit, tak všetko vypíše. Kde je problém?

kód
<?
...spojenie s databazou...
$vysledok=mysql_query("select * from katalog order by datum desc limit 10");
$zaznam=mysql_fetch_array($vysledok);
while ($zaznam=MySQL_Fetch_Array ($vysledok))

echo '<div class="ostatne_odkazy">
<span><b>Názov firmy, stránky:</b> </span><span><a href="">'.$zaznam["nazov"]."</span></a><br />
<span><b>Zameranie:</b> </span><span>".$zaznam["zameranie"]."</span><br />
<span><b>Webové sídlo:</b> </span><span><a href=\"http://{$zaznam["url"]}\" target=\"_new\">".$zaznam["url"]."</a></span><br />
<span><b>Dátum pridania:</b> </span>".$zaznam["datum"]."</span><br /></div>\n";
mysql_close();
?>
joj
Profil *
Ešte jeden postreh. Keď dám limit 10 vypíše len 9 položiek.
joj
Profil *
Nevypisuje to dnešné záznamy s decembrovým dátumom. Prečo? S novembrovým je to OK. Ďakujem za rady.
Falcon16
Profil
nie som isty ci to bude fungovat, ale skus dat limit 0,10. Za skusku nic nedas
kaifman
Profil
co udelat "select * from katalog" ?
sou tam ty data vubec?
napis nam ty dotazy ktere nefungujou ....
joj
Profil *
Stále to nevypíše údaje s dnešným decembrovým dátumom. S novembrovými je to OK.
kaifman
Profil
tak tam ty data nejsou

zkus

select datum, count(*) pocetZaznamu from katalog group by datum
joj
Profil *
ked dám select * from katalog tak to vypíše všetky aj tie decembrové, ale ako náhle dám order by datum alebo id, tak s dnešným decembrovým dátumom to údaje nevypíše. Aj v databáze je to OK. Skúsil som zmeniť dátum z 1.12. na 30.11. a išlo to ok. Do databázy sa zapisuje dátum v tvare date a príkazom NOW v PHP, takže tvar je 2005-12-01....
kaifman
Profil
btw: nejdriv je tam musis dat aby tam byly :-D
kaifman
Profil
jezis tak sem hod ten dotaz kterej ti nejde, jak ti mame asi pomoct ?
joj
Profil *
takto to vypíše dátum vrátane toho decembrového:
$vysledok=mysql_query("select datum from katalog");
$zaznam=mysql_fetch_array($vysledok);

while ($zaznam=MySQL_Fetch_Array ($vysledok))

echo '<div class="ostatne_odkazy">
<span><b>Názov firmy, stránky:</b> </span><span><a href="">'.$zaznam["nazov"]."</span></a><br />
<span><b>Zameranie:</b> </span><span>".$zaznam["zameranie"]."</span><br />
<span><b>Webové sídlo:</b> </span><span><a href=\"http://{$zaznam["url"]}\" target=\"_new\">".$zaznam["url"]."</a></span><br />
<span><b>Dátum pridania:</b> </span>".$zaznam["datum"]."</span><br /></div>\n";
mysql_close();

Ako náhle dám zoradiť ("select datum from katalog order by datum desc") tak to nevypíše ten decembrový dátum. Novembrové áno. viď odkaz
joj
Profil *
Neviete akým iným spôsobom by som vypísal posledných 10 záznamov z databázy? Ďakujem.
Kajman_
Profil *
Ono zmíněné "order by datum desc limit 10" by mělo stačit. Případně to srovnat podle jiného sloupce (id).
joj
Profil *
No pozerám ešte raz do phpmyadmina a keď prechádzam tabuľku je tam "ukázať záznamy 0-11 (celkovo 12). to je asi problém, ako to odstrániť?
joj
Profil *
No databáza vypisuje o jeden záznam menej, takže posledný vypíšem len po vložení ďalšieho záznamu. Ak by niekto vedel ako to napraviť, tak budem veľmi vďačný. Alebo musím prepísať tabuľku.
neznaly
Profil *
tak a tento problém mám stále. Neviete niekto poradiť. Dosť ma to štve, keď sa mi to vypisuje z databázy o jeden záznam menej. Ďakujem.
neznaly
Profil *
sorry, ale trochu mením nicky :-(
Kajman_
Profil *
Stačí smazat nesmyslný řádek
$zaznam=mysql_fetch_array($vysledok);
který vycucne první řádek bez jeho zpracování.
neznalý
Profil *
Kajman_ skladám ti poklonu. Už je to OK. Ešte raz díky.
Toto téma je uzamčeno. Odpověď nelze zaslat.