Si! La stampo e copio e incollo!
In pratica lato admin c'è un pulsante "genera pass".
In questa prima fase l'admin comunicherà la pass all'utente, successivamente vorrei che al "genera pass" la password venisse inviata via mail solo all'utente.
Il codice completo e funzionante è questo!
Codice PHP:
$str = $_POST["nominativo"];
$caratteri = array ("-", "_", "!", "$");
$sigle = array ("GIO", "VAN", "gio", "van");
$c1 = array_rand($caratteri, 1);
$s1 = array_rand($sigle, 1);
$str = str_replace(' ', '', $str);
$str = trim($str);
if ((strlen($str))>=8) {
$str = substr($str,0,7);
$str = $str . $caratteri[$c1];
$str = $str.rand (1, 9);
$str = $str . rand (0,9);
// $str = $str . $sigle[$s1].rand (0,9);
} else if ((strlen($str))<=3) {
$str = $str . $caratteri[$c1];
$str = $str.rand (26, 36);
$str = $str . $sigle[$s1];
} else {
//$str = $str . $caratteri[$c1];
//$str = $str.rand (10, 25). $sigle[$s1] . $caratteri[$c1];
$str = $str. $caratteri[$c1]. $sigle[$s1].rand (0, 9);
}
echo "<p>La password per l'utente è:<br>". $str."</p><br><br><br>";
$str = sha1($str);
$query = "UPDATE utenti SET `password` = ? WHERE idutente = ".$_POST["id"];
$result = $connessione->prepare($query);
$result->bind_param('s', $str);
$result->execute();
$result->close();
Quello che vedete commentato se lo scommento genera una pass troppo lunga e ho il problema.