2016-02-11 44 views
1

我是Android开发人员的初学者。我想将一个php文件连接到android应用程序。我的PHP代码是与android项目的php连接

<?php  
    $con = mysqli_connect("localhost", "root", "", "invoice_db"); 

    if(mysqli_connect_errno($con)) { 
     echo "Failed to connect"; 
    } 

    $response["sucess"]=0; 
    $invoiceid = $_POST['invc']; 
    $response = array(); 
    $sql = "SELECT sl_no from invoice_table where invoice_id='$invoiceid'"; 
    $result = mysqli_query($con,$sql); 

    if(!empty($result)) { 
     $row = mysqli_fetch_array($result); 
     $data = $row[0]; 
     $response["sucess"] = 1; 
    } 
    mysqli_close($con); 
?> 

这里INVC'是HttpRequest都有,

JSONObject json = jsonParser.makeHttpRequest(url_check_user, "POST", params); 

而且我JSONParser页面包含,

if (method == "POST") { 
    // request method is POST 
    // defaultHttpClient 
    System.out.println("Inside json parser POST condition"); 
    DefaultHttpClient httpClient = new DefaultHttpClient(); 
    HttpPost httpPost = new HttpPost(url); 
    httpPost.setEntity(new UrlEncodedFormEntity(params)); 

    System.out.println("Inside json parser POST condition" + params); 

    HttpResponse httpResponse = httpClient.execute(httpPost); 
    HttpEntity httpEntity = httpResponse.getEntity(); 
    Log.d("From httpentity", httpEntity.toString()); 
    System.out.println("ppppppppppppphhhhhhhhhhhhhhhhhhhhppppppppppp"); 
    is = httpEntity.getContent(); 
} 

现在我要检查,参数是否传递给php页面或不。所以我想安慰/登录猫$invoiceid。 Eclipse IDE中怎么可能?

+1

你可能会改变的另一件事是'method =='POST''到'method.equals(“POST”)'。 –

+0

这是真的,在Java中,您必须使用'.equals(...)'方法比较字符串,因为'=='运算符比较实例(即引用) – user2340612

回答

0

如果你想在PHP代码中打印一个变量,你可以做echo $variable。但请注意,PHP代码将在服务器上执行,而不是在您的Android设备上执行。此外,您的PHP代码容易受到SQL注入攻击。

+0

任何其他可能的可用于显示eclipse console/log中的变量猫。我不想显示在浏览器控制台中 – Rose

+0

PHP在Web服务器上执行,它与Android无关,因此无法将任何内容打印到logcat。您可以打印到LogCat调用的**结果**,即字符串/ Json/HTML /无论您的PHP代码是否返回。 – user2340612

+0

@Rose:如果您在浏览器中访问PHP的URL,那么只有在浏览器中显示结果。如果你通过你的应用程序运行它,那么你将不得不使用'Log'打印它。正如已经指出的那样,例如@ user2340612,你必须将结果放在'String'中。这里的要点是,如果你需要检查输出/结果,你将不得不在你的PHP –

0

您可以在您的php文件中使用JSON编码方法来获得正确的JSON响应。

$response = array (
       'invoiceid' => $verify_code,  
      ); 
print json_encode($response); 

将在一个格式的JSON字符串返回给你的应用程式,例如

{"invoiceid":"null"} 

,您可以解码并记录它像这样

InputStreamReader isw = new InputStreamReader(is); 
      BufferedReader br = new BufferedReader(isw); 
      String line = ""; 
      StringBuffer buffer = new StringBuffer(); 
      while ((line = br.readLine()) != null){ 
       buffer.append(line); 
      } 
String finalresult = buffer.toString(); 
JSONObject myobject = new JSONObject(finalresult); 
      String flag= myobject.getString("invoiceid"); 

log.e("mylog",flag) 

因此,这将是可见你的logcat文件。