1. 程式人生 > >服務端客戶端連接以及登陸用戶的增刪改

服務端客戶端連接以及登陸用戶的增刪改

傳輸控制協議 修改 span lis use 用戶數據 rev add 用戶數

TCP傳輸控制協議 穩定,相對於UDP而言要慢一些,Web服務器都是使用TCP

UDP用戶數據包協議 不穩定

TCP客戶端與服務端的連接

# client.py
from socket import *
clientSocket = socket(AF_INET,SOCK_STREAM)
clientSocket.connect(("192.168.52.1",8897))

while True:
    user = input("請輸入用戶名:")
    clientSocket.sendall(user.encode())

    passwd = input("請輸入密碼:
") clientSocket.sendall(passwd.encode()) serdata1 = clientSocket.recv(1024) print(str(serdata1, "utf8")) serdata2 = clientSocket.recv(1024) if (serdata2): while True: data = input("你可以進行以下操作:1.增加用戶2.刪除用戶3.修改用戶>>>") clientSocket.sendall(data.encode())
if data == 1: newuser = input ("請輸入要創建的用戶名:") newpasswd = input("請輸入創建用戶的密碼:") newstr = newuser + + newpasswd clientSocket.sendall(newstr.encode()) serdata3 = clientSocket.recv(1024) print(str(serdata3, "
utf8")) elif data == 2: deluser = input("請輸入要刪除的用戶名:") clientSocket.sendall(deluser.encode()) serdata4 = clientSocket.recv(1024) print(str(serdata4, "utf8")) elif data == 3: reuser = input("請輸入要修改的用戶名:") clientSocket.sendall(reuser.encode()) repasswd = input("請輸入修改後的密碼:") clientSocket.sendall(repasswd.encode()) serdata5 = clientSocket.recv(1024) print(str(serdata5, "utf8")) else: break clientSocket.close()








# server.py
from socket import *
ip_port=("",8897)

serSocket = socket(AF_INET,SOCK_STREAM)
serSocket.bind(ip_port)

serSocket.listen(5)
num = open(‘data.txt‘,‘a+‘,encoding = ‘utf-8‘)
num.seek(0)
fileWords = num.read().split()
while True:
newSocket,address = serSocket.accept()
while True:
recvData1 = newSocket.recv(1024).decode()
if fileWords[0] == recvData1:
recvData2 = newSocket.recv(1024).decode()
if fileWords[1] == recvData2:
server_response = ("登陸成功\n")
newSocket.sendall(bytes(server_response, "utf8"))
i = 1
else:
server_response = ("密碼錯誤")
newSocket.sendall(bytes(server_response, "utf8"))
i = 0
else:
recvData2 = newSocket.recv(1024).decode()
server_response = ("用戶名錯誤")
newSocket.sendall(bytes(server_response, "utf8"))
i =0
if(i):
serve = ("True")
newSocket.sendall(bytes(serve, "utf8"))
Data = newSocket.recv(1024).decode()
if Data == ‘1‘:
newline = newSocket.recv(1024).decode()
num.write(‘\n‘ + newline)
num.close()
print(str(num))
resop = ("創建成功")
newSocket.sendall(bytes(resop,"utf8"))
elif Data == ‘2‘:
deluser = newSocket.recv(1024).decode()
a = (fileWords.index(deluser))
del fileWords[a]
del fileWords[a]
print(fileWords)
file = open(‘data.txt‘, ‘w‘)
for i in fileWords:
file.write(i)
file.write(" ")
file.close()
resop = ("刪除成功")
newSocket.sendall(bytes(resop, "utf8"))
elif Data == ‘3‘:
reviseuser = newSocket.recv(1024).decode()
a = (fileWords.index(reviseuser))
repasswd = newSocket.recv(1024).decode()
fileWords[a+1] = repasswd
print(fileWords)
file = open(‘data.txt‘, ‘w‘)
for i in fileWords:
file.write(i)
file.write(" ")
file.close()
resop = ("修改成功")
newSocket.sendall(bytes(resop, "utf8"))

newSocket.close()
serSocket.close()

服務端客戶端連接以及登陸用戶的增刪改