2016-08-02 10 views
0

über php datenbankverbindung angezeigt werden soll ich daten im json format anzeigen welche daten sind aus der datenbank (MySql), aber ich kann nicht im json format anzeigen. http://takeyourtime.16mb.com/fatchData.phpwie im json-format mit php

$con = mysqli_connect($host, $username, $pwd, $db) or die('Unable to connect'); 
if (mysqli_connect_error($con)) 
{ 
    echo "Failed to Connect to Database ".mysqli_connect_error(); 
} 

$name = $_POST['Query']; 
$sql = "SELECT * FROM playerstb"; 
$query = mysqli_query($con,$sql); 

if ($query) 
{ 
    $rows = array(); 
    while ($r = mysql_fetch_assoc($query)) { 
    $rows['root_name'] = $r; 
    } 
} 

echo json_encode($rows); 

mysqli_close($con); 
+0

Anzeige im JSON-Format? –

+0

sicher, dass Sie nicht nach print_r() suchen? - und json_encode() – kurt

+0

Außerdem überschreiben Sie '$ rows ['root_name']] bei jeder Iteration, so dass Sie immer nur eine Zeile haben. – AbraCadaver

Antwort

0

Nur json_encode verwenden. BTW, Ihr Skript hat einen Syntaxfehler in der Endung wenn Block:

if($query){ 

    $rows = array(); 
    while($r = mysql_fetch_assoc($query)) { 
     $rows['root_name'][] = $r; // probably must be an array 
    } 
    echo json_encode($rows); 

}else{ 
    /* 
    This will show up when you have a query error 
    nothing to do with the results found. 
    I would consider changing the message below 
    */ 
    echo('Not Found'); 
} 
+0

Also, was wird die richtige Syntax sein @CarlosCarucce –

+0

@AyonDey entfernen Sie die zusätzliche '}' vor dem * Echo * Anruf – CarlosCarucce

+0

Aber immer noch mein Problem ist nicht auflösen @CarlosCarucce –

0

in Ihrem while-Schleife müssen Sie nicht alle Ergebnisse, die Sie jeden writen über die speichern, bevor ein

Sie es speichern, müssen in Array wie note diese ([]) *

while($r = mysql_fetch_assoc($query)) { 
    $root_names[] = $r; 
    } 
    echo json_encode(['root_name'=>$root_names]); 
+0

Dies wird genau die gleichen Ergebnisse wie ich bereits in meiner Antwort – CarlosCarucce

+1

geschrieben ja danke Carlos .. Ja, bemerkte ich jetzt den Unterschied zwischen Antwort oder Kommentar hinzufügen ... ich bin neu hier :) –

0

Sie haben dann ein Array Ihren Wunsch Schlüssel erstellen, nachdem das erste Ihr Ergebnis in einem Array speichern Name ($ array [ "name"])

$con=mysqli_connect($host,$username,$pwd,$db) or die('Unable to connect'); 
if(mysqli_connect_error($con)) 
{ 
    echo "Failed to Connect to Database ".mysqli_connect_error(); 
} 
$name=$_POST['Query']; 
$sql="SELECT * FROM playerstb"; 
$query=mysqli_query($con,$sql); 
if($query) 
{ 


$rows = array(); 
while($r = mysql_fetch_assoc($query)) { 
$rows[] = $r; 
} 
$data["data"]=$rows; 
echo json_encode($data); 
} 

}else 
{ 
echo('Not Found '); 
} 
mysqli_close($con); 
?> 
+0

Hoppla, sorry, lemme, bearbeite das zuerst – Paul