Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > Mobile > Mobile Forum > Android ช่วยทำการส่งค่าไปอีก Activity ด้วยครับ ส่งค่าของ SQLite Intent เพื่อเอาไปเช็คเงื่อนไข SELECT ของ Database



 

Android ช่วยทำการส่งค่าไปอีก Activity ด้วยครับ ส่งค่าของ SQLite Intent เพื่อเอาไปเช็คเงื่อนไข SELECT ของ Database

 



Topic : 114162



โพสกระทู้ ( 98 )
บทความ ( 0 )



สถานะออฟไลน์




ผมต้องการให้คลิกที่ประเภทอาหาร แล้วไปยังหน้า ShowFoodActivity.java แล้วให้ทำการ Select ข้อมูลขึ้นมา โดย WHERE จากตัวแปรที่ส่งค่าไปจากหน้า MainActivity.java

ๅ

MainActivity.java
final FoodTypeDBClass myDb = new FoodTypeDBClass(this);
String myData[] = myDb.SelectAllData();   

ListView listViewFoodType = (ListView)findViewById(R.id.listViewFoodType); 
     		  
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
     		                	android.R.layout.simple_list_item_1, myData);
     		        
listViewFoodType.setAdapter(adapter);
     	
final FoodDBClass FoodDb = new FoodDBClass(this);
final ArrayList<HashMap<String, String>> FoodList = FoodDb.SelectAllData();
     	
listViewFoodType.setOnItemClickListener(new OnItemClickListener() {
	public void onItemClick(AdapterView<?> myAdapter, View myView, int position, long mylng) {

	     Intent newActivity = new Intent(MainActivity.this,ShowFoodActivity.class);
	     newActivity.putExtra("FoodIDType", FoodList.get(position).get("food_calorie_type").toString());
	     startActivity(newActivity);
	}       
});



ใส่แบบนี้แล้ว Error ตรง getIntent() มันให้สร้าง method()

String setFoodIDType = getIntent().getStringExtra("FoodIDType");
			
String strSQL = "SELECT * FROM " + TABLE_FOOD + " WHERE food_calorie_type = " + setFoodIDType;


ShowFoodActivity.java
public ArrayList<HashMap<String, String>> SelectAllData(){
try{
	ArrayList<HashMap<String, String>> MyArrList = new ArrayList<HashMap<String,String>>();
	HashMap<String, String> map;
			
	SQLiteDatabase db;
	db = this.getReadableDatabase();
			
	String setFoodIDType = getIntent().getStringExtra("FoodIDType");
			
	String strSQL = "SELECT * FROM " + TABLE_FOOD + " WHERE food_calorie_type = " + setFoodIDType;
	Cursor cursor = db.rawQuery(strSQL, null);
			
	if(cursor != null){
		if(cursor.moveToFirst()){
			do{
				map = new HashMap<String, String>();
				map.put("food_calorie_id", cursor.getString(0));
				map.put("food_calorie_name", cursor.getString(1));
				map.put("food_calorie_qty", cursor.getString(2));
				map.put("food_calorie_volume", cursor.getString(3));
				map.put("food_calorie_kcal", cursor.getString(4));
				map.put("food_calorie_type", cursor.getString(5));
				MyArrList.add(map);
			} while (cursor.moveToNext());
		}
	}
	cursor.close();
	db.close();
	return MyArrList;
	} catch (Exception e) {
		return null;
	}
}




Tag : Mobile, MySQL, Android, JAVA, Mobile









ประวัติการแก้ไข
2015-02-02 17:04:12
2015-02-02 17:04:37
2015-02-02 17:04:50
2015-02-02 17:05:59
2015-02-02 17:06:33
2015-02-02 17:15:17
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-02-02 17:02:38 By : l3ios View : 1443 Reply : 3
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

บอกแนวทางครับ



คลิกแก้ไข



Android Edit Update Data in SQLite Database (Android SQLite)







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-02 17:18:39 By : mr.win
 


 

No. 2



โพสกระทู้ ( 98 )
บทความ ( 0 )



สถานะออฟไลน์


Intent intent= getIntent();
final String FoodIDType = intent.getStringExtra("FoodIDType");
Toast.makeText(getApplicationContext(), FoodIDType, Toast.LENGTH_LONG).show();



ผมลองใส่ให้มันแจ้งเตือนว่าส่งเลขอะไรไป ปรากฎว่ามันออกแค่เลข 1 ตรงประเภทอาหารอ่าครับ ผมคลิกรายการที่ 2 มันก็ยังส่ง 1 ไป แทนที่จะส่ง 2 ไป


แล้วถ้าผมต้องการส่งค่าตัวแปรไปเช็คในไฟล์ FoodDBClass เลยจะได้ไหมครับ
ผมจะเอาไปเช็คที่เงื่อนไข SELECT * FROM TABLE WHERE ตามด้วยเงื่อนไข;
แบบนี้จะได้ไหมครับ พอดีดู Update แล้วไม่เข้าใจอ่าครับ

public ArrayList<HashMap<String, String>> SelectAllData(){
try{
	ArrayList<HashMap<String, String>> MyArrList = new ArrayList<HashMap<String,String>>();
	HashMap<String, String> map;
			
	SQLiteDatabase db;
	db = this.getReadableDatabase();
			
	String strSQL = "SELECT * FROM " + TABLE_FOOD + " WHERE food_calorie_type = " + เงื่อนไข;
	Cursor cursor = db.rawQuery(strSQL, null);
			
	if(cursor != null){
		if(cursor.moveToFirst()){
			do{
				map = new HashMap<String, String>();
				map.put("food_calorie_id", cursor.getString(0));
				map.put("food_calorie_name", cursor.getString(1));
				map.put("food_calorie_qty", cursor.getString(2));
				map.put("food_calorie_volume", cursor.getString(3));
				map.put("food_calorie_kcal", cursor.getString(4));
				map.put("food_calorie_type", cursor.getString(5));
				MyArrList.add(map);
			} while (cursor.moveToNext());
		}
	}

	cursor.close();
	db.close();

	return MyArrList;

	} catch (Exception e) {
		return null;
	}
}



ประวัติการแก้ไข
2015-02-03 07:52:31
2015-02-03 07:55:18
2015-02-03 07:55:49
2015-02-03 07:56:13
2015-02-03 07:56:32
2015-02-03 07:57:58
2015-02-03 20:35:34
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-03 07:52:11 By : l3ios
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Debug ดูครับ ตอนทีคลิกส่งค่า
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-03 09:57:54 By : mr.win
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : Android ช่วยทำการส่งค่าไปอีก Activity ด้วยครับ ส่งค่าของ SQLite Intent เพื่อเอาไปเช็คเงื่อนไข SELECT ของ Database
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่