2016-03-30 15 views
-2

My istenen çıkışBöyle bir JSON çıkışı nasıl yapılır?

{"rowcount":4 
[{"provider_id":"1","provider_name":"Crecent Computers","sub_name":["Hardware","Software","Networks"]}],[{"provider_id":"4","provider_name":"Testing Co. LLC","sub_name":["Hardware","Software","Networks"]}],[{"provider_id":"41","provider_name":"Itiology","sub_name":["Hardware","Software","Networks","All IT Services"]}],[{"provider_id":"42","provider_name":"ITiology","sub_name":["Hardware","Software","Networks","All IT Services","Website Design "]}]} 

My istenen çıkış ucu

En güncel JSON çıkış

{"rowcount":4,"0":[{"provider_id":"1","provider_name":"Crecent Computers","sub_name":["Hardware","Software","Networks"]}],"1":[{"provider_id":"4","provider_name":"Testing Co. LLC","sub_name":["Hardware","Software","Networks"]}],"2":[{"provider_id":"41","provider_name":"Itiology","sub_name":["Hardware","Software","Networks","All IT Services"]}],"3":[{"provider_id":"42","provider_name":"ITiology","sub_name":["Hardware","Software","Networks","All IT Services","Website Design "]}]} 

JSON çıkış ucu

PHP KOD

$result = mysqli_query($con, "select * from service_provider where servicecategory_id = '1'"); 


if ($counter = mysqli_query($con, "select * from service_provider where servicecategory_id = '1'")) 
{ 
    // Return the number of rows in result set 
    $rowcount=mysqli_num_rows($counter); 

    // Free result set 
    mysqli_free_result($counter); 
} 

$data_points = array(); 
$subcatArray = array(); 

$data_points["rowcount"] = $rowcount; 

while($row = mysqli_fetch_assoc($result)) 
{ 

    $subcatresult = mysqli_query($con, "SELECT sub_name, price FROM sub_services WHERE provider_id = " . $row['provider_id']); 
    while($subcatrow = mysqli_fetch_assoc( $subcatresult)) 
    { 
     $subcatArray[] = $subcatrow['sub_name']; 
     unset($subcatrow); 
     $subcatrow = array(); 
    } 


    $data_points[][] = [ 
     'provider_id' => $row['provider_id'], 
     'provider_name' => $row['provider_name'], 
     'sub_name' => $subcatArray 
    ]; 

    // array_push("totalRow",$data_points, $point); 
} 


echo json_encode($data_points); 

PHP KODU SON

+2

İstenen JSON aslında geçerli değil. Sağlayıcılar gibi bir anahtar eklemeli ve iç içe diziler koymalısınız. Lütfen sorunuzu düzenleyin. – ehsan88

cevap

0

istenen çıkış json geçersiz json olduğunu. Bu jsonu geçerli olarak kontrol edebilir veya http://jsonviewer.stack.hu’da kontrol edebilirsiniz. json veya xml'nin kendi modelleri vardır.

+0

anladı. Teşekkürler. –

+0

Hoşgeldin kardeşim! – codekman

0

İstenilen çıktıların geçersiz olduğunu öğrendim. Üzgünüm, PHP'ye yeniyim.

ben bu satırı

$data_points["rowcount"] = $rowcount; 

çıkarılıp neye ihtiyacım için oldukça fazla yakın çıkış var bu

$data_points["Rows"][] = [ 
     'provider_id' => $row['provider_id'], 
     'provider_name' => $row['provider_name'], 
     'sub_name' => $subcatArray 
    ]; 

içine bu

$data_points[][] = [ 
     'provider_id' => $row['provider_id'], 
     'provider_name' => $row['provider_name'], 
     'sub_name' => $subcatArray 
    ]; 

yaptı. Teşekkürler beyler!

İlgili konular