Ritornare alla pagina di amministrazione amministra.php e nella sezione menu aggiungere il link per richiamare lo script di modifica dei dati degli utenti. Questa operazione serve per aggiornare o per rettificare dati relativi all'utente, compreso l'assegnazione di una nuova password.
<body>
<div id="intestazione">Amministrazione del Test</div>
<div id="Menu">
<p><a href="eliminaDB.php">Cancella</a> il data base</p>
<p><a href="creaUtente.php">Creazione</a> nuovo Utente</p>
<p><a href="gestUtenti.php">Modifica</a> Utenti registrati</p>
<p><a href="creaDB.php">Creazione</a> completa del database</p></div>
Lo script estrae tutti i record della tabella studenti, elencando prima i docenti e poi gli studenti, in ordine alfabetico crescente.
Ogni record della tabella studenti viene inserito in un form, le cui caselle vengono riempite con i campi del record.
alla fine di ciascun record vengono inseriti i pulsanti per salvare le modifiche effettuate sul record, eliminare tutto il record oppure assegnare una nuova password all'utente.
<html>
<head>
<title></title>
</head>
<body>
<?php
require("account.php");
$pf = fopen("tmp.txt","w");
$con = mysql_connect($Sweb,$utente,$pw);
if (!$con)
die('Impossibile connettersi al Server Web: ' . mysql_error());
$nomeDB = "iTest";
mysql_select_db($nomeDB, $con);
$query ="select * from studenti order by Privilegi, Cognome";
$rs = mysql_query($query);
fwrite($pf, "<p>Modificare i dati degli utenti, poi premere il pulsante Modifica.</p>");
fwrite($pf, "<p>premere il pulsante Elimina per cancellare un utente</p>");
fwrite($pf, "<table border=1>");
fwrite($pf, "<tr class=\"Testa\"><td>Cognome</td><td>Nome</td><td colspan='3'>data di Nascita</td><td>e-mail</td><td>utente</td><td>nuova password</td><td>Modifica</td><td>Cancella</td><td>cambia password</td></tr>");
while ($record = mysql_fetch_array($rs)) {
fwrite($pf, '<tr><form name= "modifica" method="post" action="alteraUtenteinDB.php">');
fwrite($pf, '<td><input type="hidden" name="ID" value="'.$record['IDstud'].'" />');
fwrite($pf, '<input type="text" name="cognome" value="'.$record['Cognome'].'" /></td>');
fwrite($pf, '<td><input type="text" name="nome" value="'.$record['Nome'].'" /></td>');
fwrite($pf, '<td><input type="text" name="gg" size="2" value="'.$record['giorno'].'" /></td>');
fwrite($pf, '<td><input type="text" name="mm" size="2" value="'.$record['mese'].'" /></td>');
fwrite($pf, '<td><input type="text" name="aa" size="2" value="'.$record['anno'].'" /></td>');
fwrite($pf, '<td><input type="text" name="mail" value="'.$record['posta'].'" /></td>');
fwrite($pf, '<td><input type="text" name="utente" value="'.$record['utente'].'" /></td>');
fwrite($pf, '<td><input type="text" name="pass" value="" /></td>');
fwrite($pf, '<td><input type="submit" name ="modif" value="modifica" /></td>');
fwrite($pf, '<td><input type="submit" name ="elimn" value="elimina" /></td>');
fwrite($pf, '<td><input type="submit" name ="nuovapw" value="nuova PW" /></td>');
fwrite($pf, '</form></tr>');
}
fwrite($pf, "</table>");
fclose($pf);
header('location:amministra.php');
?>
</body>
</html>
Lo script proposto presenta il seguente form:
in cui compare una riga per ciascun utente inserito nel data base
I tre pulsanti permettono all'amministratore di modificare i campi di ciascun record, di eliminare il record dal data base oppure di modificare solo la password.
<html>
<head>
<title></title>
</head>
<body>
<?php
require("account.php");
$con = mysql_connect($Sweb,$utente,$pw);
if (!$con)
die('Impossibile connettersi al Server Web: ' . mysql_error());
$nomeDB = "iTest";
mysql_select_db($nomeDB, $con);
$ID=$_POST['ID'];
$cog = $_POST['cognome'];
$nom = $_POST['nome'];
$gg = $_POST['gg'];
$mm = $_POST['mm'];
$aa = $_POST['aa'];
$prv = $_POST['privilegi'];
$cls = $_POST['cls'];
$mail = $_POST['mail'];
$utente = $_POST['utente'];
$pass = md5($_POST['pass']);
if (isset($_POST['modif'])) {
$query = "UPDATE studenti ";
$query .= "SET Cognome='".$cog."', ";
$query .= "Nome='".$nom."', ";
$query .= "giorno='".$gg."', ";
$query .= "mese='".$mm."', ";
$query .= "anno='".$aa."', ";
$query .= "posta='".$mail."', ";
$query .= "utente='".$utente."' ";
$query .= "WHERE IDstud='".$ID."'";
mysql_query($query);
}
if (isset($_POST['elimn'])){
$query = "delete from studenti where IDstud='".$ID."'";
mysql_query($query);
}
if (isset($_POST['nuovapw'])){
$query = "UPDATE studenti SET pass='".$pass."', nuova=1 where IDstud='".$ID."'";
mysql_query($query);
}
header('location:gestUtenti.php');
?>
</body>
</html>