Salve a tutti ho un problema con un login in php :
Dunque ho 4 file che riportero' qui di seguito e il problema sta nel fatto che quando eseguo il login non mi restituisce "Login effettuato con successo!" ma nulla, invece se sbaglio a scrivere password mi restituisce correttamente "Login errato".
Il primo file che si connette al database : (config.php)
Codice PHP:
<?php
function connect(){
mysql_connect("localhost", "blacktech", "miapassword");
mysql_select_db("my_blacktech");
}
?>
Il secondo è l'header : (header.php)
Codice PHP:
<?php
include 'config.php';
connect();
?>
<html>
<head>
<title>Login</title>
</head>
<body>
<div id="menu">
<ul>
<?php
if(isset($_SESSION['utente'])) {
echo "<li><a href='login.php?azione=logout'>Logout</a></li>";
} else {
echo "<li><a href='login.php?azione=login'>Login</a></li>";
}
?>
</ul>
</div>
Il terzo è l'index : (index.php)
Codice PHP:
<?php
include 'header.php';
?>
<div id="wrapper">
<p>
<?php
if(isset($_SESSION['utente'])){
echo "Ciao <strong>".$_SESSION['utente']."</strong>";
} else {
echo "Ciao, non sei connesso!";
}
?>
</p>
</div>
</body>
</html>
E l'ultimo è login che effettua il login e tutti i controlli : (login.php)
Codice PHP:
<?php
include 'header.php';
session_start();
?>
<div id="wrapper">
<?php
$p = $_GET['azione'];
// Se login.php?azione=login
if($p == "login"){
if(!isset($_POST['invia'])) { ?>
<form method="POST" action="login.php" id="formlogin">
<label for="username">Username</label>
<input type="text" name="username" id="username" /><br>
<label for="password">Password</label>
<input type="password" name="password" id="password" /><br>
<input type="submit" name="invia" id="login" value="Accedi" />
</form>
<?php } else {
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
if($username == "" || $password == "") {
echo "Attenzione devi inserire tutti i campi";
} else {
$password_cript = md5($password);
$recuperadati = mysql_query("SELECT * FROM utenti WHERE username = '$username' AND password = '$password_cript'");
$verificadati = mysql_num_rows($recuperadati);
if($verificadati == 1) {
$sessione = mysql_fetch_array($recuperadati);
$_SESSION['utente'] = $sessione['username'];
echo "Login avvenuto con successo!
<script type="text/javascript">
<!--
setTimeout('location.href="http://blacktech.altervista.org/0xVip/index.php"',2000);
-->
</script>";
} else {
echo "Login Errato!";
}
}
}
// Se login.php?azione=logout
} elseif ($p == "logout") {
session_destroy();
echo "Logout avvenuto con successo!";
header("Refresh: 2; URL=index.php");
}
?>
</div>
</body>
Grazie a chiunque sapra dirmi che errore ho compiuto ed eventuale correzione :)