Salve, sono nuovo del forum e sto cercando di imparare a programmare in php. Vorrei fare un sito con login. Ho visto alcuni tutorial su youtube; Sono stati abbastanza chiari e ho provato a rifarlo anche io (seguendo comunque il codice del tutorial). Però quando provo ad aprire la pagina dove effettuare il login ho questo errore: Notice: Undefined index: azione in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\soho\loginadmin.php on line 32
Il codice nella pagina di login è questo (in particolare è questa la parte di codice che da l'errore: $p = $_GET['azione']; )
Tuttavia se accedo alla pagina dal link del menu riesco ad accedere alla pagina senza problemi. Vi allego anche il codice del menu:
Potreste aiutarmi? Grazie
Il codice nella pagina di login è questo (in particolare è questa la parte di codice che da l'errore: $p = $_GET['azione']; )
PHP:
<?php
include 'config.php';
connect();
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<link rel="stylesheet" type="text/css" href="stile.css">
<title>MySiteWeb | login</title>
<script type="text/javascript" src="js/jquery-1.3.2.js"></script>
<script type="text/javascript" src="js/jquery.validate.js"></script>
<script type="text/javascript" src="js/controlloregistrazione.js"></script>
</head>
<?php
include 'header.php';
?>
<div id="wrapper">
<?php
$p = $_GET['azione'];
//login.php?azione=login;
if($p == "login"){
if(!isset($_POST['invia'])){ ?>
<form method="post" action="#" 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 compilare tutti i campi";
} else {
//$password_cript = md5($password);
$recuperadati = mysql_query("SELECT * FROM admin WHERE username = '$username' AND password = '$password'");
$verificadati = mysql_num_rows($recuperadati);
if($verificadati == 1){
//apro la sessione
$sessione = mysql_fetch_array($recuperadati);
$_SESSION['admin'] = $sessione['username'];
echo "Login effettuato con successo!";
// Con header() reindirizzo la pagina dopo il login
header("Refresh: 2; URL= gestioneadmin.php");
} else {
echo "Dati non presenti nel database!";
}
}
}
// login.php?azione=logout
} elseif ($p == "logout"){
session_destroy();
echo "Logout effettuato con successo!";
header("Refresh: 2; URL= index.php");
}
?>
</div>
</div>
</body>
</html>
Tuttavia se accedo alla pagina dal link del menu riesco ad accedere alla pagina senza problemi. Vi allego anche il codice del menu:
PHP:
<?php if(isset($_SESSION['utente'])){
echo "Ciao <strong>".$_SESSION['utente']."</strong>";
echo "Ciao <strong>".$_SESSION['luogo']."</strong>";
} else {
echo "Ciao,<a href='loginadmin.php?azione=login' class='login'>accedi</a>";
} ?>
Potreste aiutarmi? Grazie
Ultima modifica di un moderatore: