|
|
Знаете ли Вы, что ... | |
...для каждой темы существует свой раздел. Изучите структуру форума. Если соответствующего раздела нет, то всегда есть раздел "Разное" :) | |
<< Предыдущий совет - Случайный совет - Следующий совет >> |
Веб программирование Вопросы WEB программирования (Java Script и т.д.) |
Ответить |
|
Опции темы | Опции просмотра |
06.03.2016 10:49 | #21 | |
Павлин
Сообщений: 2,263
+ 594
458/337
– 1,250
976/401
|
Цитата:
Вот код авторизации. <?php session_start(); ?> <?php require_once("includes/connection.php"); ?> <?php if(isset($_SESSION["session_username"])){ // echo "Session is set"; // for testing purposes header("Location: intropage.php"); } if(isset($_POST["login"])){ if(!empty($_POST['username']) && !empty($_POST['password'])) { $username=$_POST['username']; $password=$_POST['password']; $query =mysql_query("SELECT * FROM usertbl WHERE username='".$username."' AND password='".$password."'"); $numrows=mysql_num_rows($query); if($numrows!=0) { while($row=mysql_fetch_assoc($query)) { $dbusername=$row['username']; $dbpassword=$row['password']; } if($username == $dbusername && $password == $dbpassword) { $_SESSION['session_username']=$username; header("Location: intropage.php"); } } else { $message = "Неверный или пароль!"; } } else { $message = "Введите и пароль"; } } ?> <div class="container mlogin"> <div id="login"> <h1>Авторизация</h1> <form name="loginform" id="loginform" action="" method="POST"> <p> <label for="user_login">Номер телефона<br /> <input type="text" name="username" id="username" class="input" value="" size="20" /></label> </p> <p> <label for="user_pass">Пароль<br /> <input type="password" name="password" id="password" class="input" value="" size="20" /></label> </p> <p class="submit"> <input type="submit" name="login" class="button" value="Log In" /> </p> </form> </div> </div> <?php if (!empty($message)) {echo "<p class=\"error\">" . "MESSAGE: ". $message . "</p>";} ?> Видимо он не пишет в куки имя пользователя. <?php session_start(); if(!isset($_SESSION["session_username"])) { header("location:login.php"); } else { ?> <div id="welcome"> <h2>Welcome, <span><?php echo $_SESSION['session_username'];?>! </span></h2> <p><a href="logout.php">Logout</a> Here!</p> </div> <?php } ?> Эта строка выводит в ПК имя пользователя <?php echo $_SESSION['session_username'];?> без проблем. Но этот код не хочет добовлять значение ".$session_username." в поле plnjnakn $session_username=mysql_real_escape_string($_SESSION['username']); $query = mysql_query("UPDATE uch SET plnjnakn=NOW() WHERE username=".$session_username." LIMIT 1"); У вас нет готового решения с нормальной регистрацией и с авторизацией? Написанной на pdo или с простой защитой от sql иньекции. В сети интернет есть готовые решения но опять таки без защиты и норамльнно не работают. |
|
|
Ответить |
Реклама и уведомления | |
06.03.2016 13:27 | #23 |
Дальше уже сами ) Читайте доки, stackoverflow, php.net, это будет полезней чем если мы приведем вам готовый код. Ищите "передача данных из формы в php", "поиск и обновление данных в mysql", и соответствующие темы
__________________
http://lugat.uz/ - переводчики и словари (онлайн, Telegram и Android версии) |
|
|
Ответить |
2 "+" от:
|
06.03.2016 20:35 | #26 |
Я не говорил что лучше, я написал что полезней )
Забесплатно, мало кто захочет ломать голову над вашими задачами
__________________
http://lugat.uz/ - переводчики и словари (онлайн, Telegram и Android версии) |
|
|
Ответить |
"+" от:
|
08.03.2016 23:06 | #27 |
Павлин
Сообщений: 2,263
+ 594
458/337
– 1,250
976/401
|
session_start();
function Fix($str) { $str = trim($str); if(get_magic_quotes_gpc()) { $str = stripslashes($str); } return mysql_real_escape_string($str); } $errmsg = array(); $errflag = false; $username = Fix($_POST['username']); $password = Fix($_POST['password']); if($username == '') { $errmsg[] = 'Ошибка, проверьте логин'; $errflag = true; } if($password == '') { $errmsg[] = 'Ошибка, проверьте пароль'; $errflag = true; } if($errflag) { $_SESSION['ERRMSG'] = $errmsg; session_write_close(); header("location: login.php"); exit(); } С этим кодом вроде теперь не смогут сделать sql инъекцию.Я прав или нужно еще что-то дописать? |
|
Ответить |
|