Python CGI Database

 ជា​ដំបូង​បង្អស់ យើង​ចាំបាច់​ត្រូវ​បង្កើត​មូលដ្នាន​ទិន្នន័យ​មួយ​ដោយ​សរសេរ​កម្មវិធី​ដូចខាង​ក្រោម​នេះ​៖

#!c:/Python31/python
import cgitb
cgitb.enable()
import sys, io
sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding = "UTF-8")
sys.stderr = sys.stdout
print("Content-Type: text/html")
print()
print(”'<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 //EN"

"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">”&#8217;)
##############################################################

#ការយក​សាស្ត្រា​មូលដ្ឋាន​ទិន្នន័យ​មក​ប្រើ

import sqlite3
#បង្កើត​មូលដ្ឋានទិន្នន័យ
បញ្ជី = sqlite3.connect(‘បុគ្គលិកក្រុមហ៊ុន’)
#បង្កើត​ចំណុច​បញ្ចូល​ទិន្នន័យ (cursor)
ចំណុច = បញ្ជី.cursor()
#បង្កើត​តារាងទិន្នន័យ
ចំណុច.execute(”’create table តារាងបុគ្គលិក(ឈ្មោះ text, អាយុ int, ភេទ text, មុខរបរ text, ថានៈ text, Email text)”’)

បើ​សិន​ជា​យើង​បើក​ថត​ដែល​មាន​ឯកសារ​​ជា​កម្មវិធី​ខាង​លើ​នេះ យើង​នឹង​ឃើញ​មាន​ឯកសារ​​មួយ​មាន​ឈ្មោះ​ថា "បុគ្គលិកក្រុមហ៊ុន" នៅ​ក្នង​ថត​នោះ​។ គឺ​ឯកសារ​នោះ​ហើយ​ដែល​ជា​មូល​លដ្ឋាន​ទិន្នន័យ​ដែល​នឹង​កត់​ត្រា​ទុក​នូវ​គ្រប់​ទនិន្នន័យ​ទាំងឡាយណា​ដែល​យើង​ចង់​រក្សាទុក​។

 

ជា​បន្ទាប់​មក​ទៀត ដើម្បី​បញ្ចូល​ទិន្នន័យ​ទៅ​ក្នុង​មូលដ្ឋាន​ទិន្នន័យ​នោះ យើង​អាច​សរសេរ​កម្មវិធី​ដូច​ខាង​ក្រោម​នេះ​៖

#!c:/Python31/python
import cgitb
cgitb.enable()
import sys, io
sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding = "UTF-8")
#sys.stderr = sys.stdout
print("Content-Type: text/html")
print()
print(”'<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 //EN"

"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">”&#8217;)
##############################################################
#ការបង្កើត​ទម្រង់បែបបទ​ (form)
print("""
      <form method=POST action="test.py">
        <table>
            <tr>
                <th aling=right>​ឈ្មោះ</th>
                <td> <input type=text name="ឈ្មោះ">
            </tr>
            <tr>
                <th aling=right>​អាយុ</th>
                <td> <input type=text name="អាយុ">
            </tr>
            <tr>
                <th aling=right>​ភេទ</th>
                <td> <input type=text name="ភេទ">
            </tr>
            <tr>
                <th aling=right>​មុខ​របរ</th>
                <td> <input type=text name="មុខរបរ">
            </tr>
            <tr>
                <th aling=right>​ថានៈ</th>
                <td> <input type=text name="ថានៈ">
            </tr>
             <tr>
                <th aling=right>​E-mail</th>
                <td> <input type=text name="Email">
            </tr>
        </table>
        <br />
        <input type="submit" value="បញ្ជូល​ទិន្នន័យ" />
      </form>
      <hr />
      <br />
      """)
#ការយក​សាស្ត្រា Common Gateway Interface មក​ប្រើ
import cgi
#ការចម្លង​យក​ទិន្នន័យ​ពី​ក្នុង​ទម្រង់បែបបទ​មក​ប្រើ​
ទិន្នន័យ = cgi.FieldStorage()
import sqlite3
#តភ្ជាប់​ទៅ​មូលដ្ឋានទិន្នន័យ
តំណ = sqlite3.connect(‘បុគ្គលិកក្រុមហ៊ុន’)
#បង្កើត​ចំណុច​បញ្ចូល​ទិន្នន័យ (cursor)
ចំណុច = តំណ.cursor()
#បង្កើត​កម្រងថេរ​ដែល​មាន​ធាតុ​ជា​ទិន្នន័យ​នៅ​ក្នុង​ទម្រង់បែបបទ
កម្រងទិន្នន័យ = (ទិន្នន័យ[‘ឈ្មោះ’].value,ទិន្នន័យ[‘ភេទ’].value, ទិន្នន័យ[‘អាយុ’].value, ទិន្នន័យ[‘មុខរបរ’].value, ទិន្នន័យ[‘ថានៈ’].value, ទិន្នន័យ[‘Email’].value)
#បញ្ចូលទិន្នន័យ​ទៅ​ក្នុង​មូលដ្ឋាន​ទិន្នន័យ
ចំណុច.execute("""insert into តារាងបុគ្គលិក values (?, ? , ?, ?, ?, ?)""", កម្រងទិន្នន័យ)
#ការរក្សាទិន្នន័យទុក​
តំណ.commit()
#ការចម្លង​យក​ទិន្នន័យ​មក​ប្រើការ
ចំណុច.execute(‘select  * from តារាងបុគ្គលិក’)
#ការបង្ហាញ​ទិន្នន័យ
print(‘<table border="1">’)
print("<caption>តារាង​រាយនាម​បុគ្គលិក​ក្រុមហ៊ុន</caption>")
print("<tr>")
for ប្រភេទ in ["ឈ្មោះ", "ភេទ", "អាយុ", "មុខរបរ", "ថានៈ", "E-mail"]:
    print("<th>{}</th>".format(ប្រភេទ))
print("</tr>")
for ក្រឡា in ចំណុច.fetchall():
    print("<tr align=’center’>")
    for j in range(6):
        print("<td>{}</td>".format(ក្រឡា[j]))
    print("</tr>")
print("</table>")
#បិទ​ចំណុច​បញ្ចូល​ទិន្នន័យ
ចំណុច.close()

 

Python CGI Database

 

 

Advertisements

ឆ្លើយ​តប

Fill in your details below or click an icon to log in:

ឡូហ្កូ WordPress.com

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី WordPress.com របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

រូប Twitter

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Twitter របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

រូបថត Facebook

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Facebook របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

Google+ photo

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Google+ របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

កំពុង​ភ្ជាប់​ទៅ​កាន់ %s

ផ្សែងប្លាក

%d bloggers like this: