
MemV01.txt
orange,1234,오렌지,orange@test.com,043,우송대
red,1234,장미,red@test.com,062,전남대
yellow,1234, 개나리, yellow@test.com,062,전남대
green,1234,소나무,green@test.com,043,우송대
blue,1234,바다,blue@test.com,062,전남대
import cx_Oracle
#사용 리스트
menu = ['1.회원가입', '2.로그인', '3.회원목록','4.정보수정','5.회원탈퇴', '9.메뉴종료']
itemList = ['ID', 'PWD', 'NAME', 'EMAIL', 'PHONE', 'ADDRESS']
menuChk = ['1','2','3','4','5','9']
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
#타이틀
def Title(arg):
print(f'\n{"메뉴선택":=^91}\n')
for x in arg:
print(x, end=" ")
print("")
print("")
print('='*95)
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# 회원목록 ==3
def mlist(arg):
connection = cx_Oracle.connect(user="hr", password="hr", dsn="localhost:1521/XE")
cursor = connection.cursor()
cursor.execute("""SELECT *FROM memberT01""")
print("="*95)
for x in arg:
print('{:^15}'.format(x), end =" ")
print()
print("="*95)
for y in cursor :
print(f'{y[0]:^10}\t{y[1]:^10}\t{y[2]:^10}\t{y[3]:^10}\t{y[4]:^10}\t{y[5]:^10}')
connection.commit()
cursor.close()
connection.close()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# 로그인 ==2
def Log():
connection = cx_Oracle.connect(user="hr", password="hr", dsn="localhost:1521/XE")
cursor = connection.cursor()
input_id = input('{:^60} : '.format(itemList[0]))
input_pwd = input('{:^60} : '.format(itemList[1]))
cursor.execute("""SELECT mem_id, mem_pwd FROM memberT01
WHERE mem_id = :i and mem_pwd = :p""",
i = input_id, p = input_pwd)
row = cursor.fetchone()
if row is None:
print(f'\n{"*** ID 또는 패스워드를 확인해주세요 ***":^88}')
return
else:
print('\n *** {0}님 환영합니다. ***'.format(input_id))
connection.commit()
cursor.close()
connection.close()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# 회원가입 ==1 # 회원가입시 아이디가 있으면 회원가입 불가 코드
def newM():
connection = cx_Oracle.connect(user="hr", password="hr", dsn="localhost:1521/XE")
cursor = connection.cursor()
new_id = input('{:^60} : '.format(itemList[0]))
new_pwd = input('{:^60} : '.format(itemList[1]))
new_name = input('{:^60} : '.format(itemList[2]))
new_email = input('{:^60} : '.format(itemList[3]))
new_phone = input('{:^60} : '.format(itemList[4]))
new_addr = input('{:^60} : '.format(itemList[5]))
cursor.execute("""INSERT INTO memberT01
VALUES(:id1,:pwd1,:name1,:email1,:phone1,:addr1)""",
id1 = new_id,pwd1 = new_pwd,name1 = new_name ,email1 = new_email ,phone1 = new_phone,addr1 = new_addr)
connection.commit()
cursor.close()
connection.close()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# 회원탈퇴 ==5
def delM():
connection = cx_Oracle.connect(user="hr", password="hr", dsn="localhost:1521/XE")
cursor = connection.cursor()
input_id = input('{:^60} : '.format(itemList[0]))
input_pwd = input('{:^60} : '.format(itemList[1]))
cursor.execute("""SELECT mem_id, mem_pwd FROM memberT01
WHERE mem_id = :i and mem_pwd = :p""",
i = input_id, p = input_pwd)
row = cursor.fetchone()
if row is None:
print(f'\n{"*** ID 또는 패스워드를 확인해주세요 ***":^88}')
return
else:
print('\n *** {0}님 회원탈퇴를 진행하겠습니다. ***'.format(input_id))
del_id = input('{:^60} : '.format(itemList[0]))
del_pwd = input('{:^60} : '.format(itemList[1]))
cursor.execute("""DELETE FROM memberT01
WHERE mem_id = :q and mem_pwd = :w""",
q = del_id, w = del_pwd)
print(f'\n{"*** 정상적으로 회원 탈퇴되셨습니다. ***":^88}') # 만약이게 아닐때 어떻게 해야될까?
connection.commit()
cursor.close()
connection.close()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# 회원수정 ==4
def upd():
connection = cx_Oracle.connect(user="hr", password="hr", dsn="localhost:1521/XE")
cursor = connection.cursor()
print(f'\n{"*** 본인인증을 확인 하겠습니다 ID 와 비밀번호를 입력해주세요 ***":^88}')
print("")
input_id = input('{:^60} : '.format(itemList[0]))
input_pwd = input('{:^60} : '.format(itemList[1]))
cursor.execute("""SELECT mem_id, mem_pwd FROM memberT01
WHERE mem_id = :i and mem_pwd = :p""",
i = input_id, p = input_pwd)
row = cursor.fetchone()
if row is None:
print(f'\n{"*** ID 또는 패스워드를 확인해주세요 ***":^88}')
return
else:
print('\n *** {0}님 회원수정를 진행하겠습니다. ***'.format(input_id))
upd_id = input('{:^60} : '.format(itemList[0]))
upd_pwd = input('{:^60} : '.format(itemList[1]))
upd_name = input('{:^60} : '.format(itemList[2]))
upd_email = input('{:^60} : '.format(itemList[3]))
upd_phone = input('{:^60} : '.format(itemList[4]))
upd_addr = input('{:^60} : '.format(itemList[5]))
cursor.execute("""UPDATE MEMBERT01
SET MEM_NAME = :u_name, MEM_PWD =:u_pwd, MEM_EMAIL = :u_email, MEM_PHONE = :u_phone, MEM_ADDR = :u_addr
WHERE MEM_ID = :u_id""",
u_id =upd_id, u_pwd = upd_pwd, u_name = upd_name, u_email = upd_email, u_phone = upd_phone, u_addr = upd_addr)
print(f'\n{"*** 회원정보가 수정되었습니다. ***":^88}')
connection.commit()
cursor.close()
connection.close()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
#코드 시작
while True:
Title(menu)
Mchoice = input('\n{:^40}'.format("메뉴의 번호를 입력해주세요:"))
print()
if Mchoice in menuChk:
if Mchoice == '1':
print(f'{"SignUp !":^96}\n')
newM()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
elif Mchoice == '2':
print(f'{"LogIn !":^96}\n')
Log()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
elif Mchoice == '3':
print(f'{"MemberList !":^95}\n')
print("")
mlist(itemList)
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
elif Mchoice == '4':
print(f'{"Modify !":^95}\n')
print("")
upd()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
elif Mchoice == '5':
print(f'{"DELETE Chk !":^96}\n')
print("")
delM()
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
elif Mchoice == '9':
print("")
print(f'{"시스템을 종료 합니다":^88}')
exit()
else:
print(f'{"잘못된 번호입니다":^88}.')