หน้า: [1] 2
 
ผู้เขียน หัวข้อ: การเก็บข้อมูลและเรียกข้อมูลในflash  (อ่าน 27716 ครั้ง)
0 สมาชิก และ 1 ขาจร กำลังดูหัวข้อนี้
พี่คะยินดีที่ได้รู้จักค่ะ คือน้องเพิ่งหัดทำflashค่ะ ต้องทำสื่อการเรียนคณิตศาสตร์โดยต้องมีการเก็บคะแนนการทำแบบฝึกหัดและสามารถเรียกคะแนนออกมาดูได้ตามชื่อ น้องต้องทำอย่างไรบ้างคะ ต้องใช้เชื่อมต่อกับฐานข้อมูลอะไรอย่างไรบ้าง พี่ๆช่วยตอบน้องด้วยนะคะ  ขอบคุนล่วงหน้าค่ะ
บันทึกการเข้า
1. งานที่ทำ Offline หรือ Online ครับ?
2. อันนี้ขอถามตรงๆ เลยนะครับ โค้ดที่ทำมาแล้ว ทำเองกี่เปอร์เซ็นต์ครับ?
 ไหว้
บันทึกการเข้า

เป็นแบบ ofline ค่ะ โค้ดส่วนมากน้องหามากจากเน็ตค่ะ เพราะยังทำไม่ค่อยได้ ยังไงพี่ช่วยตอบให้ด้วยนะคะ
บันทึกการเข้า
ตอนนี้มีคู่มือซักเล่มรึยังจ้ะ  กรี๊ดดดดด
บันทึกการเข้า

Las Noches Rubicundior
เข้ามากางมุ้งรอผู้รู้... ฮี่ๆ

ผมเองก็กำลังทำโปรแกรมแบบฝึกเหมือนกันส่วนโปรแกรมเสร็จเกือบหมดแล้วขาดแต่การเก็บข้อมูล
ถ้าเก็บเป็น offline แล้วไม่ใช้ shareobject พอจะมีหนทางอื่นไหม
เพราะปล่ำกับเจ้านี่มานานแล้วไม่กระเตื่องเลย
คือมี user กับ คะแนน โดยคะแนนต้องการเก็บโดยเก็บวันที่ไปด้วยเพื่อเก็บเป็นสถิติ

ปล.File shareobject ของ mac มันอยู่ตรงไหนอะครับหาไม่เจอ
บันทึกการเข้า

If u don't know to go left or right, why don't you go forward.
my work
ถ้าเป็น Offline ยังไงผมก็ยังคงแนะนำ SharedObject ครับ
SharedObject เนี่ยมันเก็บได้เกือบทุกรูปแบบเลยนะครับ เพราะฉะนั้นแปลว่า
เราจะเก็บตัวแปรที่เป็น Object ก็ยังได้!

ดังนั้นรูปแบบที่ผมแนะนำให้เก็บคือ เก็บเป็น Object ใน Array ครับ

- มีอาร์เรย์ เก็บ User ทุกคน
- โดยที่ User แต่ละคน เป็นชนิด Object

ตัวอย่าง (ตัวอย่างจริงๆ ครับ เอาไปใช้คงต้องปรับอีก)

โค้ด:
//ประกาศตัวแปร so เป็น SharedObject โดยบันทึกเป็น SO ในชื่อ userData
var so = SharedObject.getLocal("userData","/");

so.users = []; //ประกาศให้ users เป็นอาร์เรย์

//สมมติให้ user คนแรก เป็น Object ที่มี
//- name เท่ากับ "korstudio"
//- date เท่ากับ "09/03/09 13:08"
//- score เท่ากับ 100
so.users[0] = {name: "korstudio", date: "09/03/09 13:08", score: 100};

//สั่งบันทึกค่าทันที
so.flush();

//ทดสอบ เรียกค่าของ user คนแรก
var firstUser = so.users[0];
trace( firstUser.name ); //korstudio
trace( firstUser.date ); //09/03/09 13:08
trace( firstUser.score ); //100

//เวลาบันทึกค่ากลับเข้าไป
so.users[0].score = 150;
so.flush();

//เรียกอีกที
trace( so.users[0].score ); //150

ส่วนที่เก็บไฟล์ sol ในแมค รบกวนเปิดใน Help เลยครับ เพราะใน Help เค้าบอกไว้ละครับว่าเก็บไว้ที่ไหน
ทั้ง Windows และ Mac OS เลย เจ๋ง

---------
ส่วนคุณ jubjang
ผมแนะนำอย่างสุดซึ้งว่า ให้อ่านและทำความเข้าใจกับโค้ดที่โหลดมาแปะๆ ในงานก่อนครับ
เพราะถึงผมแนะนำไป คุณก็ยังไม่รู้เรื่องอยู่ดี พอเอาไปใช้เข้าจริงๆ แล้วมีปัญหา
ก็ต้องมาตามหาคนแก้อีกครับ สู้เข้าใจกับมันก่อนดีกว่า แล้วเวลามีปัญหา เราก็สามารถแก้ได้ตรงจุดด้วยตัวเองครับผม

แต่ถ้าจะอ้างเรื่องไม่มีเวลาศึกษา ผมว่าเริ่มต้นตอนนี้ก็ยังไม่สายครับ
อยู่ที่ว่า อยากศึกษาจริงๆ หรือเปล่าก็เท่านั้นเอง เจ๋ง
« แก้ไขครั้งสุดท้าย: 09 มี.ค. 2009, 13:17 น. โดย นายก่อ » บันทึกการเข้า

//ผมขอเบิ้ลครับ เพราะเนื้อหาคนละส่วนกัน

ถ้าเป็น Online คงต้องใช้ Server-side Script ช่วยครับ แล้วอาจจะเก็บเป็นฐานข้อมูล
หรือให้ทางฝั่ง Server สร้างไฟล์ขึ้นมาก็ได้
สำหรับทางนี้ ค่อนข้างเปิดกว้างครับ มีมากมายหลายวิธี

แต่ที่อยากแนะนำคือ
- Flash ใช้ LoadVars (สำหรับ AS1.0-2.0) หรือ URLRequest, URLLoader (สำหรับ AS3.0)
- PHP ใช้สำหรับรับข้อมูลจาก Flash ไปเก็บ และส่งผลลัพธ์จากการอ่านข้อมูลที่เก็บให้ Flash
- ตัวเก็บข้อมูล อาจใช้ MySQL (ฐานข้อมูล) หรือ สร้างเป็นไฟล์ Text หรือ XML หรืออื่นๆ ตามสะดวกเลยครับ

อ้อ Server-side Script ที่แนะนำครับ คือ PHP
ไม่แนะนำ ASP.net ครับ เพราะเวลาส่งข้อมูลกลับ มันส่งเป็น HTML กลับมาให้ทั้งหน้าเลย
(มี HTML tag หมด ตั้งแต่ <html>  ง่ะ)
ลำบากต้องมาแยก String อีกครับผม

ส่วน Python หรือ Perl หรือตัวอื่นๆ ถ้าสามารถ Write ลง (ของ PHP ใช้ printf, echo) หน้าเพจเป็น Paired value ได้
ก็ใช้ได้เช่นกันครับ ไม่มีปัญหาด้วย เจ๋ง

Paired value คือรูปแบบของข้อความแบบนี้ครับ
แอบอ้าง
ตัวแปร=ค่าของตัวแปร&ตัวแปร=ค่าของตัวแปร&....
สังเกตว่า ตัวแปร และค่า จะอยู่กันเป็นคู่ๆ (นับคู่ด้วยเครื่องหมาย = และแบ่งคู่ด้วย &)
เลยเรียก Paired value ครับผม
บันทึกการเข้า

โอ้ว แชร์ออบเจค ใช้ดี เหมือนกันครับ  เคยทำได้นิดหน่อยแต่ลืมไปม้ดแล่ว
บันทึกการเข้า

ล้ำลึกคนึงหาในดวงจิต ใจเคยคิดตัดสวาทมิอาจสิ้น
ดั่งก้านบัวหักกลางชลาสินธุ์ ผิว่าสิ้นไร้เยื่อยังเหลือใย
ขอบคุณ คุณ"นายก่อ"มากครับสำหรับข้อมูลที่เป็นประโยชน์และรวดเร็ว หื่น ไหว้

บันทึกการเข้า

If u don't know to go left or right, why don't you go forward.
my work
ขอบคุนคะ พี่ๆ แจงได้ซื้อหนังสือมาอ่านบ้างแล้วค่ะ มีบอกว่าให้สราง xml แต่แจงไม่เข้าใจว่าต้องใช้อย่างอื่นมาเรียกอีกไหมคะ
คือทำแบบ offline เราต้องใช้ PHP และ MySQL หรือป่าวคะ หรือว่า สามารถ ใช้ xml และ sharobject ได้เลยคะ
บันทึกการเข้า
Online = PHP/MySQL
Offline = SharedObject ครับ Flash เขียน XML ไม่ได้ครับ อ่านได้อย่างเดียว
บันทึกการเข้า

ขอบคุนพี่นายก่อมากค่ะที่ตอบ เดี๋ยวแจงจะลองทำดูก่อน ถ้ามีอะไรไม่เข้าใจแจงจะขอมาถามพี่อีกนะคะ
บันทึกการเข้า
พี่คะช่วยตอบอีกอย่างนะคะว่า  น้องจะทำโปรแกรมที่สามารถคลิกให้ติดตั้งปกติโดยใช้flash  ถือว่าเป็นงาน offline ที่ใช้shareobject หรือป่าวคะ
บันทึกการเข้า
SharedObject ใช้สำหรับเก็บค่าเฉยๆ ครับ ไม่ได้เก็บไฟล์ที่ติดตั้ง
SharedObject เปรียบเสมือนกับ Cookie ของ Web Browser ครับ ทำได้แค่นั้นจริงๆ

ส่วนจะทำตัว Setup ต้องใช้โปรแกรมอื่นทำครับ
บันทึกการเข้า

SharedObject  สามารถใช้กับการทำสื่อการสอนแบบ offline ได้ใช่ไหมคะ พี่นายก่อ
บันทึกการเข้า
หน้า: [1] 2
 
 
Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2007, Simple Machines | Thai language by ThaiSMF Valid XHTML 1.0! Valid CSS!