Announcement

Collapse
No announcement yet.

Probs mit json_encode

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Probs mit json_encode

    Hallo zusammen,

    vielleicht könnt ihr mir weiterhelfen, ich hab Probleme mit der json funktion von PHP. Ich lese aus einer Mysql Datenbank mitteles Select einen Datensatz aus und pack es anschliessend in ein Feld:

    Code:
    $out = $this :: querySelect($sql);
    
    public function querySelect($sql){
    		$out = array();
    		$res=$this -> mysqli -> query($sql);
    		if ($res){
    			while($row=$res->fetch_assoc()){
    				array_push($out,$row);# in die einkaufstasche
    			}
    		}
    		return $out;
    Das $Out übergib ich dann json_encode:

    Code:
    $response = json_encode($out);
    echo $_POST['jsonp_callback']. '(' . $response . ');';
    Bei einem einzelnen Datensatz funktioniert es, bei mehreren nicht, dort erhält ich als Ergebnis einen String mit der Zeichenkette "Array", laut Manuel sollten verschachelte Arrays für json_encode doch kein Problem sein. Was mach ich hier falsch, kann mir einer helfen ?

    Danke und Gruss

    Jürgen

  • #2
    Hallo,
    Was liefert denn ein Aufruf von json_last_error()

    funktioniert dieses einfache Bsp. korrekt?
    PHP Code:
    <?php

    function querySelect($sql)
    {
      
    $out = array();
      
    $res = array(
        array(
    'erster' => 1'zweiter' => 2),
        array(
    'erster' => 3'zweiter' => 4),
        array(
    'erster' => 5'zweiter' => 6),
      );
      foreach (
    $res as $row){
        
    array_push($out$row);
      }

      return 
    $out;
    }

    $out      querySelect('');
    $response json_encode($out);
    echo 
    '(' $response ');';
    Gruß Falk
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      Hallo Falk,

      danke für deine Antwort, habs gerade getestet, auch hierbei erhalte ich die Stringausgabe "Array". als Fehlercode erhalte ich von json_last_error() keinen Fehler (0).

      Hab schon gedacht, es konnte am content type des Headers liegen, aber dann würde es ja auch bei einem einzelnen Datensatz nicht funktionieren.



      Gruss
      Jürgen

      Update: Ich hab den Fehler gefunden, hat nichts mit json zu tun, sondern mit einer falschen Zuweisung
      Zuletzt editiert von Frege; 26.02.2010, 12:39. Reason: Problem gelöst

      Comment

      Working...
      X