Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z wyświetlaniem wyników
Forum PHP.pl > Forum > PHP
szczurek
Mam w klasie taką funkcję:

  1. <?php
  2. public function GetArchMonths()
  3.  {
  4. $koncowa=array();
  5.  $sql="SELECT DISTINCT CONCAT(MONTH(DataDodaniaNewsa), '-', YEAR(DataDodaniaNewsa)) AS Data FROM Newsy WHERE CONCAT(MONTH(DataDodaniaNewsa),'-',YEAR(DataDodaniaNewsa)) <> CONCAT(MONTH(NOW()), '-', YEAR(NOW()))";
  6.  
  7. $select=DataBase::select($sql);
  8. $mies_licz=array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);
  9. $mies_slo=array("Stycze�", "Luty", "Marzec", "Kwiecie�", "Maj", "Czerwiec", "Lipiec", "Sierpie�", "Wrzesie�", "Pa�dziernik", "Listopad", "Grudzie�");
  10.  
  11. foreach($select as $selected)
  12. {
  13. $obciete=str_replace($rok=substr($selected['Data'], -5, 5), '', $selected['Data'] );
  14.  
  15. $zamiana=str_replace($mies_licz, $mies_slo, $obciete);
  16.  $koncowa[]=$zamiana.str_replace('-', ' ', $rok);
  17.  
  18. }
  19. return $koncowa;
  20.  }
  21. ?>


jeśli każę wyświetlać już w funkcji

  1. <?php
  2. FROM Newsy WHERE CONCAT(MONTH(DataDodaniaNewsa),'-',YEAR(DataDodaniaNewsa)) <> CONCAT(MONTH(NOW()), '-', YEAR(NOW()))";
  3.  
  4. $select=DataBase::select($sql);
  5. $mies_licz=array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);
  6. $mies_slo=array("Stycze&#65533;", "Luty", "Marzec", "Kwiecie�", "Maj", "Czerwiec", "Lipiec", "Sierpie�", "Wrzesie�", "Pa�dziernik", "Listopad", "Grudzie�");
  7.  
  8. foreach($select as $selected)
  9. {
  10. $obciete=str_replace($rok=substr($selected['Data'], -5, 5), '', $selected['Data'] );
  11.  
  12. $zamiana=str_replace($mies_licz, $mies_slo, $obciete);
  13.  echo $koncowa[]=$zamiana.str_replace('-', ' ', $rok);
  14.  
  15. }
  16. ?>

To wyświetla tak jak chcę.

A jeśli jest tak jak w pierwszym kodzie i później w pliku daję tak:

  1. <?php
  2. try{
  3. $News= new News();
  4. $miesiace=$News->GetArchMonths();
  5.  
  6. }catch(exception $e)
  7. {
  8. die($e->getMessage());
  9. }
  10. foreach($miesiace as $miesiac)
  11. {
  12. echo $miesiac['Data'];
  13. }
  14. ?>

Wyświetla mi tylko pierwszą literę z każdego elementu tablicy.
Nie bardzo rozumiem dlaczego.

A zadaniem tej funcji jest wyświetlenie listy miesięcy z których istnieją newsy.
szuset
Cytat(szczurek @ 23.10.2006, 22:35:47 ) *
echo $miesiac['Data'];


A tu nie powinno być przypadkiem
echo $miesiac;
szczurek
Dzięki, głupio mi strasznie bo jakoś uparłem się na tą datę sam nie wiem dlaczego.
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.