2016-06-09 136 views
0

我正在尋找一種將JSON插入到SQLite的方法。 我有一個php腳本,看起來像這樣。插入json到mysql

<?php 
require 'connection.php'; 

$var_fname  = "Mildred"; 
$var_password  = "ewan"; 
$var_email = "saf"; 
$var_username = "enanpogi"; 
$var_lastname = "Mildred"; 
$var_aviaryName = "Mildred"; 
$var_location = "myLocation"; 

$insert_stmt = $db->prepare("" 
       . "INSERT INTO users" 
       . "(fname, lname, email, password, username, aviary_name, location) " 
       . "VALUES(:name, :lastname, :email, :password, :username, :aviaryName, :location)"); 
       // prepare and bind 
       $insert_stmt->execute(array(
        ':name'   => $var_fname, 
        ':lastname'  => $var_lastname, 
        ':password'  => $var_password, 
        ':email'  => $var_email, 
        ':username'  => $var_username, 
        ':aviaryName' => $var_aviaryName, 
        ':location'  => $var_location 
       )); 
       $lastId = $db->lastInsertId(); 

       if ($insert_stmt){ 
        echo "inserted</br>"; 
        echo $lastId; 
        //get all information of newly inserted and make json encode to prepare for insertion in sqlite_array_query 

        $stmt = $db->prepare('SELECT * ' 
         . 'FROM users ' 
         . 'WHERE id = :lastInsertedID '); 
        $stmt->bindParam(':lastInsertedID', $lastId); 
        $stmt->execute(); 

        $results = $stmt->fetch(PDO::FETCH_ASSOC); 

        if($results > 0){ 
         //echo sizeof($results); 
         echo "</br>"; 
         echo json_encode(array("user_data"=>$results)); 
        } 
       } 
?> 

當我運行該腳本,我能得到以下結果

{"user_data":{"id":"28","fname":"Mildred","lname":"Mildred","email":"saf","username":"enanpogi","aviary_name":"Mildred","password":"ewan","location":"myLocation","phonenumber":null,"active":null}} 

我不知道這是否是JSON對象或JSON陣列..

現在,我需要幫助在我的Android JAVA應用程序中將該JSON插入到SQLite中。

+0

刪除'java'標籤。它與java無關 – nospor

+0

沒有'
'。你應該使用'
'或'
'。 – klenium

+0

json_encode()給你一個字符串,所以如果你想把它放到sqlite數據庫只是把它作爲正常的字符串 – nospor

回答

0

您將獲得JSON對象。 json_encode會給你json對象。但是當你使用第二個參數爲true的json_decode時,你會得到json數組。

+0

但是他正在接收Android JAVA應用程序中的數據**我相信**所以'json_decode()'是不相關的 – RiggsFolly

1

訪問此鏈接:Json Viewer

  • 你的輸出與本鏈接的文本粘貼。
  • 點擊查看器。

你可以發現你得到了json響應與否。 我檢查你的result.it的json格式。你已經得到了json對象。

現在,使用json_encode($ results)函數爲您提供一個字符串,以便您可以輕鬆地插入它的數據庫。

+0

在JSON中不需要''''''表示一個對象'[]'表示一個數組。沒有比這更多的東西了! – RiggsFolly