ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingเขียนยังไงดีครับ ไม่ให้ refresh page แล้วระบบต้อง add ข้อมูลลง db อีกรอบ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: เขียนยังไงดีครับ ไม่ให้ refresh page แล้วระบบต้อง add ข้อมูลลง db อีกรอบ  (อ่าน 2912 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
okgofun
ก๊วนเสียว
*

พลังน้ำใจ: 1
ออฟไลน์ ออฟไลน์

กระทู้: 396



ดูรายละเอียด
« เมื่อ: 16 ตุลาคม 2007, 01:49:20 »

เขียนยังไงดีครับ ไม่ให้ refresh page แล้วระบบต้อง add ข้อมูลลง db อีกรอบ

คือเช่น ถ้าผมทำไฟล์ a.php ไว้ แล้วให้โพสต์ข้อความ ซึ่ง function ที่จัดเก็บข้อความ หรือพูดง่ายๆว่า <form action="a.php"> นั่นเอง ให้โพสต์ไปที่ไฟล์เดิมนี่หละ (ประมาณว่าหลีกเลี่ยงไม่ได้ ที่จะให้ action ไปไฟล์อื่นหนะคับ)

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

ปัญหาคือ ถ้าเรากด F5 หรือ Refresh ระบบมันก็จะทำ action นั้นเหมือนเดิมเลยครับ คือเก็บข้อมูลเข้าฐานข้อมูล

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

ขอบคุณครับ  Tongue

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

จะต้องทำให้ได้เดือนละอย่างต่ำ $1,000 แล้วก็ไม่โดนแบน
UnzO
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 54
ออฟไลน์ ออฟไลน์

กระทู้: 1,872



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 16 ตุลาคม 2007, 05:51:48 »

ไม่ทราบว่า ข้อมูลที่จะให้ใส่ลงไปเนี้ย เป็นข้อมูลเดิมรึป่าวหว่า

คือในกรณีของผมก็คล้ายๆ กันครับ แต่ผมไม่การข้อมูลเดิม ที่มีใน Database แต่ถ้าเป็นข้อมูลใหม่ผมเอาหมด ก็ใช้วิธีเช็ตจาก Database เลยว่ามีรึป่าว คือการ เอา ข้อมูลใหม่ มา query ดูจาก database ถ้ามี ก็ไม่เพิ่ม แต่ถ้าไม่มีก็เพิ่ม ลงไปใหม่ ผมทำแบบนี้อ่าครับ

ไม่รู้ผม งง กับคำถามรึป่าวแหะๆๆ

ปล. อีกอย่างผมก็ยังไม่ค่อยเก่ง php งับ แหะๆ  Tongue
บันทึกการเข้า
Newbies
สมุนแก๊งเสียว
*

พลังน้ำใจ: 42
ออฟไลน์ ออฟไลน์

กระทู้: 554



ดูรายละเอียด
« ตอบ #2 เมื่อ: 16 ตุลาคม 2007, 07:25:30 »

ก็ให้สคริบมันอยู่บนสุดเลย รับค่า ประมวลผลเสร็จ แล้วใส่ header location หน้าเดิมมัน น่าจะแก้ได้นะ
บันทึกการเข้า



DSci
คนรักเสียว
*

พลังน้ำใจ: 2
ออฟไลน์ ออฟไลน์

กระทู้: 104



ดูรายละเอียด
« ตอบ #3 เมื่อ: 16 ตุลาคม 2007, 09:48:41 »

วิธีผม ใส่ Primary Key ที่ Database เลยครับ
ไม่งั้นก็เช็คข้อมูลก่อน ว่ามีใน DB หรือยัง (เหมือนคุณ UnzO ครับ)
บันทึกการเข้า
Tee++;
โปรแกรมเมอร์ จอหงวน
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 79
ออฟไลน์ ออฟไลน์

กระทู้: 1,861



ดูรายละเอียด เว็บไซต์
« ตอบ #4 เมื่อ: 16 ตุลาคม 2007, 10:24:09 »

1. เก็บลง DB
2. Get Last ID ออกมา
3. header ไป หน้าที่จะแสดงผล เ่ช่น

header("Location: view.php?id=lastid");
บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์