Проблем с автентикация ( PHP и MySQL ) |
||||
|
||||
|
|
||||
![]() ![]() |
Здравейте първо .. :)
.. та ето го и проблема сега ... имам оная книга, "Изграждане на практически проекти чрез PHP и MySQL" .. стигнах до глава 25, която е точно за автентикацията на потребителите.. та.. проблема е че, кога се изведе формата за регистриране и се въведът съответните неща, които изисква формата - сичко се записва, регистрацията е успешна! проверявам базата данни през самият MySQL прозорец и сичко си е наред - има си криптирана парола и username, точно както трябва да бъде.. обаче като натисна после опцията за смяна на парола и тука вече ми извежда грешка ... слагам кодовете със си4ките му необходими функции, които изисква.. :) След като сме се регистрирали се извиква скрипта member.php, ето го и него: member.php <?php // include function files for this application require_once('bookmark_fns.php'); session_start(); //create short variable names $username = $_POST['username']; $passwd = $_POST['passwd']; if ($username && $passwd) // they have just tried logging in { if (login($username, $passwd)) { // if they are in the database register the user id $HTTP_SESSION_VARS['valid_user'] = $username; } else { // unsuccessful login do_html_header('Problem:'); echo 'You could not be logged in. You must be logged in to view this page.'; do_html_url('login.php', 'Login'); do_html_footer(); exit; } } do_html_header('Home'); check_valid_user(); // get the bookmarks this user has saved if ($url_array = get_user_urls($HTTP_SESSION_VARS['valid_user'])); display_user_urls($url_array); // give menu of options display_user_menu(); do_html_footer(); ?> ... в който накрая има функзия за меню: display_user_menu();, ето я и нея: display_user_menu(); function display_user_menu() { // display the menu options on this page ?> <hr /> <a href="member.php">Home</a> | <a href="add_bm_form.php">Add BM</a> | <?php // only offer the delete option if bookmark table is on this page global $bm_table; if($bm_table==true) echo "<a href='#' onClick='bm_table.submit();'>Delete BM</a> | "; else echo "<font color='#cccccc'>Delete BM</font> | "; ?> <a href="change_passwd_form.php">Change password</a> <br /> <a href="recommend.php">Recommend URLs to me</a> | <a href="logout.php">Logout</a> <hr /> <?php } ... ако изберем Change Password отиваме на change_passwd_form.php, а ето го и него: change_passwd_form.php <?php require_once('bookmark_fns.php'); session_start(); do_html_header('Change password'); check_valid_user(); display_password_form(); display_user_menu(); do_html_footer(); ?> ....... и проблема е точно тук.. проблема е във функцията check_valid_user();, ето я и нея: check_valid_user(); function check_valid_user() // see if somebody is logged in and notify them if not { global $HTTP_SESSION_VARS; if (isset($HTTP_SESSION_VARS['valid_user'])) { echo 'Logged in as '.$HTTP_SESSION_VARS['valid_user'].'.'; echo '<br />'; } else { // they are not logged in do_html_heading('Problem:'); echo 'You are not logged in.<br />'; do_html_url('login.php', 'Login'); do_html_footer(); exit; } } ... което е много странно щото тая функция се използва още 1 път преди това, мисла че при регистрацията беше и си работи!!! а тука когато искам да сменям паролата не иска... незнам от какво може да е .. ако имате някакви1 идей - казвайте че умирам от 1 седмица насам .. :) Поздраваи :) |
|||
|
---------------------------
Потребител от: 15.08.08 | Всички уроци от cob____ | Всички скриптове от cob____ |
||||
|
|
||||
|
||||
|
|
||||
![]() ![]() ![]() |
Направи един
CODE
в тази функция и виж дали изобщо съществува този елемент. Поздрави! |
|||
|
---------------------------
Потребител от: 18.04.04 | Всички уроци от Mutatos | Всички скриптове от Mutatos Търся за почасова надомна работа преводачи от английски език за превод на материали от IT сферата - новини, уроци ...! |
||||
|
|
||||
| 1 посетител чете тази тема (0 потребители и 1 гост) | |
|
Активни потребители:
---
|
|
|
| |










