2015-01-21 2 views
-1

내 Android 앱에서 HTTP GET을 사용하여 서버의 PHP 파일에 액세스합니다.GET 메서드의 변수를 서버의 PHP 파일에 전달하십시오.

PHP 파일에는 MySQL 데이터베이스에서 데이터를 선택하는 MySQL 쿼리가 포함되어 있습니다.

내 앱이 PHP 파일에 변수를 전달하기를 원합니다. 특정 행을 선택하려면

해당 행의 데이터 만 가져옵니다.

어떻게하면됩니까?

+0

만약 get 메소드라면 URL을 생성 할 수 있습니다. 그렇습니까? –

+1

기존 자바 및 PHP 코드를 보여주십시오. 저희가 귀하의 개작을 도와 드릴 수 있습니다. 또한 지금까지 해보신 것을 설명하는 데 도움이됩니다. – Steve

+0

Android 애플리케이션에서 보내는 요청 URL을 통해 변수를 전달할 수 있습니다. 뭔가 : http : //myphpsite.com/mypage.php? variable = 24'. 그런 다음 PHP 페이지에서 해당 변수에 액세스하고 '$ _GET ['variable ']'에 액세스하여 올바른 정보로 응답 할 수 있습니다. – itslittlejohn

답변

0

다음은 예제입니다. 당신이 등, 결로 낮은 칼로리없이 /로 등 다양한 종류가 있습니다 케이크의 데이터베이스가있는 경우, 당신은 당신의 응용 프로그램에서 보내려면이 같은 URL을 구성하는 것 :

http://yoursite.com/yourscript.php?cake=chocolate&frosting=no&lowcalorie=yes 

를 그런 다음, PHP에서 파일이 같이 해당 값에 액세스 할 수 있습니다 : 그것은하지 않기 때문에

$query = "SELECT * FROM cakes WHERE cake = '".$cake."' AND frosting = '".$frosting."' AND lowcalorie = '".$lowcalorie."'"; 

, 당신이 정확한 예제를 사용해서는 안 :

$cake = $_GET['cake']; 
$frosting = $_GET['frosting']; 
$lowcalorie = $_GET['lowcalorie']; 

을 그런 다음이 유사한 SQL 쿼리를 만들 수 있습니다 주입 공격으로부터 보호하십시오. SQL Injection에 대해 알아보고 이에 따라 사용자 입력을 적절히 삭제해야합니다.

1

서버에 연결할 URL을 구성하십시오. URL은 귀하의 변수를 가질 것입니다 ... 심판의 코드 서버 측 또한

HttpClient Client = new DefaultHttpClient(); 
String URL = "http://myserver/phpscript.php?var1=" + var1Value + "&var2=" + var2Value 
HttpGet httpget = new HttpGet(URL); 
ResponseHandler<String> responseHandler = new BasicResponseHandler(); 
ResponseString = Client.execute(httpget, responseHandler); 

당신이

<?php 
    $var1 = urldecode($_GET['var1']); 
    $var2  = urldecode($_GET['var2']); 
?> 

이러한 값에 액세스 할 수있는 SQL 서버에 쿼리를 실행하면 또한 방지하려면 다음 구문을 사용합니다 SQL 삽입

$stmt = $dbh->prepare("INSERT INTO TABLE_NAME (col_name1, col_name2) VALUES (:value1, :value2)"); 
$stmt->bindParam(':value1', $var1); 
$stmt->bindParam(':value2', $var2); 
+0

import org.apache.http.client.HttpClient; 해결할 수 없다. – eawedat

관련 문제