Seguendo la guida sulla gestione utenti con php di html.it http://freephp.html.it/articoli/view...olo.asp?id=132 ricostruito la gestione utenti. Tutto funziona perfettamente se lavoro direttamente sulle pagine del tipo pippo.php, ma utilizzo il tutto in un include di una'altra php e ho un problema, che credo possa dipendere da due cose:

o

questo form non invia $link

<form action="index.php?voce=login<?php print ($link);?>" method="post">

posto tutto il codice di seguito

<?php
include_once("include/config.php");
include_once("include/auth.lib.php");

list($status, $user) = auth_get_status();

if($status == AUTH_LOGGED & auth_get_option("TRANSICTION METHOD") == AUTH_USE_LINK){
$link = '&uid='.urlencode($_GET['uid']);
}else $link = '';
?>
<html>
<head>
<title>Home Page</title>
</head>
<body>
<div align="center">
<table cellspacing="2">
<tr>
<td><a href="index.php?voce=editofferte<?=$link?>">
Inserimento offerte speciali</a></td>
</tr>
</table>
<?php
switch($status){
case AUTH_LOGGED:
?>
Sei loggato con il nome di <?=$user["name"];?> Logout
<?php
break;
case AUTH_NOT_LOGGED:
?>
<form action="index.php?voce=login<?php print ($link);?>" method="post">
<table cellspacing="2">
<tr><td>Nome Utente:</td>
<td><input type="text" name="uname"></td>
</tr>
<tr>
<td>Password:</td><td><input type="password" name="passw"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="action" value="login"></td>
</tr>
</table>
</form>
<?php
break;
}
?>



oppure

la pagina di login non reinderizza o non riceve $link quando è in inclusa (naturalmente con
l'include) in un'altra pagina php.

vi posto la pagina di seguito:

<?php
include_once("include/config.php");
include_once("include/auth.lib.php");

list($status, $user) = auth_get_status();

if($status == AUTH_NOT_LOGGED){
$uname = strtolower(trim($_POST['uname']));
$passw = strtolower(trim($_POST['passw']));

if($uname == "" or $passw == ""){
$status = AUTH_INVALID_PARAMS;
}else{
list($status, $user) = auth_login($uname, $passw);
if(!is_null($user)){
list($status, $uid) = auth_register_session($user);
}
}
}

switch($status){
case AUTH_LOGGED:
header("Refresh: 5;URL=home.php");
echo '<div align="center">Sei gia connesso ... attendi il reindirizzamento</div>';
break;
case AUTH_INVALID_PARAMS:
header("Refresh: 5;URL=home.php");
echo '<div align="center">Hai inserito dati non corretti ... attendi il reindirizzamento</div>';
break;
case AUTH_LOGEDD_IN:
switch(auth_get_option("TRANSICTION METHOD")){
case AUTH_USE_LINK:
header("Refresh: 5;URL=home.php?uid=".$uid);
break;
case AUTH_USE_COOKIE:
header("Refresh: 5;URL=home.php");
setcookie('uid', $uid, time()+3600*365);
break;
case AUTH_USE_SESSION:
header("Refresh: 5;URL=home.php");
$_SESSION['uid'] = $uid;
break;
}
echo '<div align="center">Ciao '.$user['name'].' ... attendi il reindirizzamento</div>';
break;
case AUTH_FAILED:
header("Refresh: 5;URL=home.php");
echo '<div align="center">Fallimento durante il tentativo di connessione ... attendi il reindirizzamento</div>';
break;
}
?>


Mi scuso per la lunghezza del messaggio ma ritenvo fondamentale la pubblicazione del codice per cercare di risolvere il problema.

Naturalmente vi sono già eternamente grato se anche solo avete la pazienza di leggerlo un attimo.

Come detto il problema non credo che sia trascendentale... ma sono un pò alle prime armi.

Ancora grazie

Lorenzo