Soru & Cevap

PHP ile Json Oluşturma

10.12.2016 - 05:01

Merhaba,

Benim kodum aşağıdaki gibidir;

<?php

	include("ayar.php");
	header('Content-Type: application/json');	
	//$ad = $_POST["ad"];
	$ad = "USER89623476571";
	$bilgial	=	@mysql_query("SELECT * FROM KULLANICI WHERE ID_NUMARASI='$ad' ORDER BY ID ASC LIMIT 1");

	$oku=mysql_fetch_assoc($bilgial);
	$metin= $oku['BAGLI_CIHAZ_ID'];
	$yenimetin = explode(',',$metin); 
	foreach($yenimetin as $yazdir){ 
	$sayi = "1";
	bilgial($yazdir);
	}  

function bilgial($kullanicisi)
{
	
	$TERMINAL_BILGI_AL	=	@mysql_query("SELECT * FROM TERMINAL WHERE ID='$kullanicisi' ORDER BY ID ASC LIMIT 1");
	while($TERMINAL_KAYITLAR=@mysql_fetch_assoc($TERMINAL_BILGI_AL)){
		$GELEN_SERIAL				=	$TERMINAL_KAYITLAR["SERIALNUMBER"];
		$GELEN_TERMINAL_ADI			=	$TERMINAL_KAYITLAR["TERMINAL_ADI"];
		$GELEN_SICAKLIK_T1_ALT		=	$TERMINAL_KAYITLAR["SICAKLIK_T1_ALT"];
		$GELEN_SICAKLIK_T1_UST		=	$TERMINAL_KAYITLAR["SICAKLIK_T1_UST"];
		$GELEN_SICAKLIK_T2_ALT		=	$TERMINAL_KAYITLAR["SICAKLIK_T2_ALT"];
		$GELEN_SICAKLIK_T2_UST		=	$TERMINAL_KAYITLAR["SICAKLIK_T2_UST"];
		$GELEN_SICAKLIK_T3_ALT		=	$TERMINAL_KAYITLAR["SICAKLIK_T3_ALT"];
		$GELEN_SICAKLIK_T3_UST		=	$TERMINAL_KAYITLAR["SICAKLIK_T3_UST"];
		$GELEN_SICAKLIK_T1			=	$TERMINAL_KAYITLAR["SICAKLIK_T1_SON_DATA"];
		$GELEN_SICAKLIK_T2			=	$TERMINAL_KAYITLAR["SICAKLIK_T2_SON_DATA"];
		$GELEN_SICAKLIK_T3			=	$TERMINAL_KAYITLAR["SICAKLIK_T3_SON_DATA"];
		$GELEN_NEM_H1_ALT			=	$TERMINAL_KAYITLAR["NEM_H1_ALT"];
		$GELEN_NEM_H1_UST			=	$TERMINAL_KAYITLAR["NEM_H1_UST"];
		$GELEN_NEM_H2_ALT			=	$TERMINAL_KAYITLAR["NEM_H2_ALT"];
		$GELEN_NEM_H2_UST			=	$TERMINAL_KAYITLAR["NEM_H2_UST"];
		$GELEN_NEM_H3_ALT			=	$TERMINAL_KAYITLAR["NEM_H3_ALT"];
		$GELEN_NEM_H3_UST			=	$TERMINAL_KAYITLAR["NEM_H3_UST"];
		$GELEN_NEM_H1				=	$TERMINAL_KAYITLAR["NEM_H1_SON_DATA"];
		$GELEN_NEM_H2				=	$TERMINAL_KAYITLAR["NEM_H2_SON_DATA"];
		$GELEN_NEM_H3				=	$TERMINAL_KAYITLAR["NEM_H3_SON_DATA"];
		$GELEN_SICAKLIK_T1_AD		=	$TERMINAL_KAYITLAR["SICAKLIK_T1_AD"];
		$GELEN_SICAKLIK_T2_AD		=	$TERMINAL_KAYITLAR["SICAKLIK_T2_AD"];
		$GELEN_SICAKLIK_T3_AD		=	$TERMINAL_KAYITLAR["SICAKLIK_T3_AD"];
		$GELEN_NEM_H1_AD			=	$TERMINAL_KAYITLAR["NEM_H1_AD"];
		$GELEN_NEM_H2_AD			=	$TERMINAL_KAYITLAR["NEM_H2_AD"];
		$GELEN_NEM_H3_AD			=	$TERMINAL_KAYITLAR["NEM_H3_AD"];
		$GELEN_SON_DATA				=	$TERMINAL_KAYITLAR["GELEN_SON_DATA"];
		}
		

// Json datasına çevrilecek diziyi yaratalım.
$json = array(); 

$json["Bilgiler"][] = array( 
	'GELEN_SERIAL'=> $GELEN_SERIAL, 
    'TERMINAL_ADI'=> $GELEN_TERMINAL_ADI, 
	'SICAKLIK_T1'=> $GELEN_SICAKLIK_T1,
	'SICAKLIK_T2'=> $GELEN_SICAKLIK_T2,
	'SICAKLIK_T3'=> $GELEN_SICAKLIK_T3,
	'NEM_H1'=> $GELEN_NEM_H1,
	'NEM_H2'=> $GELEN_NEM_H2,
	'NEM_H3'=> $GELEN_NEM_H3,
    'SON_DATA'=> $GELEN_SON_DATA,
	
	); 	
	
echo json_encode($json);	
		
}

?>

 

Bunun çıktısı

 

{"Bilgiler":
 [
   {"GELEN_SERIAL":"AGE6000010",
   "TERMINAL_ADI":"DENEME TERM",
   "SICAKLIK_T1":"23,8",
   "SICAKLIK_T2":"23,9",
   "SICAKLIK_T3":"23,8",
   "NEM_H1":"30",
   "NEM_H2":"29",
   "NEM_H3":"31",
   "SON_DATA":"2016-10-31 20:54:00"}
   ]
}{"Bilgiler":
  [
    {"GELEN_SERIAL":"AGE6000022",
    "TERMINAL_ADI":"Eczane",
    "SICAKLIK_T1":"23,0",
    "SICAKLIK_T2":"23,0",
    "SICAKLIK_T3":"22,9",
    "NEM_H1":"21",
    "NEM_H2":"21",
    "NEM_H3":"30",
    "SON_DATA":"2016-12-10 16:58:00"}
  ]
}

 

Şeklinde oluyor, ancak aşağıdaki şekilde olmasını istiyorum;

 

{"Bilgiler": [
    {"GELEN_SERIAL":"AGE6000010",
    "TERMINAL_ADI":"DENEME TERM",
    "SICAKLIK_T1":"23,8",
    "SICAKLIK_T2":"23,9",
    "SICAKLIK_T3":"23,8",
    "NEM_H1":"30",
    "NEM_H2":"29",
    "NEM_H3":"31",
    "SON_DATA":"2016-10-31 20:54:00"
      
    },
    {"GELEN_SERIAL":"AGE6000010",
    "TERMINAL_ADI":"DENEME TERM",
    "SICAKLIK_T1":"23,8",
    "SICAKLIK_T2":"23,9",
    "SICAKLIK_T3":"23,8",
    "NEM_H1":"30",
    "NEM_H2":"29",
    "NEM_H3":"31",
    "SON_DATA":"2016-10-31 20:54:00"}
  ]
}

 

Bu problemi nasıl çözebilirim?

172 Görüntülenme

3 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user karel
karel
25.01.2024 - 10:21

istediğiniz çıktıyı oluşturmak için kodunuzu şu şekilde güncelleyebilirsiniz:

Bu kod, istediğiniz çıktıyı oluşturacak şekilde düzenlenmiştir. Artık her TERMINAL için bir dizi oluşturacak ve bu dizileri "Bilgiler" anahtarının altında birleştirecektir. Daha fazla yardıma ihtiyacınız olursa Karel santral servisi web sitemizdeki blog kısmında aradığınızı bulabilirsiniz.

Profile picture for user zerrinakar
zerrinakar
05.07.2023 - 11:55

Json kütüphanesi mantıklı seçim olacaktır.

Profile picture for user sevgii
sevgii
10.01.2023 - 04:43

Json kütüphanesini kullanabilirsiniz