2016-08-09 67 views
0

我試圖從一個簡單的MySQL數據庫中檢索數據,這個數據庫在我的Macbook Pro上用MAMP進行本地管理。如何從iPhone上的MAMP MySQL數據庫檢索數據?

當我在Xcode的模擬器中運行項目時,它完美地工作。按下按鈕時將從數據庫中檢索數據。當您在Netbeans中運行代碼時,它也可以在Google Chrome瀏覽器中運行。

當我運行通過的Xcode在設備上的代碼,應用程序看起來應該和導航像它應該,但是當推按鈕未檢索數據。

我必須通過我的IP地址,以便爲它在設備上工作的連接?誰能解釋一個簡單的方法來做到這一點?請。

下面是檢索數據的代碼;

$(document).on('click', '#studentButton',function() { 
         $.getJSON('http://localhost:8888/htdocs/php/json-data-students.php', function(data) { 
             $.each(data.students, function(index, student) { 
              $('#Row1').append('<p> ID: ' + student.studentID+ '</p>'); 
              $('#Row2').append('<p> < '+ student.firstName +' > ')+ '</p>'; 
              $('#Row3').append('<p> < '+ student.lastName +' > ')+ '</p>'; 
              $('#Row4').append('<p> Course ID: ' + student.courseID+ '</p'); 
             }); 
         }); 
       }); 
+0

用相關代碼更新您的問題,顯示如何建立連接。 – rmaddy

+0

@rmaddy編輯。這是檢索數據的代碼。 – Skin99

回答

0

localhost是代表運行該應用程序的主機的IP地址127.0.0.1。

當您運行在模擬器(在Mac上)你的應用程序,然後localhost恰好是在同時運行數據庫相同的主機。所以你的應用程序可以很好地連接。

當您在真實iOS設備上運行應用程序時,localhost(如iOS應用程序所示)是iOS設備,而不是運行數據庫的主機。所以我們的應用程序無法連接,因爲數據庫沒有在iOS設備上運行。

因此,你需要用你的Mac的本地IP地址來替換localhost。最有可能會像192.168.1.x其中x11255之間的一些其它號碼。

一旦你做出改變你的應用程序將來自真實設備或模擬器的工作。當然,您的Mac的IP地址可能會隨着時間而改變。但這只是用於任何方式的測試。將應用發佈到App Store時,您當然不會在Mac上運行數據庫。

+0

感謝您的輸入!明天我會嘗試第一件事。 – Skin99

+0

這工作完美。謝謝。 – Skin99

+0

我現在已經在Web服務器上託管了數據庫。我必須對代碼進行哪些更改才能使其適用於現在的在線數據庫? – Skin99