ดึงข้อมูลจาก Database ขึ้นมาแสดงในหน้าเว็บด้วย Python

แชร์ความรู้ภาษา Python ไพทอน การเขียนโปรแกรมภาษาไพทอน

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

teenproza7
PHP Super Member
PHP Super Member
Posts: 204
Joined: 13/05/2019 10:03 am

ดึงข้อมูลจาก Database ขึ้นมาแสดงในหน้าเว็บด้วย Python

Post by teenproza7 » 29/05/2019 4:59 pm

จากความเดิมตอนที่แล้วที่เราเพิ่มข้อมูลลงในฐานข้อมูล
viewtopic.php?f=16&t=57192

วันนี้เราจะมาดึงข้อมูลจากฐานข้อมูลเพื่อแสดงออกมาทางหน้าเว็บที่เราสร้างกันครับ วิธีการจะเป็นยังไงไปดูกันเลย

ก่อนอื่นทำการสร้างหน้าที่จะแสดงข้อมูลกันก่อน ผมสร้างเป็น show.html

โดยใช้ code

Code: Select all



<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <title>แสดงข้อมูล</title>

</head>

<body>

<!-- สร้างตารางเพื่อทำการแสดงข้อมูล-->
<table border="1" cellspacing="5" width="80%" height="5" align="center">
            <a href = "/">กลับหน้าหลัก</a>
         <thead>
         <!-- สร้าง ส่วนหัวขอตาราง -->
            <td align="center">ID</td>
            <td align="center">ชื่อไฟล์</td>
            <td align="center">คำอธิบาย</td>
            <td align="center">เวลา</td>
            <td align="center">IP</td>

            <td colspan="2" align="center" width="10%">เครื่องมือ</td>

         </thead>
    <!-- วนลูปเพื่อดึงข้อมูลมาแสดง -->
             {% for row in rows %}
            <tr>

               <td align="center">{{ row[0] }}</td>
               <td align="center">{{ row[1] }}</td>
               <td align="center">{{ row[2] }}</td>
                <td align="center">{{ row[3] }}</td>
                <td align="center">{{ row[4] }}</td>

                <!-- สร้างปุ่มเพื่อทำการลบ-->
               <td align="center">  <form action="/delete/{{ row[0] }}" method="post"> <input type="submit"onclick="return del_confirm();" value="ลบข้อมูล" /></form></td>

                <!-- สร้างปุ่มเพื่อทำการแก้ไข-->
                <td align="center"><form action="/edit/{{ row[0] }}" method="post"> <input type="submit" value="แก้ไข" /> </form></td>

            </tr>
         {% endfor %} <!-- ปิดลูป-->
      </table>
   </body>
</html>
จากนั้น ทำการเขียน code python ใน .py โดยใช้ code

Code: Select all

@app.route('/show') #กำหนด หน้า path
def show(): #def  เป็นคำสำคัญสำหรับการสร้างฟังก์ชัน


        sql = "SELECT * FROM genpdf ORDER BY fileid DESC LIMIT 20" # คำสั่ง sql เพื่อทำการเลือก ตาราง โดย คอลัมน์ เรียงจากมากไปน้อย จำนวนสูงสุด 20
        sql = sql.decode('utf8')
        cur.execute(sql)  #ติดต่อฐานข้อมูลผ่านตัวแปร
        rows = cur.fetchall() #ทำการเลือกข้อมูลทั้งหมด

        return render_template("show.html", rows=rows) #เรนเดอร์ไฟล์ที่ชื่อ index ที่อยู่ในไดเร้กทอรี่ที่ชื่อ templates
จากนั้นเมื่อทำการรัน ข้อมูลที่อยู่ในฐานข้อมูลของเราก็จะถูกดึงออกมาแสดง ดังรูป

Image


เป็นยังไงกันบ้างครับสำหรับวิธีการดึงข้อมูลจากในฐานข้อมูลออกมาแสดงในเว็บของเรา สามารถนำไปประยุกต์กับการสร้างเว็บด้วย ภาษา Python ได้ ในบทความถัดไปผมจะกล่าวถึงการลบข้อมูลในหน้าเว็บกันนะครับ

ศึกษาข้อมูลเพิ่มเติมได้ที่

บทเรียน Python Framework Flask ในการพัฒนา Web Application

วีดีโอสอนเขียน Python สำหรับพื้นฐาน

บทที่ 4 ขั้นตอน การแสดงข้อมูลจากฐานข้อมูลดึงขึ้นมาแสดงหน้า Wab

Python Knowledge

Programming - C/C++ & java & Python
Image

Return to “Python Knowledge”

Users browsing this forum: No registered users and 3 guests