Salve a tutti, non sapevo se postare qui o in php perchè riguarda un pò entrambi
Ho un problema che mi sta semplicemente facendo uscire pazzo
Io ho una pagina web destinata alla modifica del profilo ed uso un database con php per modificarlo.
Il mio problema però sta nel fatto che gli errori fatti in javascript sono finti, ossia anche se avviene un errore modifica lo stesso nel database! Quindi vorrei sapere come fare in modo che se non ci siano errori avvengano le modifiche nel db.
Inoltre un altro problema che ho è che se le i campi password e controlla password sono uguali non escono errori, ma in realtà il controllo va fatto sia sul db che con il javascript.
Infine (lo so sto chiedendo molto, ma sto avendo molti problemi) vorrei sapere se è possibile unire i javascript presenti nella pagina.
Posto il codice solo di quello che interessa:
Codice PHP:<html>
<head>
<script language="javascript" type="text/javascript">
function controllaform(f) {
if ((f.password.value==f.password2.value) && (f.email.value==f.conf_email.value)) {
return true;
}
else {
alert("Le due password non coincidono!");
return false;
}
}
</script>
<SCRIPT language="JavaScript">
function ControllaMail()
{
EmailAddr = document.modulo.email.value;
Filtro = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
if (Filtro.test(EmailAddr)) {
return true;
}
else {
alert("Controlla l'indirizzo di e-mail inserito");
document.modulo.email.focus();
return false;
}
}
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
function verifForm(formulaire)
{
if(formulaire.password.value == "")
alert('Non hai compilato il campo password!');
else
formulaire.submit();
}
function verifForm(formulaire)
{
if(formulaire.password2.value == "")
alert('Non hai compilato il campo conferma password!');
else
formulaire.submit();
}
function verifForm(formulaire)
{
if(formulaire.email.value == "")
alert('Non hai compilato il campo e-mail!');
else
formulaire.submit();
}
</SCRIPT>
</head>
<body>
<?
$host="miohost";
$user="miouser";
$password="miapass";
$database="miodb";
mysql_connect($host,$user,$password)or die("connessione non riusciuta");
mysql_select_db($database)or die("Database non trovato");
$user = $_SESSION["username"];
$querystr = "SELECT * FROM pannellomod WHERE username = '".$user."'";
if ($_GET['azione'] == "esegui"){
mysql_query("
UPDATE pannellomod
SET nome = '" . $_POST['nome'] . "', cognome = '" . $_POST['cognome'] . "', email = '" . $_POST['email'] . "',
annonascita = '" . $_POST['annonascita'] . "',
genere = '" . $_POST['genere'] . "', skype = '" . $_POST['skype'] . "'
WHERE username = '".$user."'
");
if (mysql_error()){ echo mysql_error();}
}
?>
<form name="modulo" id="test" action="profilo.php?azione=esegui" method="post" onsubmit="return ControllaMail(this) && controllaform(this) && verifForm(this);">
<input type="hidden" name="done" />
[b]<font size="5">Modifica Profilo</font>[/b]</p>
<font size="3">Nickname:</font></p>
<input name="nickname" readonly value=<?
echo "".$_SESSION["username"]."";
?>>
Password: *</p>
<input type="password" name="password"value=<?
echo "".$_SESSION["password"]."";
?>></p>
Inserisci nuovamente password: *</p>
<input type="password" name="password2"></p>
Nuova Password:</p>
<input type="password" name="newpasword"></p>
E-mail:</p>
<input name="email" value="<?
$querymail=mysql_query("SELECT * FROM pannellomod WHERE username = '".$user."'");
$res=mysql_fetch_assoc($querymail);
echo $res['email'];
?>"></p>
<input type="submit" value=" OK " onClick="verifForm(this.form)">
<input type="button" value="Annulla" onclick="document.location = 'java-script:history.back()';">
</form>
</body>
</html>


