2012-01-27 46 views
0

我想看看一個PHP腳本寫錯了什麼。該腳本從android應用程序獲取信息,然後使用該數據搜索表併發回信息。該客戶端是這樣寫的:如何發送網址中的數據以測試php文件?

nameValuePairs.add(new BasicNameValuePair("num1", num1)); 
    nameValuePairs.add(new BasicNameValuePair("num2", num2)); 
    nameValuePairs.add(new BasicNameValuePair("num3", num3)); 
    nameValuePairs.add(new BasicNameValuePair("num4", num4)); 


    InputStream is = null; 

     HttpClient httpclient = new DefaultHttpClient(); 
     HttpPost httppost = new HttpPost("http://10.0.0.4/xampp/phpfile.php"); 
     httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
     HttpResponse response = httpclient.execute(httppost); 
     HttpEntity entity = response.getEntity(); 
     is = entity.getContent(); 

我如何格式化的URL在瀏覽器中,如果我想要執行相同的腳本傳遞NUM1,NUM2,NUM3和num4以同樣的方式?

+1

可以使用curl命令行工具。在這裏試着給看看[此處輸入鏈接的描述] [1] [1]:http://superuser.com/questions/149329/how-do-i-make-a-post-request -with-the-curl-command-line-tool – fedepaol 2012-01-27 18:11:13

+0

'http://10.0.0.4/xampp/phpfile.php?num1 = num1&num2 = num2&num3 = num3&num4 = num4' - 但這可能不起作用,因爲代碼上面使用POST和URL中傳遞的數據是GET。如果您想在瀏覽器中使用Firefox,您需要使用[Poster](https://addons.mozilla.org/en-US/firefox/addon/poster/)或其他類似的工具。 – DaveRandom 2012-01-27 18:12:37

回答

1

由於您正在使用POST方法,正如我所看到的,您無法從瀏覽器URL調用它。 您可以使用post方法編寫一個簡單的html文件,其中包含一個表單,然後提交該文件。 或者修改服務器端的php文件,而不是使用$ _POST []變量使用$ _REQUEST []變量,它接受GET和POST方法調用。 在這種情況下: http://10.0.0.4/xampp/phpfile.php?num1=num1&num2=num2 ... 應該正常工作。

+0

啊,好的。所以如果我想在瀏覽器中打印結果,我會用什麼來代替:print(json_encode($ output)); – Stagleton 2012-01-27 18:36:07

+0

echo $ _REQUEST ['name_parameter']; http://www.keithjbrown.co.uk/vworks/php/php_p2.php – 2012-01-27 18:59:26

2

使用http://hurl.it/從您的瀏覽器中測試POST請求......

+0

你可以找到像hurl.it這樣的工具[here](http://stackoverflow.com/a/12637452/363573) – Stephan 2012-09-28 10:33:17