Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] json_encode - brak polskich znaków
Forum PHP.pl > Forum > PHP
jankes83
Witam,

Pobieram z bazy dane i koduje je przy pomocy funkcji json_encode().
http://jankes.provector.pl/golf/json-events.php - tutaj podgląd tego co wypluwa.
Nie wiem dlaczego ale jeśli ciąg znaków zawiera polską literkę to w miejscu którym ona wystepuje, ciąg ten jest ucinany..
[Jakieś wydarzenie{"id":"1","title":"Jakie","start":"1263682800","end":"1263855600","url":"http:\/\/www.digg.com"}
Te dwa pogrubione ciągi to jedno i to samo. Tylko, że pierwszy jest zwyczajnie wyciągnięty z bazy.
Kod:
  1. $s_Sql = "SELECT * FROM `calendar`";
  2. $mysql = mysqli_query($mysqli, $s_Sql);
  3. echo '[';
  4. while($row = mysqli_fetch_array($mysql)){
  5. echo $row[1];
  6. echo json_encode(array(
  7. 'id' => $row[0],
  8. 'title' => $row[1],
  9. 'start' => $row[2],
  10. 'end' => $row[3],
  11. 'url' => $row[5],
  12. ));
  13. echo ',';
  14. }
  15. echo ']';
zzeus
Masz kodowanie UTF-8 ? Bo tylko na takim pracuje json_encode
jankes83
Niestety nie mam ustawionego kodowania UTF-8. Jest jakiś inny sposób na to? Czy zostaje mi własnoręczne kodowanie danych do formatu json?
krun
Przyjrzyj się funkcji iconv.
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.