La vedo un po' contorta...
Io sistemerei così
login.php
Codice PHP:
<?php
session_start();
require_once('mysqlconnect.php');
if($_SERVER['REQUEST_METHOD'] == "POST"){
mysql_select_db($database, $users);
// Occhio se hai magic_quotes attivo, mysql_real_escape_string potrebbe farti un doppio escape
$id = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
// Devi controllare se l'utente inserisce lo username e password giuste, non solo lo username
$sql = "SELECT * FROM users WHERE username='$id' AND password='$password'";
$resource = mysql_query($sql, $users);
if(mysql_num_rows($resource) > 0){
// Il Dbms ha trovato una corrisponenza nel db, quindi il login è ok
$row = mysql_fetch_assoc($resource);
// Salvo i dati in sessione
$_SESSION['utente'] = array("id"=>$row['id'], 'username'=>$row['username']);
// Rimando l'utente nella pagina di benvenuto dell'utente, o dove vuoi
header("Location: home_user.php");
}else{
$message = "Username & password errate!";
}
}
?>
<html>
<head><title>Login</title>
<?php
if($message) echo $message
?>
<form method="POST">
<input> ...
</form>
...
Poi nelle pagine dove è richiesto il login basta che controlli se nella sessione è settato $_SESSION['utente']
PS: Resta valido il consiglio di passare a PDO, che è più sicuro