Найти - Пользователи
Полная версия: Добавить запись в таблицу.
Начало » Базы данных » Добавить запись в таблицу.
1
Fe_DoS
Здравствуйте!
Не могу записать данные введённые в форму в таблицу MySQL.
Я делаю так:
Форма
<form action="add.py" metod="POST">
<label>Имя документа</label><br>
<input type="text" class="ed" name="docname"/><br>
<label>Полное имя документа</label><br>
<input type="text" class="ed" name="docnameall"/><br>
<label>Адрес</label><br>
<input type="text" class="ed" name="adres"/><br>
<label>Телефон</label><br>
<input type="text" class="ed" name="phone"/><br>
<label>e-mail</label><br>
<input type="text" class="ed" name="mail"/><br>
<input type="submit" value="Добавить" />
<input type="button" value="закрыть" onclick="addDoc('agent_close');"/>
</form>
add.py
#!/usr/bin/python
import cgi
import MySQLdb

form = cgi.FieldStorage()
form.has_key("docname")
form.has_key("docnameall")
form.has_key("adres")
form.has_key("phone")
form.has_key("mail")
DN = form["docname"].value
DNA = form["docnameall"].value
ad = form["adres"].value
ph = form["phone"].value
eml = form["mail"].value

MyDB=MySQLdb.connect(host='localhost', user='login', passwd='pass', db='dbname')
cursor = MyDB.cursor()
cursor.execute(""" INSERT INTO contragent(name_doc, name_doc_all, addres, phone, e_mail)
VALUES ('DN, DNA, ad, ph, eml""")
MyDB.commit()
MyDB.close()
Получаю 500 ошибку.
Подскажите что не так делаю.
Заранее благодарю.
regall
Поставьте трейс, и отдебажте, 500-а ошибка - понятие растяжимое…
PooH
Код более чем оригинален, а вот этот кусок просто шедевр.
Fe_DoS
cursor.execute(""" INSERT INTO contragent(name_doc, name_doc_all, addres, phone, e_mail) 
VALUES ('DN, DNA, ad, ph, eml""")
Что вы им хотели сказать? Похоже в анамнезе пхп.
Fe_DoS
Решил проблему.
Сделал так:
#!/usr/bin/python
import cgi
import MySQLdb

form = cgi.FieldStorage()
form.has_key("docname")
form.has_key("docnameall")
form.has_key("adres")
form.has_key("phone")
form.has_key("mail")
DN = form["docname"].value
DNA = form["docnameall"].value
ad = form["adres"].value
ph = form["phone"].value
eml = form["mail"].value

MyDB=MySQLdb.connect(host='localhost', user='sevreidru', passwd='S1412vrDf', db='dogovor', charset='utf8')
cursor = MyDB.cursor()
cursor.execute(""" INSERT INTO contragent(name_doc, name_doc_all, addres, phone, e_mail) VALUES (%s, %s, %s, %s, %s)""", (DN, DNA, ad, ph, eml))
MyDB.commit()
MyDB.close()
Теперь всё работает.
zheromo
Fe_DoS
form.has_key("docname")
form.has_key("docnameall")
form.has_key("adres")
form.has_key("phone")
form.has_key("mail")
можно полюбопытствовать - для чего эта конструкция?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB