ดึงค่าจากตัวแปรออกมาแก้ไข

แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python

Moderator: mindphp, ผู้ดูแลกระดาน

teenproza7
PHP Super Member
PHP Super Member
โพสต์: 204
ลงทะเบียนเมื่อ: 13/05/2019 10:03 am

ดึงค่าจากตัวแปรออกมาแก้ไข

โพสต์ที่ยังไม่ได้อ่าน โดย teenproza7 »

คือผมเขียนโปรแกรมเพื่อทำการรับ ค่า input ที่ได้ เก็บไว้ในตัวแปร สมมุติ x โดยที่ไม่ได้เก็บไว้ใน database จากนั้นก็ให้ ตัวแปร x นั้นไปสร้างไฟล์ .rml เพื่อที่จะนำไปแปลงเป็น pdf

คำถามคือ ถ้าผมต้องการ ที่จะดึง ค่า ตัวแปร x นั้นมาแสดงในหน้าแก้ไขด้วย (เพราะไม่ได้บันทึกลงฐานข้อมูล) จะต้องใช้วิธีใด

ต้องดึงค่าจากไฟล์ rml หรือไม่ หรือว่าต้องทำยังไง

โค้ดรับค่าและ เก็บไว้ในตัวแปร เพื่อทำการแปลงไฟล์

โค้ด: เลือกทั้งหมด

code = request.form['rml']

            try:
                f = open('code.rml', 'w')
                f.write(code)
                f.close()

                
                print ('สร้างไฟล์สำเร็จ')

                try:
                    d = open('code.rml', 'r')
                    data = d.read()
                    d.close()

                    pdf = rml2pdf.parseString(data.decode('utf-8'))

                    a = open('test.pdf', 'w')
                    a.write(pdf.read())

                    print ('แปลงไฟล์สำเร็จ')

                except:
                    print  ('แปลงไฟล์ผิดพลาด')
                    

รูปภาพ
ภาพประจำตัวสมาชิก
thatsawan
PHP VIP Members
PHP VIP Members
โพสต์: 28508
ลงทะเบียนเมื่อ: 31/03/2014 10:02 am
ติดต่อ:

Re: ดึงค่าจากตัวแปรออกมาแก้ไข

โพสต์ที่ยังไม่ได้อ่าน โดย thatsawan »

เวลาเราสร้างสร้างไฟล์ rml เราเอา ID ตารางมาสร้างเป็นชื่อไฟล์ ก่อน Gen ออกมาเป็น PDF
เเสดงว่าไฟล์ rml ยังคงมีอยู่เหมือนเดิม

ตอนเเก้ไข เอา ID ที่เราจะแก้ไขไปหา ไฟล์ RML ว่าตรงกับไฟล์ไหน เเล้วก้ออ่านค่าให้ไฟล์ออกมา ส่งกลับ HTML
tatiya
PHP VIP Members
PHP VIP Members
โพสต์: 2845
ลงทะเบียนเมื่อ: 09/07/2018 9:35 am

Re: ดึงค่าจากตัวแปรออกมาแก้ไข

โพสต์ที่ยังไม่ได้อ่าน โดย tatiya »

แนะนำว่าให้เก็บชื่อหรือที่อยู่ไฟล์ rml ไว้ใน DB ส่วน เวลาเขียน rml ให้ไปเก็บไฟล์ใน folder ใดโฟลเดอร์นึ่ง ไว้เรียกใช้งาน แล้วให้ default เป็นไฟล์ rml ที่เราต้องการ เงื่อนไขคือ
1. ถ้าเป็นเป็นชื่อเดิม ก็ให้อ่าน ชื่อไฟล์ที่เราเก็บที่อยู่ไว้ในฐาน เพื่ออ่านไฟล์ที่เก็บไว้ใน folder
2. ถ้าเป็นชื่อใหม่ก็ให้อ่านจากไฟล์ default ส่วนตอนเขียนก็ค่อยเปลี่ยนเป็นชื่อใหม่
teenproza7
PHP Super Member
PHP Super Member
โพสต์: 204
ลงทะเบียนเมื่อ: 13/05/2019 10:03 am

Re: ดึงค่าจากตัวแปรออกมาแก้ไข

โพสต์ที่ยังไม่ได้อ่าน โดย teenproza7 »

tatiya เขียน:แนะนำว่าให้เก็บชื่อหรือที่อยู่ไฟล์ rml ไว้ใน DB ส่วน เวลาเขียน rml ให้ไปเก็บไฟล์ใน folder ใดโฟลเดอร์นึ่ง ไว้เรียกใช้งาน แล้วให้ default เป็นไฟล์ rml ที่เราต้องการ เงื่อนไขคือ
1. ถ้าเป็นเป็นชื่อเดิม ก็ให้อ่าน ชื่อไฟล์ที่เราเก็บที่อยู่ไว้ในฐาน เพื่ออ่านไฟล์ที่เก็บไว้ใน folder
2. ถ้าเป็นชื่อใหม่ก็ให้อ่านจากไฟล์ default ส่วนตอนเขียนก็ค่อยเปลี่ยนเป็นชื่อใหม่
รบกวนขอตัวอย่างหน่อยครับ
รูปภาพ
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41232
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: ดึงค่าจากตัวแปรออกมาแก้ไข

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

บันทึกการใช้งานลงฐานข้อมูลก่อน
แล้วสร้างไฟล์ .rml
แล้วค่อยนำไฟล์ที่สร้างเสร็จไปใช้งานต่อ

ตัวอย่างโค้ด ส่วนของ python สำหรับบันทึกข้อมูลลงตาตาราง ถ้าเราสร้างตารางให้มี id เป็นตัวเลขรันไว้แล้ว ตามด้านล่างนี้

โค้ด: เลือกทั้งหมด

cursor.execute("INSERT INTO .... ")
new_row_id = cursor.fetchone()[0]
เท่านี้เราก็จะ ลำดับ id ล่าสุดที่เพิ่งบันทึกลงในตารางมาใช้งาน
โดยเอามาเชื่อมกับนามสกุลไฟล์ ตามโค้ดนี้

โค้ด: เลือกทั้งหมด

field_rml_name = str(new_row_id) + '.rml' 
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 96