|
|
|
android ช่วยแนะนำหน่อยครับ spinner อะครับ ดึงข้อมูลจาก mysql เช่นจังหวัดอะครับ |
|
|
|
|
|
|
|
นายต้อง ส่งค่า A1 กับ B1 ไปหา webservice ที่เป็น .net หรือ php เพื่อทำการ select Data
เช่น select id,time,seat from tablename where ....
จากนั้นก็ส่งที่ Query ออกมาได้ กลับเข้ามา แสดงที่ Android โดยส่งผ่าน json
|
|
|
|
|
Date :
2012-10-02 09:48:30 |
By :
thep |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุนครับ
|
|
|
|
|
Date :
2012-10-02 14:49:25 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สำหรับผมยากมาเลยคับ ทำไห้มันรับค่าจาก spinner ไมได้
|
|
|
|
|
Date :
2012-10-02 20:09:08 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองเอาที่เขียนไว้มาดูครับ เผื่อจะแนะนำได้ครับ
|
|
|
|
|
Date :
2012-10-03 08:57:35 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
นี่ครับ XML
ส่วนอันนี้เป็นโค้ดจาวาครับ
package com.android.spinner1;
import java.util.ArrayList;
import java.util.List;
import android.os.Bundle;
import android.app.Activity;
import android.app.Dialog;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
private Spinner spinner1, spinner2;
private Button btnSubmit;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
List<String> list = new ArrayList<String>();
list.add("A 1");
list.add("A 2");
list.add("A 3");
list.add("A 4");
list.add("A 5");
list.add("A 6");
list.add("A 7");
list.add("A 8");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1 = (Spinner) findViewById(R.id.spinner1);
spinner1.setAdapter(dataAdapter);
list = new ArrayList<String>();
list.add("B 1");
list.add("B 2");
list.add("B 3");
list.add("B 4");
dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2 = (Spinner) findViewById(R.id.spinner2);
spinner2.setAdapter(dataAdapter);
btnSubmit = (Button) findViewById(R.id.btnSubmit);
btnSubmit.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
final Dialog dialog = new Dialog(MainActivity.this);
dialog.requestWindowFeature(dialog.getWindow().FEATURE_NO_TITLE);
dialog.setContentView(R.layout.customdialog);
dialog.setCancelable(true);
TextView textView1 = (TextView)dialog.findViewById(R.id.textView1);
textView1.setText("Spinner 1 : " + spinner1.getSelectedItem().toString());
TextView textView2 = (TextView)dialog.findViewById(R.id.textView2);
textView2.setText("Spinner 2 : " + spinner2.getSelectedItem().toString());
dialog.show();
}
});
}
}
|
|
|
|
|
Date :
2012-10-03 16:14:01 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ส่วนอันนี้ข้อมูลที่จะดึงครับ
spinner1 ผมจะตั้งเป็น กรุงเทพ spinner2 ผมตั้งเป็น พังงา ระนอง ---- นราธิวาส
|
|
|
|
|
Date :
2012-10-03 16:21:26 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ครับ ผมขอลองก่อนครับ
|
|
|
|
|
Date :
2012-10-03 18:00:11 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สงสัยจะได้แล้วมั่งครับ
|
|
|
|
|
Date :
2012-10-05 20:56:04 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มาแล้วครับ ลองนานไปหน่อย สรุบยังไม่ได้ ทำส่วนอื่นอยู่นะครับ
นีโค้ดครับ
package com.android.spinner1;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONException;
import org.json.JSONObject;
import android.os.Bundle;
import android.app.Activity;
import android.app.Dialog;
import android.content.SharedPreferences;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
private Spinner spinner1, spinner2;
private Button btnSubmit;
String route, route1, route2, retRoute, retTime, retSeats;
EditText a, b, c;
HttpClient httpclient;
HttpPost httppost;
ArrayList<NameValuePair> nameValuePairs;
HttpResponse response;
HttpEntity entity;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initialise();
getData();
List<String> list = new ArrayList<String>();
list.add("--กรุณาเลือก--");
list.add("กรุงเทพ");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1 = (Spinner) findViewById(R.id.spinner1);
spinner1.setAdapter(dataAdapter);
list = new ArrayList<String>();
list.add("--กรุณาเลือก--");
list.add("พังงา");
list.add("ระนอง");
list.add("ภูเก็ต");
list.add("กระบี่");
list.add("นครศรีธรรมราช");
list.add("ตรัง");
list.add("ยะลา");
list.add("สตูล");
list.add("สงขลา");
list.add("นราธิวาส");
dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2 = (Spinner) findViewById(R.id.spinner2);
spinner2.setAdapter(dataAdapter);
route1 = spinner1.getSelectedItem().toString();
route2 = spinner2.getSelectedItem().toString();
route = route1+" - "+route1;
btnSubmit = (Button) findViewById(R.id.btnSubmit);
btnSubmit.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
final Dialog dialog = new Dialog(MainActivity.this);
dialog.requestWindowFeature(dialog.getWindow().FEATURE_NO_TITLE);
dialog.setContentView(R.layout.customdialog);
dialog.setCancelable(true);
TextView textView1 = (TextView)dialog.findViewById(R.id.textView1);
textView1.setText("Spinner 1 : " + spinner1.getSelectedItem().toString());
TextView textView2 = (TextView)dialog.findViewById(R.id.textView2);
textView2.setText("Spinner 2 : " + spinner2.getSelectedItem().toString());
TextView textViewA = (TextView)dialog.findViewById(R.id.a);
textViewA.setText("เที่ยวรถ : " + retRoute);
TextView textViewB = (TextView)dialog.findViewById(R.id.b);
textViewB.setText(" เวลาออก : " + retTime);
TextView textViewC = (TextView)dialog.findViewById(R.id.c);
textViewC.setText("จำนวนที่นั่ง : " + retSeats);
dialog.show();
}
});
}
public void getData()
{
try {
//Create new Array List
nameValuePairs = new ArrayList<NameValuePair>();
httpclient = new DefaultHttpClient();
//Create new HTTP post with URL to PHP file as parameter
httppost = new HttpPost("http://10.0.2.2/Update/getByMemberID.php");
nameValuePairs.add(new BasicNameValuePair("route", route));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
response = httpclient.execute(httppost);
if(response.getStatusLine().getStatusCode()== 200){
entity = response.getEntity();
if(entity != null){
InputStream instream = entity.getContent();
JSONObject jsonResponse = new JSONObject(convertStreamToString(instream));
//assign json response to local string
retRoute = jsonResponse.getString("Route"); //mySQL table field
retTime = jsonResponse.getString("Time"); //mySQL table field
retSeats = jsonResponse.getString("Seats"); //mySQL table field
// String retRoute = jsonResponse.getString("Route"); //mySQL table field
} else {
//Display failed
Toast.makeText(getBaseContext(), "Invalid Login Details", Toast.LENGTH_SHORT).show();
}
}
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(getBaseContext(), "Login Unsuccessful.", Toast.LENGTH_SHORT).show();
}
}
private static String convertStreamToString(InputStream is) {
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
StringBuilder sb = new StringBuilder();
String line = null;
try {
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return sb.toString();
}//end
private void initialise() {
a = (EditText) findViewById(R.id.a);
b = (EditText) findViewById(R.id.b);
c = (EditText) findViewById(R.id.c);
}
}
อันนี้ php
Code (PHP)
<?
$objConnect = mysql_connect("localhost","root","root");
$objDB = mysql_select_db("ticketbus");
//$_POST["sMemberID"] = "1"; // for Sample
$strMemberID = $_POST["Route"];
$strSQL = "SELECT * FROM databasebuss WHERE 1 AND Route = '".$strRoute."' ";
$objQuery = mysql_query($strSQL);
$obResult = mysql_fetch_array($objQuery);
if($obResult)
{
$arr["Route"] = $obResult["Route"];
$arr["Time"] = $obResult["Time"];
$arr["Seats"] = $obResult["Seats"];
/*$arr["Name"] = $obResult["Name"];
$arr["Email"] = $obResult["Email"];
$arr["Tel"] = $obResult["Tel"];*/
}
mysql_close($objConnect);
echo json_encode($arr);
?>
นี่ผลรันครับ
ผมต้องแก้ใขยังไงอ่าครับ รบกวนช่วยดูโค้ดไห้ผมทีครับ ให้ดึงข้อมูลออกมา
|
ประวัติการแก้ไข 2012-10-07 00:17:19 2012-10-07 00:19:23
|
|
|
|
Date :
2012-10-07 00:15:48 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อยากจะช่วยน่ะครับ แต่ผมรันไม่ได้ เลยได้แค่แนะนำบทความที่บอกไปครับ
|
|
|
|
|
Date :
2012-10-07 09:53:08 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วแบบนี้ละครับจะแก้ใขยังไงดี ข้อมูล ???????-?????? ใน mysql เป็นไทยนะแต่พอดึงออกมาโชว์ใน eclip กลับอ่านไม่ออก
(ปล. ผมเปลี่ยนใจทำ autoCompleteTextView แล้วครับ แฮ่ๆ)
|
ประวัติการแก้ไข 2012-10-08 00:48:17 2012-10-08 04:24:09
|
|
|
|
Date :
2012-10-08 00:47:39 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วครับ ไส่ตัวนี้เข้าไป ขอบคุนมากๆครับ
Code (PHP)
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("mydatabase");
mysql_query("SET NAMES UTF8");
|
ประวัติการแก้ไข 2012-10-08 16:37:14
|
|
|
|
Date :
2012-10-08 16:36:57 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Good Jobs
|
|
|
|
|
Date :
2012-10-08 21:04:01 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้ว เวลาสมัคสมาชิก ผมจะป้อน Name ภาษาไทยได้ไหมครับ ผมลองป้อนแต่ใน mysql เป็ ???
นี่โค้ด php ครับ
Code (PHP)
<?
$objConnect = mysql_connect("localhost","root","root");
$objDB = mysql_select_db("ticketbus");
/*** for Sample
$_POST["sUsername"] = "a";
$_POST["sPassword"] = "b";
$_POST["sName"] = "c";
$_POST["sEmail"] = "d";
$_POST["sTel"] = "e";
*/
$strUsername = $_POST["sUsername"];
$strPassword = $_POST["sPassword"];
$strName = $_POST["sName"];
$strEmail = $_POST["sEmail"];
$strTel = $_POST["sTel"];
/*** Check Username Exists ***/
$strSQL = "SELECT * FROM member WHERE Username = '".$strUsername."' ";
$objQuery = mysql_query($strSQL);
$objResult = mysql_fetch_array($objQuery);
if($objResult)
{
$arr['StatusID'] = "0";
$arr['Error'] = "Username Exists!";
echo json_encode($arr);
exit();
}
/*** Check Email Exists ***/
$strSQL = "SELECT * FROM member WHERE Email = '".$strEmail."' ";
$objQuery = mysql_query($strSQL);
$objResult = mysql_fetch_array($objQuery);
if($objResult)
{
$arr['StatusID'] = "0";
$arr['Error'] = "Email Exists!";
echo json_encode($arr);
exit();
}
/*** Insert ***/
$strSQL = "INSERT INTO member (Username,Password,Name,Email,Tel)
VALUES (
'".$strUsername."',
'".$strPassword."',
'".$strName."',
'".$strEmail."',
'".$strTel."'
)
";
$objQuery = mysql_query($strSQL);
if(!$objQuery)
{
$arr['StatusID'] = "0";
$arr['Error'] = "Cannot Register!";
}
else
{
$arr['StatusID'] = "1";
$arr['Error'] = "";
}
/**
$arr['StatusID'] // (0=Failed , 1=Complete)
$arr['Error'] // Error Message
*/
mysql_close($objConnect);
echo json_encode($arr);
?>
|
|
|
|
|
Date :
2012-10-09 22:45:58 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุนครับ มีคำถามอีกแล้ว
1. สมมุตว่าผมมี checkbox อยู่ 3อัน จะตั้งค่าไห้ อันที่ 1 checkbox1 = A 1, checkbox2 = A2, checkbox = A3 ยังไง
2. แล้วสมมุตว่าผมติ็กที่ checkbox1, checkbox2 กดOkจะไปส่งค่าไปยังอีกหน้านึง ที่เป็นEditText ผมตั้งเป็นandroid:id="@+id/txtSeat"
เป็น A1 A2 ยังไง
3. แล้วถ้าผมไม่ติ้กเลย พอกด Ok จะมีข้อความไห้ติ้ก please checket ครับ รบกวนช่วนแนะนำหน่อย
ผมลองหาดูจากบทความๆต่างๆก้หาไม่เจอเลยครับ
|
|
|
|
|
Date :
2012-10-12 00:52:55 |
By :
naykomza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ดูวิธีการใช้งาน Checkbox บน Android จากบทความนี้ครับ
Go to : Checkbox - Android Widgets Example
และถ้าต้องการตรวจสอบก็ให้ใช้ chkBox1.isChecked() == true ในกรณีที่มีหลาย ๆ ตัวก็ให้ใช้ Or เข้าไปครับ
|
|
|
|
|
Date :
2012-10-12 09:10:01 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พี่คับมาอยากดึงข้อมูลมาอยู่ที่ spinner ทำยังไงอะคับ
|
|
|
|
|
Date :
2012-11-08 13:59:32 |
By :
patipat |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือผมอยากดึงจาก phpmyadmin อะคับ
|
|
|
|
|
Date :
2012-11-08 14:00:59 |
By :
patipat |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ว่างมาเขียนให้แล้วครับ
Android Spinner / DropDownList from PHP and MySQL (Web Server)
|
|
|
|
|
Date :
2013-06-21 16:17:58 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|