21. září bude sraz! Od 18.00 v restauraci Tradice v Praze u Anděla
Autor Zpráva
soego
Profil
Dobrý den, potřeboval bych vypsat jen ty záznamy z databáze, které se vážou na jednotlivé měsíce. Takže když kliknu na odkaz vypiš leden, tak se vypíšou jen ty záznamy, které byly do databáze uloženy v lednu. Ostatní záznamy se vypisovat nebudou. Příklad:

if (isset($_GET['page']) && ($_GET['page'] == 'vypis_leden')){
  $dotaz = mysql_query("SELECT * FROM zaznamy WHERE datum = xxxx-01-xx"); //kde 01 je leden - takto se mi to uloží do databáze
  while ($row31 = mysql_fetch_array($dotaz)){
    echo $row31['datum'].'&nbsp;&nbsp;&nbsp;&nbsp;'.$row31['popis'].'&nbsp;&nbsp;&nbsp;&nbsp;'.$row31['anotace'].'<br />';
  }
}


Jak by to mělo vypadat za tou podmínkou WHERE ? Děkuji všem.

Moderátor nightfish: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
nightfish
Profil
SELECT * FROM zaznamy WHERE MONTH(`datum`) = 1

akorát se pro vyhledání nepoužije index - pokud by to bylo moc pomalé, stálo by za to přidat do tabulky sloupec s měsícem, vytvořit na něm index a hledat pomocí něj
soego
Profil
[#2] nightfish

Napsal jsem to podle Vašeho návodu, ale bohužel se nezobrazí nic. Asi jsem to pochopil špatně.

if (isset($_GET['page']) && ($_GET['page'] == 'vypis_leden')){
  $dotaz = mysql_query("SELECT * FROM zaznamy WHERE MONTH ('datum') = 1");
  while ($row31 = mysql_fetch_array($dotaz)){
    echo $row31['datum'].'&nbsp;&nbsp;&nbsp;&nbsp;'.$row31['popis'].'&nbsp;&nbsp;&nbsp;&nbsp;'.$row31['anotace'].'<br />';
  }
}


Kde by mohla být chyba? Moc děkuji za pomoc

Moderátor nightfish: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
nightfish
Profil
soego:
Napsal jsem to podle Vašeho návodu, ale bohužel se nezobrazí nic.
opsal jste to špatně
doporučuji zaměřit pozornost na zpětné apostrofy okolo datum

mimochodem máme tu téma Databáze na webu, do kterého by se tento příspěvek hodil více
soego
Profil
Díky už to funguje.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0