Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    4

    Autenticazione, assegnare cartella corrispondente ID utente

    salve,

    sono alle prime armi con php, e sono alle prese con un area utenti (php-mysql)
    ho modificato il tutorial http://php.html.it/articoli/leggi/90...nti-con-php/1/
    che funziona perfettamente, ma ho bisogno di apportare ulteriori modifiche.

    mi spiego meglio:
    nel momento in cui l'utente è logato deve accedere ad una cartella personale in cui vedrà una lista di file scaricabili (uploadati dall'amministratore)

    sul file HOME.PHP
    Codice PHP:
    [url="CARTELLA_UTENTE/index.php<?=$link?>"]CARTELLA UTENTE[/url]

    sul file INDEX.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){
        include_once(
    "legge_dir.php");
        
    $errore '';
        }else    
    $errore 'Non hai i diritti per visualizzare la pagina
    Oppure la tua pagina non &eacute; stata ancora abilitata dall amministratore del sistema'
    ;
    ?>
    <html>
        <head>
            <title>PAGINA PRIVATA</title>
        </head>
        <body>
        [b]<font color="red" size="5"><?=$errore;?></font>[/b]
        </body>
    </html>

    sul file LEGGE_DIR.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){
        
    $msg "Cartella Riservata Di " .$user["name"]; 
        echo 
    strtoupper($msg);
    //----------------------------------------------------------------------
    // percorso della directory da leggere
    $directory "5";
    // instanziamo l'oggetto e apriamo la directory
    $d dir($directory);
    // impostiamo un ciclo while() per scorrere tutto il contenuto
    while ($read $d->read()) {
    echo 
    "
    \n

    "
    ;
    // escludiamo . e ..
    if($read != "." && $read != "..") {
    // in questo esempio stampiamo a video i nomi di file e directory
    echo $read "[b]\n";
    }
    }
    // chiudiamo la directory
    $d->close();
    //}
    //----------------------------------------------------------------------    
    }else    
    $msg 'Non hai i diritti per visualizzare la pagina
    Oppure la tua pagina non &eacute; stata ancora abilitata dall amministratore del sistema'
    ;
    ?>
    <html><head>
    <title>PAGINA PRIVATA</title>
    </head>
    <body>
    [b]<font color="red" size="5"><?=$msg;?></font>[/b]
    </body>
    </html>
    quindi, per fare in modo che ogni utente possa accedere alla SUA cartella
    devo creare sul server una serie di cartelle nominate "1", "2", "3", ecc
    poichè il nome della cartella deve coincidere con l'ID dell'utente sul database.

    di conseguenza, su questa stringa:
    Codice PHP:
    // percorso della directory da leggere
    $directory "5"
    mi basta sostituire una variabile che tramite una query
    recupera l'ID corrispondente all'utente e/o alla sessione dell'utente logato.

    inoltre è necessario che i nomi dei file visibili sulla cartella siano linkabili

    come fare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    4
    se ho questa query che mi restituisce l'utente logato:

    Codice PHP:
    $sql 'SELECT user_id FROM `sessioni` LIMIT 0, 30 '
    come faccio a recuperare il valore in una variabile?

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    4
    mi rispondo da solo.. in parte.

    sono riuscito ad aggirare il problema creando una query che restituisce l'ID dell'utente logato (in teoria).

    in pratica invece, mi restituisce gli ID di tutti gli utenti logati, e di conseguenza mi stampa il contenuto di tutte le cartelle di tutti gli utenti logati..

    ecco il codice:

    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 "Cartella Riservata Di " .$user["name"]; 
        echo 
    strtoupper($msg);
    //-------------------------------------------------------------
    // Get all the data from the "example" table
    $result mysql_query("SELECT user_id FROM sessioni WHERE uid"
    or die(
    mysql_error());  
    echo 
    "<table border='1'>";
    echo 
    "<tr>  <th>user_id</th> </tr>";
    // keeps getting the next row until there are no more to get
    while($row mysql_fetch_array$result )) {
        
    // Print out the contents of each row into a table
        
    echo "</td><td>"
        echo 
    "QUESTA E LA DIRECTORY  --- http://www.miosito/utenti/" .$row["user_id"];
        echo 
    "</td></tr>"
    echo 
    "</table>";
    //-------------------------------------------------------------
    // percorso della directory da leggere
    $directory "" .$row["user_id"];
    // instanziamo l'oggetto e apriamo la directory
    $d dir($directory);
    // impostiamo un ciclo while() per scorrere tutto il contenuto
    while ($read $d->read()) {
    echo 
    "<table  border='0' >";
    echo 
    "<tr>";
    echo 
    "<td>"
    // escludiamo . e ..
    if($read != "." && $read != "..") {
    // in questo esempio stampiamo a video i nomi di file e directory
    echo $read "[b]\n";
    echo 
    "</td>";
    echo 
    "</tr>";
    echo 
    "</table>";
    }
    }
    // chiudiamo la directory
    $d->close();
    }
    //----------------------------------------------------------------------    
    }else    
    $msg 'Non hai i diritti per visualizzare la pagina
    Oppure la tua pagina non &eacute; stata ancora abilitata dall amministratore del sistema'
    ;
    //include_once("lettura.php");
    ?>
    qualcuno sa dirmi come modificare la query in modo che mi possa restituire un valore univoco?

    grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.