MYSQL tabela PHP Json eksport

Odpowiedz Nowy wątek
2019-05-15 15:51
0

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);  

?>
edytowany 1x, ostatnio: CodeRZ, 2019-05-15 15:51

Pozostało 580 znaków

2019-05-15 15:59
0

Spróbuj uruchomić zapytanie SET NAMES utf8; na samym początku połączenia.

Btw, czy na pewno potrzebujesz dorzucać komentarz foreach loop do pętli? Komentarze powinny opisywać rzeczy oraz powiązania, które nie wynikają w sposób oczywisty z kodu (np. powinny opisywać dlaczego, a nie co).


edytowany 4x, ostatnio: Patryk27, 2019-05-15 16:00

Pozostało 580 znaków

2019-05-15 16:24
0

@Patryk27: działa :)

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0