Come scritto nel titolo ho bisogno di un duplice aiuto, ho scritto questa pagina per modificare i dati degli utenti nel database.
Codice PHP:
<?php
include("../script/config.php");
$cookie_read = explode("|", base64_decode($admin));
$adminid = $cookie_read[0];
$db = @mysql_connect($db_host, $db_username, $db_password, $prefix);
if($db)
{
if(!(@mysql_select_db($databse_name, $db)))
{
die("Errore nella selezione del database. Vi preghiamo di contattare il WebMaster");
}
}
else
{
die("Errore nella connessione. Vi preghiamo di contattare il WebMaster");
}
$sql = mysql_query("SELECT fullname, email, admin_name, password, adminid FROM ". $prefix ."_admin WHERE adminid= '$adminid'");
if(!($sql))
{
die('Errore: ' . mysql_errno() . ': ' . mysql_error());
}
while($row = mysql_fetch_array($sql, MYSQL_ASSOC))
{
echo '<form action="" method="post">';
echo '<table align="center" border="0" width="80%" id="table1" cellpadding="2">';
echo '<tr>';
echo '<td height="27"><strong>Nome Completo:</strong></td>';
echo '<td height="27"><input type="text" name="fullname" value="' . $row['fullname'] . '" size="58"></td>';
echo '</tr>';
echo '<tr>';
echo '<td height="27"><strong>NickName</strong></td>';
echo '<td height="27"><strong>'.$row['admin_name'].'</strong></td>';
echo '</tr>';
echo '<tr>';
echo '<td height="27"><strong>E-Mail</strong></td>';
echo '<td height="27"><input type="text" name="email" value="' . $row['email'] . '" size="58"></td>';
echo '</tr>';
echo '<tr>';
echo '<td height="27"><strong>New Password</strong></td>';
echo '<td height="27"><input type="password" name="password1" size="58"></td>';
echo '</tr>';
echo '<tr>';
echo '<td height="27"><strong>Re-Entry Password</strong></td>';
echo '<td height="27"><input type="password" name="password2" size="58"></td>';
echo '</tr>';
echo '<tr>';
echo '<td> </td>';
echo '<td>';
echo '<input type="hidden" value="' . $row['adminid'] . '" name="adminid">';
echo '<input type="submit" value="' . _SAVECHANGES . '" name="edit_profile">';
echo '<input type="submit" value="' . _DELETE . '" name="delete_profile">';
echo '</td>';
echo '</tr>';
echo '</table>';
echo '</form>';
}
if(!empty($_POST['edit_profile']))
{
$fullname = trim(htmlspecialchars($_POST['fullname']));
$admin_name = trim(htmlspecialchars($_POST['admin_name']));
$email = trim(htmlspecialchars($_POST['email']));
$password1 = trim(htmlspecialchars($_POST['password1']));
$password2 = trim(htmlspecialchars($_POST['password2']));
$id = (int)$_POST['id'];
if ($_POST['password1'] != $_POST['password2'])
{
echo 'Errore: Password non coincidenti';
}
elseif(!(mysql_query("UPDATE wtech_admin SET fullname = '$fullname', email = '$email' WHERE adminid = '$adminid'")))
{
die('Errore: ' . mysql_errno() . ': ' . mysql_error());
}
else{
die('Profilo modificato con successo, ora verrete diconessi');
}
}
?>
E dovrei aggiungere una parte di codice che ho già scritto che serve a verificare che non esistano altri profili con la stessa mail:
Codice PHP:
$sql_email_check = $db->sql_query("SELECT email FROM ".$prefix."_admin WHERE email='$email'");
$email_check = $db->sql_numrows($sql_email_check);
if(($email_check > 0)){
$exist_msg= "<font class=\"error\">"._ALREADY_TAKEN."</font>";
if($email_check > 0){
$email_taken_err = $exist_msg;
unset($email);
}
}
E se la mail esiste:
Codice PHP:
if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)){
echo "<center><font class=\"error\">"._ERROR_INVALID_EMAIL."</font></center>\n";
}
Solo che non esattamente dove posizionarli.
Come seconda cosa questa pagina elebora utenti precedentemente caricati da un altro script e mi servirebbe che criptasse le password nello stesso modo altrimenti non riesco più ad accedere potreste aiutarmi?
Grazie dell'aiuto e della disponibilità.