2017-08-09 62 views
0

我需要你的建議。我在PHP中使用API​​來與我的android應用程序和mySQL數據庫進行通信。現在我想把這個API免費在線免費數據庫託管,問題是,當我爲該API查詢時,我收到我的JSON數據與垃圾託管,如HTML標籤和商業文本「[託管名稱]免費託管」 。當我的應用程序收到這些數據時,它會關閉。一切正常,本地WAMP的服務器上正常,但在網上舉辦我的應用程序崩潰JSON數據從PHP API在線託管

我對你

  1. 3個問題是正常的免費託管或也許我的API是錯誤的設計?
  2. 如果我把我的php文件放在付費服務器上,我會避免託管公司增加這些額外的東西嗎?
  3. 退房的我的樣本用戶註冊的PHP代碼

     $new_sql_select_query = "select * from userinfo where userName like '$userName' and userEmail like '$userEmail';"; 
    
         $sql_all_data = mysqli_query($con, $new_sql_select_query); 
    
         $userDataJson = array(); 
    
         while ($row = mysqli_fetch_array($sql_all_data)) { 
         $userDataJson["userId"] = $row["userId"]; 
         $userDataJson["userName"] = $row["userName"]; 
         $userDataJson["userEmail"] = $row["userEmail"]; 
         $userDataJson["accountBalance"] = $row["accountBalance"]; 
        } 
    
    
        $responseJson["success"] = 1; 
        $responseJson["message"] = "User correctly added to base!"; 
        array_push($responseJson["user"], $userDataJson); 
        echo json_encode($responseJson); 
    

部分,我有一個想法,但我不知道該怎麼做是正確的。我生成的代碼下面

 $myjson = json_encode($responseJson); 
     file_put_contents('myfile.json', $myjson); 

一個新的JSON數據文件,但是這裏還有一個問題,我的應用程序需要以某種方式重定向到新的文件,因爲現在我的應用程序直接連接到這個特定的PHP文件case CreateNewUserDB.php所以我應該怎麼做?我應該返回鏈接到這個生成的json文件到我的應用程序,然後再建立另一個連接,但這次是這個「myfile.json」文件?等待答案。 Regards

+0

網絡託管是昂貴的,所以自然,免費託管公司將使用免費版本在某些方面有問題,試圖將您轉移到付費託管。如果你支付了一些便宜的虛擬主機,你的程序應該和本地(和沒有廣告)非常相似。你的第三個問題應該是一個全新的帖子,我相信它已經被回答了 –

+1

我同意查理。你得到你所付出的。如果您沒有其他選擇,而不是使用免費託管站點,則需要從添加到其中的垃圾中篩選出所需的JSON響應。 - 你的第三個問題應該在一個新的SO問題中提出。 – Barns

回答

0

您的應用程序可能崩潰的原因是,當您在本地主機上向您的應用程序發送響應時,則只發送json數據。但正如你所說的免費託管,你有一些HTML。當你的java代碼嘗試創建一個json對象時,它必須拋出一個異常並因此發生錯誤。

有很多的免費託管,這是很好的,不做這些類型的廣告。 https://www.biz.nf/就是其中之一。我在早年使用它。還支付託管不會給你這樣的問題

0

我鼓勵你使用Firebase,它會爲你處理所有的後臺工作人員,它還可以訪問數據庫,除此之外,它是非常快速的比較常規數據庫。