2013-03-31 2 views
1

В настоящее время на моей индексной странице есть система входа в систему; который работает нормально. Однако, когда пользователь входит в систему, он направляет их на совершенно новую страницу, которую я не хочу. Как реализовать код так, чтобы;Войти на странице index.html

A) пользователь остается на индексной странице после входа в систему B) На индексной странице отображается приветственное сообщение «Добро пожаловать ....».

index.html

<div id="leftmenu_top"></div> 

       <div id="leftmenu_main"> 
       <div class="login"> 

       <h3>Please login below</h3> 
       <br/> 

       <!--Log in form--> 
       <html> 

<form action='login.php' method='POST'> 
Username: <input type='text' name='username'><br> 
Password: <input type='password' name='password'><br> 
<input type='submit' value='Log in'> 
</form> 
</html> 

login.php

<?php 

session_start(); 

$username = strtolower($_POST['username']); 
$password = strtolower($_POST['password']); 

if ($username&&$password) 
{ 

$connect = mysql_connect("localhost", "root", "") or die("Couldn't connect"); 
mysql_select_db("a&e") or die("Couldn't find db"); 

$query = mysql_query("SELECT * FROM users WHERE username='$username'"); 

$numrows = mysql_num_rows($query); 

if ($numrows==!0) 
{ 
//code to login 

while ($row = mysql_fetch_assoc($query)) 
{ 
    $dbusername = $row['username']; 
    $dbpassword = $row['password']; 
} 

//check to see if they match 
if($username==$dbusername&&$password==$password) 
{ 
echo "Welcome $username"; 
$_SESSION['username']=$username; 

} 
else 
echo "incorrect password"; 

} 
else 
    die("That user does not exist"); 


} 
else 
    die("please provide a username and password"); 

?> 
+1

Вы хотите слишком Google AJAX друга. –

+1

И после этого: контекстное экранирование для базы данных или подготовленные операторы и правильное хеширование паролей. – mario

+0

О, это не звучит весело! –

ответ

0
<?php if(isset($_POST['submit'])){ 

$username = mysql_real_escape_string($_POST['username']); 
$password = mysql_real_escape_string($_POST['password']); 

    $query = "SELECT Username, Password FROM tbluser 
       WHERE Username = '$username' AND Password = '$password'"; 
    $result = mysql_query($query) or die (mysql_error()); 
     if(mysql_num_rows($result) == 0){ 
     echo ' Password/Username is not found'; 
    }else { 
     while($row = mysql_fetch_array($result)) { 
      echo 'You are logged in </br>'; 


     } 
    } 
} 
+0

должен ли я заменить мой PHP этим, чтобы заставить его работать? –

+0

Да, я думаю, вам стоит попробовать – 2013-03-31 23:50:22

+0

Ошибка синтаксиса: неожиданный конец файла в строке 35 –

1

поставил

header('Location: index.php'); 

в нижней части login.php

Кроме того, если вы добавите успех в конце этой ссылки, а затем вызовите его на своей индексной странице, он отобразит нужное сообщение. Измените указанный выше код для

header('Location: index.php?status=success'); 

, а затем в вас индексной странице поместить это, где вы хотите, чтобы сообщение появится

<?php If($_GET['status'] = "success") { ?> 
    <p>This is a welcome message</p> 
<?php } ?> 
+0

как бы я отображался, если логин был успешным, echo welcome (username); –

+0

+1 для усилий :) – samayo

+0

Знаете ли вы, как бы я выбрал имя пользователя на сайте @phpNoOb –

Смежные вопросы