jakis czas temu znalazlem w sieci system logowania i rejestracji i mam problem z zmiana hasla i edytowaniem danych
to sa te funkcje (formularz):
function show_changepassword_form(){ echo '<form action="index.php?com=changepassword" method="post"> <fieldset> <legend>Change Password</legend> <input type="hidden" value="'.$_SESSION['username'].'" name="username"> <dl> <dt> <label for="oldpassword">Aktualne haslo:</label> </dt> <dd> <input name="oldpassword" type="password" id="oldpassword" maxlength="15"> </dd> <dt> <label for="password">Nowe haslo:</label> </dt> <dd> <input name="password" type="password" id="password" maxlength="15"> </dd> <dt> <label for="password2">Potwierdz nowe haslo:</label> </dt> <dd> <input name="password2" type="password" id="password2" maxlength="15"> </dd> </dl> <p> <input name="reset" type="reset" value="Wyczysc"> <input name="change" type="submit" value="Zmien"> </p> </fieldset> </form> '; }
dane personalne
function show_update_form(){ echo '<form action="index.php?com=changeprofile" method="get"> <fieldset><legend>Edycja danych</legend> <label for="data" id="personal">Dane personalne</label> <dl> <dt><label for="name">Imie:</label></dt> <dd><input name="name" type="text" id="name" size="25" maxlength="10" /></dd> <dt><label for="surname">Nazwisko:</label></dt> <dd><input name="surname" type="text" id="surname" size="25" maxlength="30" /></dd> <dt><label for="telephone">Numer telefonu:</label></dt> <dd>+48<input name="telephone" type="text" id="telephone" size="21" maxlength="12"></dd> <dt><label for="gg">Numer Gadu-Gadu:</label></dt> <dd><input name="gg" type="text" id="gg" size="25" maxlength="9" /></dd> </dl> <label for="address" id="personal">Dane adresowe</label> <dl> <dt><label for="street">Ulica:</label></dt> <dd><input name="street" type="text" id="street" size="25" maxlength="30" /></dd> <dt><label for="nrhouse">Numer domu (XX/XX):</label></dt> <dd><input name="nrhouse" type="text" id="nrhouse" size="25" maxlength="6" /></dd> <dt><label for="postcode">Kod pocztowy(XX-XXX):</label></dt> <dd><input name="postcode" type="text" id="postcode" size="25" maxlength="6" /></dd> <dt><label for="province">Województwo:</label></dt> <dd> <select name="province" id="province"> <option>dolnoslaskie</option> <option>kujawsko-pomorskie</option> <option>lubelskie</option> <option>lubuskie</option> <option>lódzkie</option> <option>malopolskie</option> <option>mazowieckie</option> <option>opolskie</option> <option>podkarpackie</option> <option>podlaskie</option> <option>pomorskie</option> <option>slaskie</option> <option>swietokrzyskie</option> <option>warminsko-mazurskie</option> <option>wielkopolskie</option> <option>zachodniopomorskie</option> </select> </dd> </dl> <p> <input type="reset" name="reset" value="Wyczysc" /> <input name="update" type="submit" value="Zapisz" /> </p> </fieldset> </form>'; }
plik zmiany hasla
<?php if (isLoggedIn() == true) { { if (changePassword($_POST['username'], $_POST['oldpassword'], $_POST['password'], $_POST['password2'])) { } else { show_update_form(); } } else { show_update_form(); } } else { // user is not loggedin show_loginform(); } ?>
i zmiany dancyh
<?php if (isLoggedIn() == true) { { if (update($_POST['name'], $_POST['surname'], $_POST['telephone'])) { } else { show_update_form(); } } else { show_update_form(); } } else { // user is not loggedin show_loginform(); } ?>
i plik odpowiedzialny za dzialania dla uzytkownika
##### User Functions ##### function changePassword($username,$currentpassword,$newpassword,$newpassword2){ if (!valid_username($username) || !user_exists($username)) { return false; } if (! valid_password($newpassword) || ($newpassword != $newpassword2)){ return false; } // we get the current password from the database // compare it with the password the user entered, if they don't match, we return false, he needs to enter the correct password. if ($row[0] != sha1($currentpassword.$seed)){ return false; } // now we update the password in the database { return true; }else {return false;} return false; } function user_exists($username) { if (!valid_username($username)) { return false; } { return true; } else { return false; } return false; } function activateUser($uid, $actcode) { $query = sprintf("select activated from login where loginid = '%s' and actcode = '%s' and activated = 0 limit 1", { { return true; } else { return false; } } else { return false; } } function registerNewUser($username, $password, $password2, $email) { if (!valid_username($username) || !valid_password($password) || !valid_email($email) || $password != $password2 || user_exists($username)) { return false; } $code = generate_code(20); { if (sendActivationEmail($username, $password, $id, $email, $code)) { return true; } else { return false; } } else { return false; } return false; } function lostPassword($username, $email) { if (!valid_username($username) || !user_exists($username) || !valid_email($email)) { return false; } $username, $email); { return false; } $newpass = generate_code(8); { if (sendLostPasswordEmail($username, $email, $newpass)) { return true; } else { return false; } } else { return false; } return false; } function update($name, $surname, $telephone){ { return false; } // we get the current password from the database // now we update the personal in the database $query = sprintf("update login set name = '%name', surname ='$surname', telephone = '$telephone' where username = '%s'", mysql_real_escape_string($name), mysql_real_escape_string($surname), mysql_real_escape_string($telephone)); { return true; }else {return false;} return false; }
pomoze mi ktos bo nie wiem co jest nie tak ;/;/ a przy aktualizacji dancyh personalnych pojawia sie dziwny link
Kod
http://www.mija.unl.pl/index.php?name=michu&surname=jastrzebski&telephone=663310897&gg=&street=&nrhouse=&postcode=&province=dolnoslaskie&update=Zapisz
a przy probie zmiany hasla komuniat haslo nie zostalo zmienione licze na Wasze pomysly i duza cierpliwosc dla mnie

pozdrawiam michu9010
a zachowanie skryptu mozna zobaczyc na www.mija.unl.pl
login michu9010 pass michu9010