【问题标题】:Pass variable in GET method to PHP file on server [closed]将GET方法中的变量传递给服务器上的PHP文件[关闭]
【发布时间】:2026-01-21 20:30:01
【问题描述】:

从我的 Android 应用程序中,我使用 HTTP GET 访问我服务器上的一个 Php 文件。

Php 文件包含一个 MySQL 查询,用于从我的 MySQL 数据库中选择数据。

我希望我的应用程序将变量传递给 Php 文件。选择特定的行,然后

仅从该行获取数据。

我该怎么做?

【问题讨论】:

  • 如果是get方法那么就可以构造url吧?
  • 请出示您现有的 java 和 php 代码,我们可以帮助您适应它。此外,它有助于解释您到目前为止所做的尝试
  • 您可以通过从 Android 应用程序发送的请求 URL 传递变量。类似:http://myphpsite.com/mypage.php?variable=24。然后您的 php 页面可以访问该变量并通过访问 $_GET['variable'] 像这样以正确的信息响应。
  • 我像 ?variable=myvariable 一样传递了它,然后用 $_GET['myvariable'] 访问它,它工作了。
  • 更好的方法是在传递给您的 php 文件之前对您的 url 进行编码:

标签: php android mysql get


【解决方案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 = $_GET['var1'];
     $var2 = $_GET['var2'];
?>

同样在 SQL server 上执行查询时,使用以下语法来避免 SQL 注入

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

【讨论】:

  • 导入 org.apache.http.client.HttpClient;无法解决