Wywołanie parę linijek wyżej tych zmiennych zwraca dobre warto¶ci (miejsce również zaznaczone komentarzem).
<?php if (($_GET['mode']=="") ) { /*$user = $_SESSION['login']; $sql = "SELECT * FROM users WHERE login = '$user'"; $sql = mysql_query($sql); $wyniki = mysql_fetch_assoc($sql); $email = $wyniki['email']; $passwordfromsql = $wyniki['password']; */ { $emailForm = $_POST['newemail']; $oldpasswdForm = $_POST['oldpasswd']; if ($password!=$password2) { } if ( $emailForm =="" OR $oldpasswdForm=="" OR $password=="" OR $password2="" ) { if ($emailForm =="") { $error[] = "Pole email nie może być puste"; } if ($oldpasswdForm=="") { $error[] = "Pole hasło nie może być puste"; } if ($password=="") { $error[] = "Pole nowe hasło nie może być puste"; } if ($password2=="") { $error[] = "Pole powtórz nowe hasło nie może być puste"; } } echo '2Hasło 2: '.$password2.'<br />'; // << W TYM MIEJSCU TA ZMIENNA SIE GUBI nie ma jej tym samym walidacja na dole pokazuje pierdoły bo $password2 jest puste !! if ($password!=$password2) { } if (($password!=$password2) OR validEmail($emailForm) OR validpassword($password) OR tooshort($password) OR toolong($newpasswdForm) OR toolong($emailForm) OR ($md5oldpasswdForm != $passwordfromsql)) // Sprawdza po kolei poprawno¶ć wprowadzonych danych i ewentualnie wyrzuca bł±d prosz±c usera o poprawienie danych { if ($password!=$password2) //Sprawdzanie czy hasło powtórzono poprawnie { $error[] = "Podane hasła nie zgadzaj± się między sob±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±"; } if (validEmail($emailForm)) //Sprawdzanie czy mail ma poprawny format { $error[] = "Nie poprawy adres e-mail prawidłowy format to kowalski@przyklad.pl"; } if (toolong($emailForm)) { $error[] = "Wpisany adres e-mail jest za długi, maksymalna ilo¶ć znaków to 40"; } if (validpassword($password)) { $error[] = "Wpisane hasło musi posiadać conajmniej jedn± mał± oraz duż± literę oraz cyfrę"; } if (tooshort($password)) { $error[] = "Hasło jest za krótkie musi składać się z conajmniej 4 znaków"; } if (toolong($password)) { $error[] = "Hasło jest za długie może się składać z maksymalnie 40 znaków"; } if ($md5oldpasswdForm != $passwordfromsql) { $error[] = "Podane hasło do profilu jest nieprawidłowe"; } } else { $update = "UPDATE `users` SET `email` = '$emailForm', `password` = '$newpasswd' WHERE `login` ='$user'"; $noerror = "Dane zaktualizowane"; } } ?> <br /> <div id="content"> <div class="formregister"> <p>Witaj <span class="user"><? echo $user; ?></span>, znajdujesz się w panelu swojego profilu, możesz zaktualizować tutaj swój adres e-mail jak również zmienić hasło otrzymane po resecie</p> <br /> <form action="" method="post"> <table> <tr> <td>E-mail: </td> </tr> <tr> <td>Hasło :</td> <td><input type="password" name="oldpasswd" /></td> </tr> <tr> <td>Nowe hasło :</td> <td><input type="password" name="newpasswd" /></td> </tr> <tr> <td>Powtórz hasło: </td> <td><input type="password" name="newpasswd2" /></td> </tr> </table> <p> <input type="hidden" name="wyslano" /> <input type="submit" value="Aktualizuj" /> </p> </form> </div> </div> <?php { foreach ($error as $value ) // Pętla tablicowa wypisuj±ca blędy. Błędnych ale nie pustych wpisów w pola { } } { } } ?>