Ho un problema che hanno tutti arrivati a questo punto.
Ho creato una pagina per modificare il proprio profilo, e quindi le password uguali per modificare nel database mysql.
Ho 2 problemi:
1) sta nel fatto che se le password sono diverse, e modifico un campo me lo cambia lo stesso.
2) sta nel fatto che nonostante ci sia il controllo dell'email non lo legga e quindi salva nel db anche se è scritto "123".
Grazie a chi riuscirà ad aiutarmicodice:<? session_start(); if(!isset($_SESSION["username"])){ include("error.htm"); die(); } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <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 tutti i campi richiesti!'); else formulaire.submit(); } function verifForm(formulaire) { if(formulaire.password2.value == "") alert('Non hai compilato tutti i campi richiesti!'); else formulaire.submit(); } function verifForm(formulaire) { if(formulaire.email.value == "") alert('Non hai compilato tutti i campi richiesti!'); else formulaire.submit(); } </SCRIPT> <script language="Javascript" type="text/javascript"> function controllapassword(modulo) { if (modulo.password.value == "") { alert("Errore: inserire una password!") modulo.password.focus() return false } if (modulo.password.value != modulo.password2.value) { alert("La passord inserita non coincide con la prima!") modulo.password.focus() modulo.password.select() return false } return true } </script> <style> body { background-image:URL(images/sfondocn.JPG); background-attachment:fixed; } </style> <style type="text/css"> A{text-decoration:none} </style> <title>Profilo <? echo "".$_SESSION["username"].""; ?> - Forix Forum</title> </head> <body background="images/sfondocn.JPG" text="red" vlink="white" link="white"> <? $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 controllapassword(this)" onSubmit="return ControllaMail()"> <input type="hidden" name="done" /> <font size="5">Modifica Profilo</font></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()';"> </p> Altre informazioni:</p> Nome:</p> <input name="nome" value="<? $query=mysql_query("SELECT * FROM pannellomod WHERE username = '".$user."'"); $res=mysql_fetch_assoc($query); echo $res['nome']; ?>"></p> Cognome:</p> <input name="cognome" value="<? $query=mysql_query("SELECT * FROM pannellomod WHERE username = '".$user."'"); $res=mysql_fetch_assoc($query); echo $res['cognome']; ?>"></p> <?php $result = mysql_query(" select * from pannellomod WHERE username = '".$user."' LIMIT 1") or die(mysql_error()); $righi = mysql_fetch_array($result); $ciao=$righi['annonascita']; $data_di_nascita_utente = $ciao; echo '<select name="annonascita">'; echo '<option>Data di nascita</option>'; for($i=1910; $i<=date('Y'); $i++) { $select = ''; if($i == $data_di_nascita_utente) { $select = ' selected'; } echo ' <option value="'.$i.'"'.$select.'>'.$i.'</option>'; } echo '</select>' ?> Tuo Genere:</p> Maschile:<input type="radio" name="Sex" value="1"> Femminile:<input type="radio" name="Sex" value="2"> Indirizzo MSN:</p> <input name="messenger" value="<? $query=mysql_query("SELECT * FROM pannellomod WHERE username = '".$user."'"); $res=mysql_fetch_assoc($query); echo $res['messenger']; ?>"></p> Indirizzo Skype:</p> <input name="skype" value="<? $query=mysql_query("SELECT * FROM pannellomod WHERE username = '".$user."'"); $res=mysql_fetch_assoc($query); echo $res['skype']; ?>"></p> <font size="1"><input type="submit" value=" OK " onClick="verifForm(this.form)"></font> <input type="button" value="Annulla" onclick="document.location = 'java-script:history.back()';"> <font size="2">Dov'e' scritto * il campo e' obbligatorio.</font></p></form> <div> </div> <div> </div> <div> </div> <div> </div><div> </div><div> </div> </center> <div align="center"> </div> <p align="center"><font color="red">Copyright © 2010 <a href="contattaci.php">Luigi Parziale (ixol)</a> & DarkLeo - Forix Creations</font></p> </body> </html>

Rispondi quotando