Originariamente inviato da Vicar
Beh, inanzitutto nella sezione ti memorizzi l'id dell'utente, una volta che hai l'id il profilo dell'utente lo crei prendendo i dati dal database dell'id..

Mi spiego meglio..

Ci sarà una pagina profile.php che verifica che sei connesso e, se sei connesso prenda i dati dell'id salvato nella sessione creata al momento del login.
..non riesco a capire scusa, così è troppo generico so che con le sessioni mi porto dietro l'id dell'utente loggato, ma non ho capito come fare impostare la condizione if

posto un po di codice(ripreso uguale dalla guida)
home.php
Codice PHP:
<?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=".$_GET['uid'];
}else    
$link '';
?>
<html>
    <head>
        <title>Home Page</title>
    </head>
    <body>
    <div align="center">
        <table cellspacing="2">
            <tr>
                <td>[url="home.php<?=$link?>"]Home Page[/url]</td>
                <td>[url="pagina1.html<?=$link?>"]Prima Pagina (pubblica)[/url]</td>
                <td>[url="pagina2.php<?=$link?>"]Seconda Pagina (privata)[/url]</td>
                <td>[url="pagina3.php<?=$link?>"]Terza Pagina (privata)[/url]</td>
                <td>[url="pagina4.php<?=$link?>"]Quarta Pagina (permessi)[/url]</td>
                <td>[url="registrati.php"]Registrati[/url]</td>
            </tr>
        </table>
        <?php
        
switch($status){
            case 
AUTH_LOGGED:
            
?>
        [b]Sei loggato con il nome di <?=$user["name"];?> [url="logout.php<?=$link?>"]Logout[/url][/b]
            <?php
            
break;
            case 
AUTH_NOT_LOGGED:
            
?>
        <form action="login.php<?=$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;
        }
        
?>
    </div>
    </body>
</html>
e questa è la pagina login.php
Codice PHP:
<?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'$uidtime()+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;
}
?>
Ecco ora non riesco a capire come muovermi su questo file per richiamare "l'area personale" dell'utente loggato..
Codice PHP:
<?php
include_once("include/config.php");
include_once(
"include/auth.lib.php");

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

if(
$status == AUTH_LOGGED){
    
$msg 'Contenuto della pagina';
}else    
$msg 'Non hai i diritti per visualizzare la pagina';
?>
<html>
    <head>
        <title>Pagina tre</title>
    </head>
    <body>
    [b]<font color="red" size="5"><?=$msg;?></font>[/b]
    </body>
</html>
Se scrivo " echo $user['name'];" e sono loggato mi restituisce il nome dell'utente loggato(e fin qui perfetto) ma se io ora volessi anche un caricamento dell'area dell'utente, io ho pensato a qualcosa del tipo:

include_once("".$user['name'].".txt");
però in questo modo non avrei nessuna protezione del file di testo e un qualsiasi utente loggato(forse anche non loggandosi) può(modificando la barra degli indirizzi) accedere all'area riservata e quindi al file di testo--->ciò non andrebbe bene..

Spero di essermi spiegato un po meglio