Witam, mam napisany taki kod, który zamienia dane z tabeli mysql na JSON. Wszystko działa jak powinno oprócz polskich znaków.
Jak wpisze jakieś polskie znaki w tabelce to, json_encode() nic nie robi a błąd jest Malformed UTF-8 characters, possibly incorrectly encoded
, bez polskich znaków wyświetla poprawnie.
<?php
header('Content-type: application/json');
header('Access-Control-Allow-Origin: *');
$user = "";
$pass = "";
$db = new PDO('mysql:host=localhost;dbname=name;charset=UTF8', $user, $pass);
$row=$db->prepare('select * from tabela');
$row->execute();//execute the query
$json_data=array();//create the array
foreach($row as $rec)//foreach loop
{
// echo "test";
$json_array['kategoria']=$rec['kategoria'];
$json_array['opis']=$rec['opis'];
//here pushing the values in to an array
array_push($json_data,$json_array);
}
echo json_encode($json_data);
?>