Hur gör jag för att kunna hantera ett loginssytem på samma sida?
Skall förklara vad jag menar.
Använder mig av nedstående kod för att kolla om användaren är inloggad, om han är det kommer det upp hans inloggningsnamn och logga ut, och om han inte är inloggad kommer det upp två stycken ruter där han får skriva in anv/pass.
<?
session_start();
if(isset($_SESSION['username'])) {
echo $_SESSION['username'];
echo ' <A HREF="loggout.php" target=_blank">Loggout</A>';
} else {
echo '<form method="post" action="\login\kontroll.php" size="0">
Användare <input name="username" size="10">
Lösenord <input type="password" name="password" size="10">
<input type="submit" value="login">
</FORM>';
}
?>
Efter detta blir han skickad till en sida som innehåller:
<?php
session_start();
$username = 'root';
$password = '';
$dbName = 'netx';
mysql_connect('localhost', $username, $password) or die (mysql_error());
mysql_select_db($dbName) or die (schyse());
// Skapar variablar
$username = $_POST['username'];
$password = $_POST['password'];
// Öppnar SQL frågan och sätter username = form-value och password = form-value
$SQL = mysql_query("SELECT * FROM login where username = '$username' AND password = '$password'") or die (mysql_error());
$objRS = mysql_fetch_array($SQL);
// Kollar om användaren finns i databasen, om han finns skapas alla Sessioner osv...
if (mysql_num_rows($SQL) <> 0) {
// Skapar sessioner och allt va du vill göra för den specifika användaren
$_SESSION[online] = 1;
$_SESSION['username'] = $username;
// Skickar tillbaka användaren om allt gått okej
Header ('Location: /index.php');
} else {
// Skickar tillbaka användaren om han el. hon skrivit något fel
Header ('Location:login.php');
}
?>
Denna kontrollerar ju om alla nuffror är rätt.
Och sedan skickas man tillbaka till index.php.
Och nu till min fråga, går det att göra så man inte skickas till någon annan sida utan att kontrollen av lösenord osv. sker på samma sida?
Någon som förstår vad jag försöker mena?
Skulle vara tacksam för all hjälp.