Ошибка: name "name" is not defiend

EgorRokita

Новичок
Пользователь
Май 7, 2020
8
0
1
Python:
import sqlite3 as sql





print("1 - регистрация\n2 - вход")

choice = int(input("> "))

con = sql.connect('test.db')

with con:

    cur = con.cursor()

    cur.execute("CREATE TABLE IF NOT EXISTS `test` (`name` STRING, `surname` STRING)")



    if choice == 1:

        login = input("Введите логин")

        password = input("Введите Пароль ")

        cur.execute(f"INSERT INTO `test` VALUES ('{name}', '{surname}')")

    elif choice == 2:

        login = input("Введите логин")

        password = input("Введите Пароль ")



    else:

        print("Вы ошиблись")

if login in row[0] and password in row[1]:

    print("f")

else:

    print("k")

    con.commit()

    cur.close()

Windows 10, python 3, Я хотел сделать проверку пароля через базу данных
 
Последнее редактирование:

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Код вставляйте через кнопку вставить -> код -> python.
 

EgorRokita

Новичок
Пользователь
Май 7, 2020
8
0
1
Код вставляйте через кнопку вставить -> код -> python.
Вот так?
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
 

EgorRokita

Новичок
Пользователь
Май 7, 2020
8
0
1
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Вот немного переделанный код:
Python:
import sqlite3 as sql

print("1 - регистрация\n2 - вход")

choice = int(input("> "))

con = sql.connect('test.db')

with con:

    cur = con.cursor()
    cur.execute("CREATE TABLE IF NOT EXISTS `test` (`name` STRING, `surname` STRING)")

    if choice == 1:
        login = input("Введите логин")
        password = input("Введите Пароль ")
        cur.execute("INSERT INTO test ('name', 'surname')  VALUES (?, ?)", (login, password))
        con.commit()

    elif choice == 2:
        login = input("Введите логин")
        password = input("Введите Пароль ")
        c = cur.execute("""SELECT rowid FROM test WHERE (name, surname)=(?, ?)""", (login, password))
        x = c.fetchall()
        if len(x) > 0:
            print('Добро пожаловать')
        else:
            print('Некорректный логин или пароль')

    else:
        print("Вы ошиблись")
 

EgorRokita

Новичок
Пользователь
Май 7, 2020
8
0
1
Traceback (most recent call last):
File "C:\Users\Егор\Desktop\qwqwqwq.py", line 23, in <module>
c = cur.execute("""SELECT rowid FROM test WHERE (name, surname)=(?, ?)""", (login, password))
sqlite3.OperationalError: near ",": syntax error
показывает ошибку
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Traceback (most recent call last):
File "C:\Users\Егор\Desktop\qwqwqwq.py", line 23, in <module>
c = cur.execute("""SELECT rowid FROM test WHERE (name, surname)=(?, ?)""", (login, password))
sqlite3.OperationalError: near ",": syntax error
показывает ошибку
У меня ошибок не выдает. Возможно ошибка из-за копирования кода - попробуйте набрать его.
 
Последнее редактирование:

EgorRokita

Новичок
Пользователь
Май 7, 2020
8
0
1
Заработало, Спасибо!
 

Форум IT Специалистов