• Hallo Besucher!

    Du bist neu im Forum? Dann registriere dich hier, um Diskussionen beizutreten oder eigene Themen zu erstellen. Für die Registrierung ist es erforderlich, dass du einen Spielaccount bei Die Stämme hast.

    Andernfalls kannst du dich hier direkt einloggen.

    Falls du dein Passwort vergessen hast, kannst du hier ein neues Passwort anfordern.

JSON-Formatierung mit PHP

DeletedUser

Gast
Heyho,

ich arbeite gerade an einem Projekt, wo ich mit PHP eine Datenbankselect in JSON umwandeln muss. Ein Value von der Selektion ist ein Text, der ziemlich lang ist, unter anderem eine Beschreibung. Das Problem, das ich habe, ist, dass dieser String unter JSON als null ausgegeben wird.
Der Select-Befehl stimmt und wurde überprüft.

Code:
<?php

if ($mySQL = mysql_connect("xxxxxx", "xxxxxx", "xxxxxx")) {
    if (mysql_select_db("xxxxxx", $mySQL)) {
        $arr = array();

        mysql_query('SET CHARACTER SET utf8');
        $rs = mysql_query("SELECT name, avaPath, beschreibung FROM champList ORDER BY id");

        while ($obj = mysql_fetch_assoc($rs)) {
            $url = (string) ($obj['avaPath']);
            $obj['avaPath'] = stripslashes($url);
            $arr[] = $obj;
        }
        $json = '{"champList":' . json_encode($arr) . '}';
        echo $json;
    }
}
?>

Beispielzeile von JSON:

{"name":"Ahri","avaPath":"http://euw.leagueoflegends.com/sites/default/files/game_data/1.0.0.136/content/champion/icons/103.jpg","beschreibung":null}

Hat jemand ne Ahnung woran das liegen könnte?
 
Zuletzt bearbeitet von einem Moderator:

DeletedUser

Gast
habs schon, lag an utf-8 formatierung. die sache nun ist jedoch, dass das replace auf KEINEN fall mit backslashes funktionieren will, wenn ich die backslashes streichen will, die in avaPath sind, da ich es nicht mehr nachher machen kann, da sonst auch die backslashes von der utf-8 formatierung gestrichen wären.
das witzige ist, wenn ich es mit einem beliebigen wort im text mache funktioniert es, aber auf keinen fall mit backslashes.

code ist angepasst
 
Oben