Visualizzazione risultati 1 fino 8 di 8

Discussione: Pagine identiche con url differenti per utente

  1. #1
    draccan non è connesso Neofita
    Data registrazione
    01-05-2006
    Messaggi
    13

    Smile Pagine identiche con url differenti per utente

    Salve ragazzi , è la prima volta che scrivo sul forum e sto lavorando ad un progetto che mi sta dando un problema . Premetto che il php me lo sono sempre studiato un po' da solo e che è la prima volta in vita mia che devo far sì che diversi utenti connessi insieme accedano ad un profilo proprio . Insomma la pagina del profilo è già impostata solo che vorrei che ogni volta che una persona clicchi su " Profilo " gli entri nel proprio profilo con un url proprio .. Non so proprio come fare ..

    Avevo sentito parlare di diverse soluzioni , io me ne sono inventata una e chiedo un parere : faccio sì che un utente si registra e quando si registra si crea una pagina del profilo che chiamiamo profilo.php solo che ad ogni utente si crea una pagina di nome profiloNOMEUTENTEGGDINASCITAMESEANNO.php e quando clicca su "Profilo" si apre il proprio profilo . L'ultimo passo potrei risolverlo combinando i tag <a href .. </a> e mettendo dentro all'url una variabile che trattiene la sessione dal momento che lui si connette ogni volta e che lo reindirizza al suo profilo unico .

    Ora come ora se vi interessa nel sito ho una bacheca dove si può parlare stile FB , una chat ( da sistemare) il logout , la sezione video , e il pulsante " Profilo" dove puoi caricare 3 foto dal pc che vengono gestite da un DB e la sezione della modifica del profilo .

    Detto ciò se io sono connesso con un mio amico ed io modifico il profilo ovviamente quando lui clicca su "Profilo" trova ad esempio le stesse foto e info caricate da me .

    A Parole semplici: vorrei che lui cliccando su profilo avesse una pagina identica alla standard del profilo ma con le foto caricate da lui e le sue info .

    Grazie a chi mi aiuta , a presto .
    Ultima modifica di draccan : 17-02-2012 alle ore 21.54.32

  2. #2
    L'avatar di alemoppo
    alemoppo è connesso ora Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,144

    Predefinito

    Di solito, si salvano le varie informazioni nel database.
    Per il login, è comodo usare le sessioni (vedi ad esempio qui).

    Io ad esempio, salvo nelle sessioni il nick al momento del login. Quindi, ad esempio, dentro $_SESSION['utente'] ho il nick.

    Potresti fare una pagina che con il parametro GET mostri il profilo dell'utente passato (tramite il parametro get {o post}.

    Un esempio (ovviamente ci sono molti modi: di solito io lo faccio così {ehm, non l'ho mai fatto, ma se mi capitasse di farlo...}):
    Codice PHP:
    <?php
    session_start
    ();
    if(!isset(
    $_GET['utente']))
    die(
    'Nessun utente da visualizzare');
    if(!isset(
    $_SESSION['utente']))
    die(
    'Prima devi loggarti');

    if(
    $_SESSION['utente'] == $_GET['utente'])
    echo
    'benvenuto, '.$_GET['utente'];
    else echo
    'Stai visitando il profilo di '.$_GET['utente'];

    //mostra nome, immagini, ... di $_GET['utente'] (ad esempio, prelevando i dati dal database)

    ?>
    Ciao!
    Ultima modifica di alemoppo : 17-02-2012 alle ore 22.16.34

  3. #3
    draccan non è connesso Neofita
    Data registrazione
    01-05-2006
    Messaggi
    13

    Predefinito

    ok Grazie 1000 ! Io uso già le sessioni e ho tutto in un DB , quando l'utente effettua il login si va a trovare in una pagina bacheca che è la stessa per tutti infatti quando lui scrive qualcosa o pubblica un link compare sulla bacheca di tutti , in pratica ogni cosa dove clicca è a disposizione di tutti , solo che per quanto io possa dire " Sei entrato nel profilo di Pinco Pallino " alla fine mi va sempre ad entrare nell'unica pagina di profilo creata . Mi spiego meglio : Ci sarebbe un modo per far sì che ogni volta che un utente si registri venga creata una pagina del profilo solo sua ? Senza che io a mano vado a creargli la pagina del profilo perchè se si dovessero iscrivere ad esempio 1000 utenti un giorno io dovrei fare copia e incolla 1000 volte del profilo dando un url proprio per ogni utente . Insomma c'è un comando che faccia questa operazione " Crea nuova pagina identica a profilocomune.php che si chiami profiloNOMEUTENTE.php " ?

    Grazie 1000 :)


    Edit: Per esempio il mio profilo su fb è uguale a quello di tutti in forma html e php tranne per le foto e le info , l'url infatti è http://www.facebook.com/guzzopaul?ref=tn_tnmn ! Nella mia pagina invece chiunque clicca su profilo va a finire per ora sullo stesso profilo con la stessa url che sarebbe http://www.********.***/profilo.php . Ho letto da qualche parte che sarebbe utile modificare il file "htaccess" e ho letto qualcosa su url dinamici . Grazie ancora :)
    Ultima modifica di draccan : 18-02-2012 alle ore 14.11.49

  4. #4
    L'avatar di alemoppo
    alemoppo è connesso ora Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,144

    Predefinito

    Citazione Originalmente inviato da draccan Visualizza messaggio
    Ci sarebbe un modo per far sì che ogni volta che un utente si registri venga creata una pagina del profilo solo sua ? Senza che io a mano vado a creargli la pagina del profilo perchè se si dovessero iscrivere ad esempio 1000 utenti un giorno io dovrei fare copia e incolla 1000 volte del profilo dando un url proprio per ogni utente . Insomma c'è un comando che faccia questa operazione " Crea nuova pagina identica a profilocomune.php che si chiami profiloNOMEUTENTE.php " ?
    Sì: ad esempio puoi usare la copy(), però ti consiglio non non farlo.

    Provo a rispiegartelo:
    La pagina (fisica) "profilo.php" deve essere soltanto una. A seconda dell'utente, carichi le proprie informazioni dal database. Quindi nel database, dovresti salvare non solo nick/password/.. , ma anche ad esempio l'immagine di sfondo del suo profilo, il testo nel suo profilo....

    Ad esempio, mettiamo che la pagina di default sia:

    Codice HTML:
    <html>
    </head>
    <title>Profilo di Guido</title>
    </head>
    <body>
    Testo che ha scritto guido...
    </body>
    </html>
    In PHP verrebbe fuori:
    Codice PHP:
    <html>
    </head>
    <title>Profilo di <?php echo $_GET['utente'] ?></title>
    </head>
    <body>
    <?php
    $mysql_query
    ('SELECT testo FROM tabella WHERE utente=\''.mysql_real_escape_string($_GET['utente']).'\'');
    //stampo il testo prelevato...
    ?>
    </body>
    </html>
    ...ovviamente l'esempio è brutale, ma penso si capisca il concetto...

    Ciao!

  5. #5
    draccan non è connesso Neofita
    Data registrazione
    01-05-2006
    Messaggi
    13

    Predefinito

    okok ! Proverò a far così ! Mi sa che richiederà molto tempo ma sarà divertente ! Grazie 1000 :)

  6. #6
    draccan non è connesso Neofita
    Data registrazione
    01-05-2006
    Messaggi
    13

    Predefinito

    Grandi ho riletto tutto più volte e ho capito ! Se a qualcuno può essere utile anche questa guida : http://www.allwebfree.it/php_get.php !

    Grazie a tutti !
    Ultima modifica di draccan : 04-03-2012 alle ore 23.35.12

  7. #7
    gooo non è connesso Neofita
    Data registrazione
    13-07-2011
    Messaggi
    4

    Predefinito

    registra una sessione nel momento in cui viene effettuato login, per esempio: $_SESSION['utente'] = username, il valore username lo prendi direttamente dal POST del login....poi passi ad una seconda pagina dove con una query mysql vai ad estrarre dal database l'ID dell'utente (chiave univoca con autoincremento) che dovresti aver creato nella tabella utenti...ora con un header() indirizzi l'utente alla pagina user.php (pagina per gli utenti).
    in pratica:
    //login
    $_SESSION['utente'] = $username;
    $array =mysql_fetch_array(mysql_query("SELECT * FROM utenti WHERE username='$username'"));

    $id = $array['ID'];

    header("Location: user.php?id='$id'");

    ogni utente verrà reindirizzato alla pagina user.php?id=proprioid....e tu tramite get andrai a visualizzare nella pagina tutti i dati utente in base all'id (chiave univoca)

  8. #8
    Guest

    Predefinito

    Prova qui

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •