บันทึกข้อมูล ลงฐานข้อมูลไม่ได้ค่ะ

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: บันทึกข้อมูล ลงฐานข้อมูลไม่ได้ค่ะ

Re: บันทึกข้อมูล ลงฐานข้อมูลไม่ได้ค่ะ

โดย nuattawoot » 23/11/2017 6:12 pm

ลองลบตัวนี้ออกครับ

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

if con:
           con.close()

Re: บันทึกข้อมูล ลงฐานข้อมูลไม่ได้ค่ะ

โดย Wallapa » 23/11/2017 6:00 pm

Error ทั้งหมดค่ะ
imgpsh_fullsize (1).png

Re: บันทึกข้อมูล ลงฐานข้อมูลไม่ได้ค่ะ

โดย nuattawoot » 23/11/2017 5:49 pm

แปะ Error มาให้ดูให้หมดหน่อยครับ เอามาแค่นี้ ไม่รู้ว่าต้องไปแก้ที่ไหน

Re: บันทึกข้อมูล ลงฐานข้อมูลไม่ได้ค่ะ

โดย thatsawan » 22/11/2017 5:19 pm

ลองประกาศตัวแปร ค่าเริ่มต้นให้มัน con

บันทึกข้อมูล ลงฐานข้อมูลไม่ได้ค่ะ

โดย Wallapa » 22/11/2017 3:39 pm

กรอกข้อความลงหน้านี้ แล้วกดบันทึก
00.png
00.png (9.24 KiB) Viewed 806 times
หน้าที่ Error
01.png
01.png (101.11 KiB) Viewed 806 times
โค้ด Python ที่ใช้ค่ะ :

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

import psycopg2 as p
from flask import Flask
from flask import render_template
from flask import request
con = None
app = Flask(__name__)
@app.route('/')
@app.route('/enternew')
def student():
    return render_template('adduser.html')

@app.route('/addrec', methods=['POST', 'GET'])
def addrec():
    if request.method == 'POST':
        name = request.form['name_first']
        lastname = request.form['name_last']
        color = request.form['favorite_color']
        try:
            con = p.connect(host='localhost', database='m052', user='postgres', password='')
            cur = con.cursor()
            sql = "insert into test_python (name_first, name_last, favorite_color) values ('%s','%s','%s')" % (name, lastname, color)
            sql = sql.encode('utf-8')
            try:
                cur.execute(sql)
                con.commit()
                return 'Name :' + name + '<br>' + 'Color'

            except:
                con.rollback()
                print('เพิ่มข้อมูล ผิดพลาด')

        except p.DatabaseError:
             print ('Error %s' % p.DatabaseError)
        if con:
           con.close()

if __name__ == '__main__':
    app.run(debug=True)

ข้างบน