JSON 인코딩 결과
PHPJSON 인코딩 결과
MySQL 쿼리 결과에 json_encode () 함수를 사용하려면 어떻게해야합니까? 행을 반복해야합니까, 아니면 전체 결과 개체에 적용 할 수 있습니까?
해결법
-
==============================
1.
$sth = mysqli_query("SELECT ..."); $rows = array(); while($r = mysqli_fetch_assoc($sth)) { $rows[] = $r; } print json_encode($rows);
json_encode 함수는 PHP> = 5.2와 php-json 패키지가 필요합니다.
참고 : mysql은 PHP 5.5.0부터 사용되지 않습니다. http://php.net/manual/en/migration55.deprecated.php 대신 mysqli 확장을 사용하십시오.
-
==============================
2.
이것을 시도하면, 이것은 당신의 객체를 적절히 생성 할 것입니다.
$result = mysql_query("SELECT ..."); $rows = array(); while($r = mysql_fetch_assoc($result)) { $rows['object_name'][] = $r; } print json_encode($rows);
-
==============================
3.
http://www.php.net/mysql_query는 "mysql_query ()가 리소스를 반환합니다"라고 말합니다.
http://www.php.net/json_encode는 "자원을 제외한"모든 값을 인코딩 할 수 있다고 말합니다.
배열을 반복하고 데이터베이스 결과를 수집 한 다음 배열을 json_encode해야합니다.
-
==============================
4.
고마워 이것이 나에게 많은 도움이되었다. 내 코드 :
$sqldata = mysql_query("SELECT * FROM `$table`"); $rows = array(); while($r = mysql_fetch_assoc($sqldata)) { $rows[] = $r; } echo json_encode($rows);
-
==============================
5.
고마워. 내 대답은 다음과 같다.
if ($result->num_rows > 0) { # code... $arr = []; $inc = 0; while ($row = $result->fetch_assoc()) { # code... $jsonArrayObject = (array('lat' => $row["lat"], 'lon' => $row["lon"], 'addr' => $row["address"])); $arr[$inc] = $jsonArrayObject; $inc++; } $json_array = json_encode($arr); echo $json_array; } else{ echo "0 results"; }
-
==============================
6.
위의 내용은 내 경험상 루트 요소의 이름을 지정하기 전에는 작동하지 않습니다. 배열에서 뭔가에 액세스 할 수 없었습니다. 그 전에 최종 json.
$sth = mysql_query("SELECT ..."); $rows = array(); while($r = mysql_fetch_assoc($sth)) { $rows['root_name'] = $r; } print json_encode($rows);
그 트릭을해야합니다!
파
-
==============================
7.
아래 코드는 여기에서 잘 작동합니다!
<?php $con=mysqli_connect("localhost",$username,$password,databaseName); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $query = "the query here"; $result = mysqli_query($con,$query); $rows = array(); while($r = mysqli_fetch_array($result)) { $rows[] = $r; } echo json_encode($rows); mysqli_close($con); ?>
-
==============================
8.
내 간단한 수정은 숫자 값 주위에 연설 표시를 그만 두는 ...
while($r = mysql_fetch_assoc($rs)){ while($elm=each($r)) { if(is_numeric($r[$elm["key"]])){ $r[$elm["key"]]=intval($r[$elm["key"]]); } } $rows[] = $r; }
-
==============================
9.
죄송합니다. 문제가 발생한 후에 매우 오래되었습니다.
$sql = 'SELECT CONCAT("[", GROUP_CONCAT(CONCAT("{username:'",username,"'"), CONCAT(",email:'",email),"'}")), "]") AS json FROM users;' $msl = mysql_query($sql) print($msl["json"]);
그냥 기본적으로 :
"SELECT" Select the rows "CONCAT" Returns the string that results from concatenating (joining) all the arguments "GROUP_CONCAT" Returns a string with concatenated non-NULL value from a group
-
==============================
10.
우리는이 같은 Paolo Bergantino 대답을 단순화 할 수 있습니다.
$sth = mysql_query("SELECT ..."); print json_encode(mysql_fetch_assoc($sth));
-
==============================
11.
MySQL 데이터베이스의 데이터를 사용하여 JSON을 작성하는 방법
JSON (JavaScript Object Notation)은 요즘보다 가볍고 읽기 쉽고 다양한 플랫폼에서 데이터를 쉽게 관리 할 수있어 XML보다 선호됩니다. MySQL 데이터베이스에 저장된 Employee 테이블에서 JSON 데이터를 생성하는 방법을 살펴 보겠습니다.
echo json_encode($data);
라이브 : [예]
-
==============================
12.
<?php define('HOST','localhost'); define('USER','root'); define('PASS',''); define('DB','dishant'); $con = mysqli_connect(HOST,USER,PASS,DB); if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $sql = "select * from demo "; $sth = mysqli_query($con,$sql); $rows = array(); while($r = mysqli_fetch_array($sth,MYSQL_ASSOC)) { $row_array['id'] = $r; **array_push($rows,$row_array);** } echo json_encode($rows); mysqli_close($con); ?>
aarray_push ($ rows, $ row_array); 그렇지 않으면 그것은 while 루프에서 마지막 값을 준다.
java에서 StringBuilder 메서드를 추가하는 것과 같은이 작업
-
==============================
13.
FOR 루프를 사용하는 또 다른 옵션 :
$sth = mysql_query("SELECT ..."); for($rows = array(); $row = mysql_fetch_assoc($sth); $rows[] = $row); print json_encode($rows);
유일한 단점은 루프가 예를 들어 느린 것입니다. 또는 특히 foreach
-
==============================
14.
예를 들어 $ result = mysql_query ( "SELECT * FROM userprofiles where NAME = 'TESTUSER'");
1) $ result가 하나의 행이면.
$response = mysql_fetch_array($result); echo json_encode($response);
2.) $ result가 둘 이상의 행이면. 행을 반복하여 배열에 저장하고 배열에 json을 반환해야합니다.
$rows = array(); if (mysql_num_rows($result) > 0) { while($r = mysql_fetch_assoc($result)) { $id = $r["USERID"]; //a column name (ex.ID) used to get a value of the single row at at time $rows[$id] = $r; //save the fetched row and add it to the array. } } echo json_encode($rows);
-
==============================
15.
나는 이것처럼 풀었다.
$ stmt-> bind_result ($ cde, $ v_off, $ em_nm, $ q_id, $ v_m); $ list = array (); $ i = 0; while ($ cresult = $ stmt-> fetch ()) { $ list [$ i] [0] = $ cde; $ list [$ i] [1] = $ v_off; $ list [$ i] [2] = $ em_nm; $ list [$ i] [3] = $ q_id; $ list [$ i] [4] = $ v_m; $ i = $ i + 1; } echo json_encode ($ list); 결과 세트로 아약스에 반환됩니다. 그리고 json parse를 javascript 부분에서 다음과 같이 사용합니다 :
obj = JSON.parse (dataX);
-
==============================
16.
나는 같은 요구 사항을 가지고있다. JSON 형식으로 결과 개체를 인쇄하므로 아래 코드를 사용합니다. 당신이 뭔가를 찾길 바랍니다.
// Code of Conversion $query = "SELECT * FROM products;"; $result = mysqli_query($conn , $query); if ($result) { echo "</br>"."Results Found"; // Conversion of result object into JSON format $rows = array(); while($temp = mysqli_fetch_assoc($result)) { $rows[] = $temp; } echo "</br>" . json_encode($rows); } else { echo "No Results Found"; }
-
==============================
17.
암호:
$rows = array(); while($r = mysqli_fetch_array($result,MYSQL_ASSOC)) { $row_array['result'] = $r; array_push($rows,$row_array); // here we push every iteration to an array otherwise you will get only last iteration value } echo json_encode($rows);
-
==============================
18.
$rows = json_decode($mysql_result,true);
저것과 같이 쉬운 :-)
-
==============================
19.
$array = array(); $subArray=array(); $sql_results = mysql_query('SELECT * FROM `location`'); while($row = mysql_fetch_array($sql_results)) { $subArray[location_id]=$row['location']; //location_id is key and $row['location'] is value which come fron database. $subArray[x]=$row['x']; $subArray[y]=$row['y']; $array[] = $subArray ; } echo'{"ProductsData":'.json_encode($array).'}';
-
==============================
20.
아래의 코드에서 mysql_fetch와 json_encode를 확인하십시오. 행을 반복해야하지만 mysqli를 사용하면 상황이 바뀔 것이다.
$kt_query="SELECT * FROM tbl_xxx"; $kt_result = mysql_query($kt_query) or die('Query failed: ' . mysql_error()); $rows= array(); while($sonuc=mysql_fetch_assoc($kt_result)) { $rows[]=$sonuc; } print json_encode($rows);
from https://stackoverflow.com/questions/383631/json-encode-mysql-results by cc-by-sa and MIT lisence
'PHP' 카테고리의 다른 글
PHP에서 친숙한 URL을 만드는 방법? (0) | 2018.09.03 |
---|---|
소수점 이하 2 자리까지 표시 (0) | 2018.09.03 |
변환 날짜 형식 yyyy-mm-dd => dd-mm-yyyy [duplicate] (0) | 2018.09.03 |
PHP에서 MySQL 테이블의 마지막 삽입 ID를 얻는 방법은 무엇입니까? (0) | 2018.09.03 |
jQuery를 사용하여 AJAX 요청 콜백 (0) | 2018.09.03 |