#!/usr/bin/python3
import cgi
// Definiamo le funzioni necessarie per la scrittura e l'ottenimento dei nomi dal file
def writeName(name):
with open('/var/www/html/list.txt', 'a') as file:
file.write(name + "\n")
def getNames():
names = []
with open('/var/www/html/list.txt', 'r') as file:
for line in file:
names.append(line.strip())
return names
// Otteniamo il valore del nome inserito nel form
form = cgi.FieldStorage()
name = form.getvalue('name', '')
// Scriviamo il nome nel file
if name:
writeName(name)
// Dichiariamo una strigna contentente tutti i nomi del file
nameList = ""
names = getNames()
for name in names:
nameList += f"<li>{name}</li>"
print("Content-type: text/html")
print()
// Stampiamo la pagina HTML di output includendo la lista {nameList}
print(f"""
<!DOCTYPE html>
<html>
<head>
<title>Registro nomi</title>
</head>
<body>
<h1>Registro nomi</h1>
<form method="post" action="registro.cgi">
<label for="name">Inserisci il nome:</label>
<input type="text" id="name" name="name">
<input type="submit" value="Save">
</form>
<hr>
<h2>Nomi nel file:</h2>
<ul>
{nameList}
</ul>
</body>
</html>
""")