2014-06-17 86 views
-1

我想從iPhone設備上的MySql數據庫中選擇數據。我看起來最簡單的方法是用GET參數連接到一個php文件,然後將其作爲字符串返回。這種方法有多安全?

現在我只是想知道有人會找到IP地址和文件,並從另一個地方使用它的機會不是應用程序。

+3

如果有人找到該文件,這並不重要。做基本授權訪問你的PHP文件。還要關心sql的使用[prepared statement](http://us3.php.net//manual/en/pdo.prepared-statements.php) –

+0

看看[oAuth](http://us1.php.net //manual/en/book.oauth.php),所以應用程序必須在您訪問任何數據之前使用後端進行身份驗證。 – Styphon

回答

1

1-使用基本HTTP認證請求等:

curl -u username:password http://yourWebPage 

2-然後使用像基本HTTP認證響應:

$username = $_SERVER['PHP_AUTH_USER']; 
$password = $_SERVER['PHP_AUTH_PW']; 

if($username == $correctUsername AND $password == $correctPassword){ 
    //do some thing 
}else{ 
    header('WWW-Authenticate: Basic realm="My Realm"'); 
    header('HTTP/1.0 401 Unauthorized'); 
    die ("Not authorized"); 
} 

3-然後發送數據在HTTP的體作爲後JSON字符串

4-接收在PHP文件發佈數據:

$myData = json_decode(file_get_contents('php://input')); 
+0

如何使用「curl -u用戶名:密碼http:// yourWebPage」?我嘗試將它添加到NSString中,並更改yourWebPage ofc,但它似乎不起作用。如果我嘗試獲取$ _SERVER [「PHP_AUTH_USER」],它會給我一個錯誤「未定義的索引」。 – Arbitur

+0

@Arbitur我給你CURL作爲例子,但你應該從你的iPhone設備做CURL。 $ _SERVER [「PHP_AUTH_USER」]它給你一個錯誤「未定義的索引」,因爲沒有任何基本的http請求從iphon –

+0

我發現一個很好的教程如何做到這一點在ios :) – Arbitur

相關問題