1 (edited by mantas 2010-03-30 14:31:53)

Topic: Sios dienos zinuciu skaiciavimas

labas gal zinote kodel neveikia

$snd = mysql_num_rows(mysql_query("SELECT something  * FROM knyga WHERE TO_DAYS(NOW() - TO_DAYS(date_col) <= 1"));

cia sios dienos pranesimu skaiciavimas :) Dekui iskart uz pagalba :)

Re: Sios dienos zinuciu skaiciavimas

kazkaip kreivokai atrodo tavo query :)

1. patarciau naudoti MySQL f-ja COUNT
2. ar tikrai tau reik tokiu magic dienos paskaiciavimu formules, kad galetum paimti einamos dienos postus?

querys manau galetu atrodyti pvz taip:

"SELECT COUNT(*) FROM knyga WHERE `date_col`>='".date('Y-m-d')."'";

Aisku konkretus uzduoties sprendimas priklauso nuo konkreciu aplinkybiu.

3 (edited by mantas 2010-03-30 15:06:28)

Re: Sios dienos zinuciu skaiciavimas

Dekui :) nu as dar pradedantysis tik tai nlb ir moku mysql duombaze.Na o paskaiciuot gal ir paprasciau buvo galima...dar mokytis ir mokytis... :)
bet siaip va idejau tavo query tai warning nemeta bet nieko neatvaizduoja... :) date_col`>='".date('Y-m-d')."'" cia tarp tu viengubu kabuciu reikia irasyti 1 ar nea beje? :)

Re: Sios dienos zinuciu skaiciavimas

Pradžiai reikia pasidomėti, kaip traukiami duomenys iš MySQL duomenų bazės.

Toliau rekomenduoju:
a) nerašyti visko į vietą eilutę, nes neina suprast;
b) po užklausos (query) patikrink ar nebuvo klaidos, ir tik tuo atveju jeigu nebuvo trauk ir naudok rezultatus;
c) pasidomėk, kaip MySQL aprašoma dabartinė diena/data, realiai nereikia nieko klijuoti/perdavinėti iš PHP;
d) kad nesipainiotum naudok viengubas kabutes MySQL užklausos STRING tipo elementams, o dvigubas PHP sctring tipo elementams (-; tada niekas nesipainios;

5 (edited by mantas 2010-03-30 15:38:31)

Re: Sios dienos zinuciu skaiciavimas

mhm o kur butu galima rasti tos info ? :) as turiu 3 mysql knygas parsisiuntes... :) viena labai aiski ir suprantama... apie duomenu istraukima irasyma ir trynima.. :) kitos dvi labai sunkiai suprantamai parasytos.. :)

Re: Sios dienos zinuciu skaiciavimas

Reikia spręsti pagal savo lygį. Tos informacijos yra pilnas internetas, pradedant intro / tutorials baigiant advanced performance tuning.

Pradžia gali pabandyti čia pasiskaityti:
http://www.w3schools.com/PHP/php_mysql_intro.asp
http://lt2.php.net/manual/en/book.mysql.php
http://lt2.php.net/manual/en/mysql.examples-basic.php

Re: Sios dienos zinuciu skaiciavimas

aciu :)

Re: Sios dienos zinuciu skaiciavimas

Neodan wrote:

kazkaip kreivokai atrodo tavo query :)

1. patarciau naudoti MySQL f-ja COUNT
2. ar tikrai tau reik tokiu magic dienos paskaiciavimu formules, kad galetum paimti einamos dienos postus?

querys manau galetu atrodyti pvz taip:

"SELECT COUNT(*) FROM knyga WHERE `date_col`>='".date('Y-m-d')."'";

Aisku konkretus uzduoties sprendimas priklauso nuo konkreciu aplinkybiu.

Dėl antro punkto (ir pateikto kodo snippet'o) nepritariu.

Re: Sios dienos zinuciu skaiciavimas

criminal wrote:

Dėl antro punkto (ir pateikto kodo snippet'o) nepritariu.

Cia tik buvo greitas pvz, kaip galima padaryti, o ne kaip tobuliausias variantas. (-;

Be to vienoda rezultata programavime dazniausiai galima gauti keliais variantais. O ideliausias variantas daznai priklauso nuo tam tikru aplinkybiu :)

P.S. criminal, galetum pasidalinti ir savom idejom, nes gal tikrai geresni sprendima zinai.

Re: Sios dienos zinuciu skaiciavimas

Nu buvo paprastesni variantas.. :) Isivest data

$data = date("Y.m.d");

ji nusinulina kasdien... ir paprasciausia skaiciuot zinutes su siandienos data :)

$snd = mysql_num_rows(mysql_query("SELECT * FROM knyga WHERE data = '$data'"));

veikia puikiai

Re: Sios dienos zinuciu skaiciavimas

O tai koks tikslas su PHP gamintis "šiandienos datą", kai MySQL'as turi savo funkcijas/konstantas tam reikalui?

Ir pasikartosiu, kad ir kokią užklausą bevykdytum - visada tikrink ar nebuvo klaidų, nes anksčiau ar vėliau su tokios struktūrom "mysql_num_rows(mysql_query(" - nudegsi.

Re: Sios dienos zinuciu skaiciavimas

As irasu skaiciavimui visgi siulyciau naudoti COUNT :)

Re: Sios dienos zinuciu skaiciavimas

o tikrint va taip ? or die ("Mysql Klaida!");

Re: Sios dienos zinuciu skaiciavimas

Pradžiai bent jau :

 ... or die(mysql_error());

O kai išmoksi rimčiau klaidas apdoroti tada aišku teks jas nukreipti teisingesne linkme, negu tiesiai vartotojui nutraukiant scripto darbą (-;

Re: Sios dienos zinuciu skaiciavimas

nu tai desiu tikrinimus :)

Re: Sios dienos zinuciu skaiciavimas

pagalvok apie varianta - jei toji lentele didele, ir tarkim visi šiandienos postai užima kokius 2MB tai gaila duombazės kuri kiekvieną kartą turi tuos megus persiust, vien tam kad paskaiciuoti kiek eilučių bus :)

MongoDB Certified Developer
MongoDB Certified DBA
Zend Certified Engineer

Re: Sios dienos zinuciu skaiciavimas

galvojau apie tai pas mane wap svetaine kurta xhtml ;) tiek tikrai nebus :)