Forum » Programiranje » Kako prikazati šumnike v grafih GoogleCharts če kličem podatke iz MySQL baze?
Kako prikazati šumnike v grafih GoogleCharts če kličem podatke iz MySQL baze?
SPTŠLowLife ::
Živjo, za projektno nalogo moram podatke iz MySQL tabele izpisati s pomočjo GoogleCharts grafov. Stvar praktično deluje, vse kar pa mi še dela probleme pa so šumniki, prikazani v grafih, saj mi namesto Č,Š,Ž izpiše le vprašaj (?). Ali mogoče ve kdo kako to popraviti? Na stackoverflowu sem poiskal že veliko "rešitev" a nobena ni rešila mojega problema.
Primer problema:
Del kode, uporabljen za izpis:
Primer problema:
Del kode, uporabljen za izpis:
<?php
$query = "SELECT idKategorija, sum(cenaStroska) as number FROM Stroski WHERE tip='Strosek' AND idUser='" . $id . "' GROUP BY idKategorija";
$result = mysqli_query($connect, $query);
?>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart()
{
var data = google.visualization.arrayToDataTable([
['imeStroska', 'number'],
<?php
while($row = mysqli_fetch_array($result))
{
$najdi_kategorijo = "SELECT kategorija FROM kategorija WHERE id = {$row['idKategorija']}";
$result_kategorija = mysqli_query($connect, $najdi_kategorijo);
$row_kategorija = mysqli_fetch_array($result_kategorija,MYSQLI_ASSOC);
echo "['".$row_kategorija["kategorija"]."', ".$row["number"]."],";
}
?>
]);
var options = {
title: 'Vsota stroškov glede na kategorijo',
//is3D:true,
pieHole: 0.4
};
var chart = new google.visualization.PieChart(document.getElementById('piechart'));
chart.draw(data, options);
}
</script>
Ziga Dolhar ::
Preveri, v kakšni kodni tabeli so shranjeni podatki v bazi, in katera kodna tabela je uporabljena pri prikazu podatkov v browserju (charset/encoding).
https://dolhar.si/
Miha 333 ::
RTFM?
https://developers.google.com/chart/ima...
All display text passed to the Chart API must be UTF-8 encoded and then URL-encoded.
https://developers.google.com/chart/ima...
SPTŠLowLife ::
RTFM?
All display text passed to the Chart API must be UTF-8 encoded and then URL-encoded.
https://developers.google.com/chart/ima...
Se pravi bi moral ob vnosu v podatkovno bazo s funkcijo pregledati niz in tam, kjer so šumniki bi funkcija morala zamenjati šumnik z njegovo kodo, npr. namesto "è" bi funkcija v tabelo zapisala vrednost "%C3%A8".
Bi bilo tako pravilno?
Miha 333 ::
Ne, v bazi imaš kot je pač collation baze, npr. utf8_slovenian_ci. Ko tekst potegneš iz baze, preden ga podaš APIju, ga URL-encodaš.
Ena od teh funkcij bo verjetno ustrezna:
http://php.net/manual/en/function.urlen...
http://php.net/manual/en/function.rawur...
Ena od teh funkcij bo verjetno ustrezna:
http://php.net/manual/en/function.urlen...
http://php.net/manual/en/function.rawur...
Zgodovina sprememb…
- spremenilo: Miha 333 ()
SPTŠLowLife ::
Zdaj mi graf prikaže npr. "Pija%3Fa", če pa URL-encodam pri vnosu, se pravi je v tabeli vnešeno "Pija%3Fa", pa mi graf s pomočjo URL-decoda izpiše vprašaj namesto šumnika..
Vredno ogleda ...
| Tema | Ogledi | Zadnje sporočilo | |
|---|---|---|---|
| Tema | Ogledi | Zadnje sporočilo | |
| » | Polnjenje tonerjev v LJOddelek: Pomoč in nasveti | 2591 (2339) | Brane22 |
| » | firefox/pdfOddelek: Programska oprema | 1595 (1393) | refaktor |
| » | Obnovitev starega računalnika (strani: 1 2 )Oddelek: Strojna oprema | 10228 (9261) | Tomaž |
| » | GTX 560Ti "No signal" črn zaslon...Oddelek: Pomoč in nasveti | 3221 (2843) | TOP |
| » | Katero grafično ....ti4200 ali r9500proOddelek: Kaj kupiti | 1925 (1632) | MrX |