大家好,祝你好运,
我已经尝试使用xampp服务器将android eclipse项目连接到phpmysql。现在我成功获取并显示从mysql数据库到listview的所有数据。
但是如何只获取特定数据。示例:
名称:类:CodeSubject:SubjectName: 约翰2 TBE124
JOHN 2 TKE123
JOHN 2 TZE125
JOHN 2 TDE194
ADAM 2 TAE154
ADAM 2 TQE114
GORGE 2 TGE164
GORGE 2 TCE123
GORGE 2 TBE126
我想要的是如果微调器选择JOHN,ListView将显示所有JOHN数据/行/列。如果选择ADAM,则ListView将显示所有ADAM数据/行/列。对于我现在的代码,它将显示数据库中的所有数据。如果有相关教程请与我分享。
我使用了androidhive教程。 http://www.androidhive.info/2012/05/how-to-connect-android-with-php-mysql/
<?php
/*
* Following code will list all the products
*/
// array for JSON response
$response = array();
// include db connect class
require_once __DIR__ . '/db_connect.php';
// connecting to db
$db = new DB_CONNECT();
//here the search value is what you send from the app
if(isset($_GET["matricID"])){
$string_input = $_GET['matricID'];
$result = mysql_query("SELECT * FROM tbl_semester WHERE matricID LIKE '%$matricID%'") or die(mysql_error());
// check for empty result
if (mysql_num_rows($result) > 0) {
// looping through all results
// products node
$response["tbl_semester"] = array();
while ($row = mysql_fetch_array($result)) {
// temp user array
$semester = array();
$semester["pid"] = $row["pid"];
$semester["matricID"] = $row["matricID"];
$semester["code"] = $row["code"];
$semester["course"] = $row["course"];
$semester["point"] = $row["point"];
$semester["crdhour"] = $row["crdhour"];
$semester["grdpoint"] = $row["grdpoint"];
$semester["reattempt"] = $row["reattempt"];
$semester["grd"] = $row["grd"];
// push single product into final response array
array_push($response["tbl_semester"], $semester);
}
// success
$response["success"] = 1;
// echoing JSON response
echo json_encode($response);
} else {
// no products found
$response["success"] = 0;
$response["message"] = "No products found";
// echo no users JSON
echo json_encode($response);
}
}
?>
答案 0 :(得分:1)
这可以通过两种方式完成:
通过在每个微调器选择上查询mysql数据库。
只处理java文件中的所有内容
我建议你实现First方法。
答案 1 :(得分:0)
您需要编写一个Web服务,它将从您的mysql数据库中获取数据并将其发送到您的Android应用程序。
在您的服务器上编写一个php脚本,获取数据,在JSON对象中对其进行编码并将其发送到您的应用程序。
你引用的教程描述了这样做的方法。你也可以这样做。
要处理问题的第二部分,请通过POST或GET将微调器上选择的项目发送到服务器。创建查询以使用发送到服务器的数据检索行。将检索到的数据发送回应用程序,方法与之前完成的方式类似。然后填充ListView中收到的数据。
同样的教程也展示了这个演示。
希望它有所帮助。
您在服务器上示例php可能是这样的
//here the search value is what you send from the app
if(isset($_POST["searchvalue"])){
$string_input = $_POST['searchvalue'];
$result = mysql_query("SELECT * FROM TABLENAME WHERE NAME_COLUMN LIKE '%$string_input%'") or die(mysql_error());