Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dzielenie na miesiące
Forum PHP.pl > Forum > PHP
spit
Czesc,
Mam taki niewielki skrypt do archiwizacji newsow:
  1. <?php
  2. $polaczenie = mysql_connect('localhost',$dbuser,$dbpass) or die('Polaczenie nieudane'); 
  3. mysql_query("SET NAMES 'utf8'", $polaczenie);
  4. mysql_select_db($db) or die('Wybranie bazy nieudane'); 
  5. $zapytanie = "SELECT a.*, COUNT(b.id) as ilosc_komentarzy FROM news a LEFT JOIN komentarze b ON (a.id = b.nid) GROUP BY a.id ORDER BY a.data DESC ";
  6. $wynik = mysql_query($zapytanie) or die(mysql_error());
  7. while($rekord=mysql_fetch_array($wynik)) {
  8. $data = date("d F Y",strtotime($rekord["data"]));
  9. $data = str_replace('January', 'Stycznia', $data);
  10. ...
  11. echo '
  12. <li><a href="?id='.$rekord["id"].'"><span class="data">'.$data.' &raquo; </span>'.$rekord["tytul"].'</a></li>
  13. '; }
  14. mysql_close($polaczenie);
  15. ?>

I chcialbym, by archiwum bylo dzielone na miesiace, tj. zeby lista byla np. tak
Kod
Luty
>blablabla
>blablabla
>blablabla
Styczen
>blablabla
>blablabla
itd
Co sugerujecie, by to osiagnac?
arecki
  1. <?php
  2. foreach ( $miesiace as $miesiac) {
  3. $wynik = zapytanie($sql_dla_danego_miesiaca);
  4. echo '<b>'.$miesiac.'</b>';
  5. foreach($wynik as $rekord) {
  6.  echo '<p>'.$rekord.'</p>';
  7. }
  8. }
  9. ?>


... pseudo kod mniej wiecej smile.gif
spit
Wolałbym to raczej zapetlic czy cos, zeby nie wystrzeliwac zapytania dla kazdego miesiaca, bo tak sugerujesz.
arecki
Cytat(spit @ 27.02.2007, 18:10:52 ) *
Wolałbym to raczej zapetlic czy cos, zeby nie wystrzeliwac zapytania dla kazdego miesiaca, bo tak sugerujesz.

To przed wywołaniem tego fragmentu kodu do zmiennej $miesiace wrzuć zczytane z bazy miesiące dla których masz dane.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.