Visualizzazione risultati 1 fino 18 di 18

Discussione: come creare una registrazione

  1. #1
    Guest

    Post come creare una registrazione

    cari amici
    cercando su altervista non ho trovato e non sono riuscito ha trovare quello che mi serve...
    io ci ho provato molte volte ma niente
    allora vi spiego...
    devo creare una registrazione per il mio sito se qualcuno mi puo aiutare e vi do anche i vari punti che deve rispettare


    1 Nome
    2 password
    3 ripeti password
    4 generatore di password se l'utente non sa cosa mettere
    5 Email
    6 Ripeti Email
    7 Sito Web
    8 (risposta segreta per modificare la pass se si puo fare se no niente)
    9 il codice captcha

    poi ke viene inviata l mail al utente con l indirizzo per verificare se e stato lui ad registrarsi o no per fare attivare l'account

    un asterisco vicino ad ogni punto che spieghi cosa vuol dire

    e un panello di controllo per l'utente per modificare il proprio profilo la pass immagine personale e altro...

    non mi dite cosa gia pronte come dev login o altro
    spero di non aver chiesto troppo

    ringrazio tutti quelli ke mi vorrano dare una mano

  2. #2
    Guest

    Predefinito

    cari amici
    cercando su altervista non ho trovato e non sono riuscito ha trovare quello che mi serve...
    io ci ho provato molte volte ma niente
    su questo ankio ho provato e ti do la soluzione ke sta anke nel mio sito (questo)
    devo creare una registrazione per il mio sito se qualcuno mi puo aiutare e vi do anche i vari punti che deve rispettare


    1 Nome
    2 password
    3 ripeti password
    4 generatore di password se l'utente non sa cosa mettere
    5 Email
    6 Ripeti Email
    7 Sito Web
    8 (risposta segreta per modificare la pass se si puo fare se no niente)
    9 il codice captcha
    l'8 e il 9 nn te li so fare...
    poi ke viene inviata l mail al utente con l indirizzo per verificare se e stato lui ad registrarsi o no per fare attivare l'account
    questa si...
    e un panello di controllo per l'utente per modificare il proprio profilo la pass immagine personale e altro...
    invece questa no...
    allora ti dico tutto, crei i seguenti files:
    questo è del db:
    Codice:
    CREATE TABLE `utenti` (   
    `user_id` mediumint(8) NOT NULL auto_increment,   
    `username` varchar(25) NOT NULL default '',   
    `user_password` varchar(32) NOT NULL default '',   
    `user_email` varchar(255) NOT NULL default '',   
    PRIMARY KEY (`user_id`)   
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;
    poi config.php
    Codice PHP:
    <?php
    // edita i parametri sottostanti
    $dbms = 'mysql';
    $dbhost = 'localhost';
    $dbname = 'nome_database';
    $dbuser = 'utente_database';
    $dbpasswd = 'password_database';
    // non cambiare più nulla !!
    $db = mysql_connect($dbhost, $dbuser, $dbpasswd);
    mysql_select_db($dbname, $db);
    ?>
    poi registration.php
    Codice PHP:
    <?
    //include header.php
    include('../site/header.php');
    //collegamento dal database
    require_once('../site/config.php');
    //controlla se l'utente è già loggato
    if($_SESSION['logged_in'] == 1)
    {
    //reindirizzamento alla home page : edita il parametro con il tuo indirizzo
    header('Location: http://www.miosito.com');
    }
    //l'utente non è loggato
    else {
    //il modulo non è stato ancora inviato
    if(isset($HTTP_POST_VARS['submit']))
    {
    //controlla dati relativi all'username
    if(!$_POST['username']) die('Attenzione : il campo username è vuoto');

    //array di caratteri non ammessi
    $bad = array('.' , ',' , '/' , '`' , ';' , '[' , ']' , '-',
    '*', '&', '^', '%', '$', '#', '@', '!', '~', '+', '(', ')',
    '|', '{', '}', '<', '>', '?', ':', '"', '=');
    //controlla lunghezza username
    $len = strlen($_POST['username']);

    //sostituisce caratteri non ammessi
    $_POST['username'] = str_replace($bad, '', $_POST['username']);
    $dato = $_POST['username'];
    //se le lunghezze sono differenti sono stati utilizzati caratteri non ammessi
    if(strlen($dato) != $len) {
    die(
    'Hai usato dei caratteri non validi nel campo username. Puoi usare solo lettere, numeri e il trattino basso _ !!');
    }
    //Controlla se l'username è già utlizzato nel database...
    $q2 = mysql_query("SELECT * FROM `utenti` WHERE `username` = '".$_POST['username']."'");
    $q3 = mysql_fetch_object($q2);

    if(
    $q3->username == $_POST['username']) {
    die(
    'Siamo spiacenti ma l\'username "'.$q3->username.'" è già attivo nel nostro database<br /><br />
    Per favore ne scelga un altro.'
    );
    }
    //controlla dati relativi alla password
    if(!$_POST['password']) {
    die(
    'Errore: Il campo password risulta non compilato');
    }
    if(!
    $_POST['verify_password']) {
    die(
    'Errore: Il campo verfica password risulta non compilato');
    }
    if(
    $_POST['password'] != $_POST['verify_password']) {
    die(
    'Errore: Le passwords non corrispondono.');
    }
    //Inserisce il nuovo membro nel database
    $insert ="INSERT INTO `utenti` (username, user_password, user_email) VALUES ('".$_POST['username']."',

    '"
    .md5($_POST['password'])."', '".$_POST['email']."')";

    $insert2 = mysql_query($insert);
    if(!
    $insert2) die(mysql_error());
    //Edita i parametri sottostanti con i dati relativi al tuo sito
    $yoursite = 'Il tuo sito';
    $webmaster = 'Il tuo nickname';
    $youremail = 'La tua mail';
    // Fine modifica
    //Passa i dati per il login a variabili da mandare via mail all'utente
    $_POST['username'] = $nome_utente;
    $_POST['password'] = $tua_password;
    // Edita l'oggetto e il messaggio
    $subject = "Ti sei registrato con successo su $yoursite...";
    $message = "Gentile $username, da adesso sei un utente registrato su $yoursite.
    Per usufruire dei nostri servizi devi semplicemente inserire questi dati nel login apposito:
    Username:
    $nome_utente
    Password:
    $tua_password

    Conserva queste informazioni o meglio ancora stampa questa mail.

    Grazie infinite,
    $webmaster";
    // Spedisce la mail
    mail($_POST['email'], $subject, $message, "From: $yoursite <$youremail>\nX-Mailer:PHP/" . phpversion());
    echo(
    'Registrazione avvenuta, Benvenuto !!!<br />
    Le informazioni che ci hai fornito ti sono state spedite via mail.'
    );
    }
    //il modulo non è stato ancora compilato
    else {
    ?>
    <table>
    <form action="<? $_SERVER['PHP_SELF']; ?>" method="post" name="signup" id="signup">
    <tr>
    <td width="285">Username: <br />
    (sono permessi solo lettere e numeri)<br /></td>
    <td width="180"><input type="text" id ="username" name="username" value="" maxlength="30" />
    <br /></td>
    </tr>
    <tr>
    <td>Password:</td>
    <td><input type="password" id="password" name="password" value="" maxlength="30" />
    <br />
    (minimo 6
    caratteri)</td>
    </tr>
    <tr>
    <td>Verifica Password:</td>
    <td><input type="password" id="verify_password" name="verify_password" value="" maxlength="30" />
    <br />
    </td>
    </tr>
    <tr>
    <td>Email:</td>
    <td><input type="text" id="email" name="email" value="" size="30" />
    <br /></td>
    </tr>
    <tr>
    <td>Invia il modulo per completare la registrazione</td>
    <td><input type="submit" id="submit" name="submit" value="Invia" /></td>
    </tr>
    </form>
    </table>
    <?
    } //fine utente non loggato
    } //fine modulo non inviato
    ?>
    poi header.php
    Codice PHP:
    <?
    //edita i parametri con i tuoi dati
    //none cookies
    $nome_cookie = "login_cookie";
    //tempo scadenza cookie espresso in secondi
    $scadenza = 3600;
    //percorso del cookie, di default valido per tutte le cartelle del sito
    $percorso = '/' ;
    //dominio del cookie, rispettare la forma espressa nell'esempio
    $dominio = '.tuodominio.com';
    //non modificare più nulla
    //invia dati al buffering
    ob_start();
    //apre sessione
    session_start();
    //connessione database
    require_once('config.php');
    //controlla cookies se non siamo loggati
    if ($_SESSION['logged_in'] != 1 && isset($_COOKIE['login_cookie']))
    //preleva username e password dal cookies
    {
    list(
    $user, $pass) = explode('[]', $_COOKIE['login_cookie']);
    //preleva username e password dal database
    $qu = mysql_query("SELECT `user_password` FROM `utenti` WHERE `username` = '".addslashes($user)."'");
    if (
    mysql_num_rows($qu) == 1) {
    $passw = mysql_fetch_object($qu);
    //confronta i due dati
    if ($passw->user_password == $pass)
    //se i dati coincidono apre la sessione utente
    {
    $_SESSION['logged_in'] = 1;
    $_SESSION['username'] = $user;
    $_SESSION['password'] = $pass;
    $username = $_SESSION['username'];
    }
    }
    }
    //non siamo loggati -> modalità ospite
    if(!isset($_SESSION['username']) && !isset($_SESSION['password'])) {
    $_SESSION['logged_in'] = 0;
    $username = "Guest";
    }
    ?>

  3. #3
    Guest

    Predefinito

    scusa ma nn mi faceva entrare + di 140000 righe
    poi login.php
    Codice PHP:
    <?
    include('../site/header.php');
    require_once(
    '../site/config.php');
    //controlla se la sessione è già attiva
    if(isset($_SESSION['username']) && isset($_SESSION['password'])) {
    //in tal caso ci reindirizza verso la homepage del sito o dovunque vogliate
    header('Location: http://www.isola-atlantide.com/demo/prova_connessione.php');
    }
    //fine sessione attiva

    //se il modulo è stato inviato
    if(isset($_POST['submit'])) {
    //campo username vuoto
    if(!$_POST['username']) die("Errore: Devi inserire il tuo username per continuare");
    //campo password vuoto
    if(!$_POST['password']) die("Errore: Devi inserire la tua password per continuare.");
    //se abbiamo spuntato il campo ricordami crea il cookie
    if(isset($_POST['ricordami'])) {
    $joined =''.$_POST['username'].'[]'.md5($_POST['password']).'';
    setcookie($nome_cookie, $joined, time()+$scadenza, $percorso, $dominio);
    }

    //verifica utente
    $get_user = mysql_query("SELECT * FROM `utenti` WHERE username = '".$_POST['username']."' AND

    user_password = '"
    .md5($_POST['password'])."'");
    $q = mysql_fetch_object($get_user);
    if(!
    $q) die("Login fallito ! Verifica se hai inserito correttamente il tuo username e password.");
    //login avvenuto
    //imposta le variabili della sessione
    $_SESSION['logged_in'] = 1;
    $_SESSION['username'] = $_POST['username'];
    $_SESSION['password'] = $_POST['password'];
    session_write_close();
    //reindirizza verso la tua homepage
    header('Location: http://www.tuosito.com');

    } else {
    //visualizza il form login
    ?>
    <form name="login" method="post" action="<? $_SERVER['PHP_SELF']; ?>">
    <table cellpadding="5">
    <tr>
    <td>
    <b>Username:</b>
    <input type="text" id="username" name="username">
    </td>
    </tr>
    <tr>
    <td>
    <b>Password:</b>
    <input type="password" id="password" name="password">
    </td>
    </tr>
    <tr>
    <td>
    <b>Ricordami </b><input type="checkbox" name="ricordami[]" value="ON" class="check">
    </td>
    </tr>
    <tr>
    <td align="center">
    <input type="submit" value="Invia" name="submit" id="submit" class="button">
    <input type="reset" value="Resetta"class="button">
    </td>
    </tr>
    </table>
    </form>
    <?
    }
    ?>
    poi logout.php
    Codice PHP:
    <?
    include('../site/header.php');
    if (
    $_SESSION['logged_in'] = 0)
    {echo
    "sei già disconesso";}
    else {
    setcookie($nome_cookie, $joined, time() - 1, $percorso, $dominio);
    session_destroy();
    header('Location: http://www.tuosito.com');
    }
    ?>
    poi x generare la password,
    Codice PHP:
    /***********************************/
    /* Generazione casuale ID */
    /***********************************/

    function Generatore() {

    //Defininione e valorizzazione array delle frasi
    $frasi=array ('itorinonhannogenitori','provadipassword','testnumero2','nelmezzodelcammindinostravita',
    'unonessunocentomila','loscheletronellarmadio','Nosferatueilmaestrodellanotte',
    'sediconutellatucosapensi','mapoiperchehoscrittoquestoscript','odioilmonopoliodimicosoft',
    'adoroimangagiapponesi','stephenkingeungrandescrittore','lamiaragazzamenadamorire',
    'selamuccafamupercheiltopononfato','maisettenanieranoveramentesette','ilsignoredeglianellinonsivedemai',
    'costantinounuomosenzasenso','sperochequestefrasipossanobastare','altrimentisenepossonoaggiungerealtre');

    //Definizione e inizializzazione delle variabili di password
    //e carattere casuale
    $s_password="";
    $carattere="";
    $totchar="10"; //numero totale caratteri casuali

    //Funzione di generazione seme per il numero random
    //utilizzando i microsecondi
    function crea_seme()
    {
    list(
    $usec, $sec) = explode(' ', microtime());
    return (float)
    $sec + ((float) $usec * 100000);
    }

    //Inizializzazione generatore numeri random
    mt_srand(crea_seme());

    //Generazione numero casuale per recupero frase dall'array
    $valore_chiave=mt_rand(0,count($frasi)-1);

    //Ciclo per la generazione della password
    //Il numero di caratteri conponenti la password
    //vanno specificati nella variabile $totchar
    for ($i=0;$i<=$totchar;$i++)
    {
    //Genere un valore casuale sulla base della
    //lunghezza della frase selezionata
    $valorecasuale = mt_rand(0,strlen($frasi[$valore_chiave]));

    //Se viene incontrato uno spazio, questo viene sostituito con il carattere "_"
    if (substr($frasi[$valore_chiave],$valorecasuale,1)==" ")
    {
    $carattere="_";
    }
    else
    {
    //Generazione di numero casuale per decidere se il carattere
    //deve essere convertito in maiuscolo
    if (mt_rand(0,10)>5)
    {
    //Conversione del carattere prelevato dalla frase in maiuscolo
    $carattere=strtoupper(substr($frasi[$valore_chiave],$valorecasuale,1));
    }
    //Sostituzione di alcune lettere con numeri
    elseif (substr($frasi[$valore_chiave],$valorecasuale,1)=="a") {$carattere="4";}
    elseif (
    substr($frasi[$valore_chiave],$valorecasuale,1)=="i") {$carattere="1";}
    elseif (
    substr($frasi[$valore_chiave],$valorecasuale,1)=="e") {$carattere="3";}
    elseif (
    substr($frasi[$valore_chiave],$valorecasuale,1)=="o") {$carattere="0";}
    elseif (
    substr($frasi[$valore_chiave],$valorecasuale,1)=="g") {$carattere="6";}
    elseif (
    substr($frasi[$valore_chiave],$valorecasuale,1)=="s") {$carattere="2";}
    elseif (
    substr($frasi[$valore_chiave],$valorecasuale,1)=="z") {$carattere="5";}
    else {
    $carattere=substr($frasi[$valore_chiave],$valorecasuale,1);}

    }

    $id.=$carattere;
    }

    //composizione della password
    return $id;

    }
    Basta richiamare la funzione per ottenere il risultato:
    Codice:
    $id = Generatore();  
      
    echo $id;
    spero ke ti vadano bn, io l'ho provati e vanno bn...
    cmq x le altre cose devi conoscere bn il php...
    modifica dentro i file, x esempio: 'http://tuosito.com' va modificato con il tuo sito ecc...
    allora: i seguenti files vanno nella cartella 'site':
    config.php e header.php
    poi questi nella 'utente':
    registration.php, login.php e logout.php
    ciao!
    Ultima modifica di harrypale : 18-10-2008 alle ore 19.07.40 Motivo: mi ero dimenticato

  4. #4
    Guest

    Predefinito

    il pannello di controllo per l'utente per modificare il proprio profilo la pass immagine personale e altro... non funziona
    e poi non compare il nome e la pass e dell utente e il link per attivarlo

    e poi cosa vuol dire

    header('Location: http://www.isola-atlantide.com/demo/...one.php&#39;);

  5. #5
    Guest

    Predefinito

    ti reindirizza alla tua homepage (mettila al posto suo...)
    a me funziona tutto...
    Ultima modifica di harrypale : 18-10-2008 alle ore 19.54.47

  6. #6
    Guest

    Predefinito

    ma poi l'utente ha un profilo ho altro che puo fare chi si registra...

  7. #7
    Guest

    Predefinito

    questo lo devi creare tu x proteggere le pagine

  8. #8
    Guest

    Predefinito

    scrivo di nuovo i punti che meglio cosi faccio capire cosa mi serve....

    1) nickname (inserisce in nickname e vede che non ce gia registrato con quel nome)

    2) Sesso (maschile o femminile)

    3) Scegli la password (digita la password caratteri fino ha 6)
    *Complessità password (fa vedere tipo immmagine la complessita della password) ''tipo quello di msn per farlo capire''
    Digita nuovamente la password (digita la password caratteri fino ha 6 e controlla se la stessa messa prima)
    generatore di password (genera password per chi non sa cosa mettere)

    4) Email (controlla se l'mail messa e giusta)
    ripeti Email (controlla se l'mail messa e la stessa messa prima)

    5) Sito Web o forum (si puo lasciare anche vuoto)

    6) (risposta segreta per modificare la pass se si puo fare se no niente)

    7) il codice captcha (controlla se il codice messo e giusto, genera immagini casuali e se sbagliato riaggiorna di nuovo tutto)



    dopo aver compilato tutto dovrebbe inviare un mail al utente con scritto
    esempio.

    nome del sito e ecc....

    nickname:nome
    password:pass
    email:mail@mail.it

    e link per attivare il contatto...


    poi dovrebbe generare una pagina per il contatto che lui puo modificare tipo password immagini e altro....
    poi l'utente puo creare una pagina tutta sui con un avatar nickname di dove e altro
    tipo quella del Pannello forum

    e solo gli utenti registrati possono vedere il profilo del utente



    mi serve poi da mettere nel sito un modulo per connetersi subito al profilo
    esempio.

    nickname (controlla nel sito il nome)
    password (controlla al nome associato la password se e giusta)
    codice captcha (controlla se il codice messo e giusto genera immagini e se sbagliato riaggiorna di nuovo tutto)
    pulsante entra che fa entrare nel profilo del utente se e giusto...


    so che e molto complicato ma so che per le menti di altervista penso che si possa fare
    se non capite qualcosa dite

    deve essere il profilo del utente tipo questo di altervista ....

    se qualcuno mi puo aiutare ha crearlo tutto questo lo ringrazio

  9. #9
    Guest

    Predefinito

    usa allora un cms e lo modifiki, è troppo difficile...

  10. #10
    L'avatar di matt93
    matt93 non è connesso Utente
    Data registrazione
    01-09-2008
    Messaggi
    241

    Predefinito

    cerca su internet "devlogin" troverai il relativo script dai laboratori Dev.
    lo trovo ottimo per i neofiti in quanto molto semplice e facilmente modificabile....

  11. #11
    Guest

    Predefinito

    ho fatto quello scritto in questa pagina http://forum.it.altervista.org/php-m...strazione.html ma non mi arriva la mail di conferma con i dati anke se mi sembra che abbia registrato ugualmente l'account.
    poi non capisco come si proteggono le pagine

  12. #12
    feraligatorpage non è connesso Utente giovane
    Data registrazione
    19-11-2005
    Messaggi
    32

    Predefinito

    Io ho provato ma mi dice Table 'my_feraligatorpage.utenti' doesn't exist
    che devo fare?

  13. #13
    Guest

    Predefinito anche a me esce la stessa cosa

    ho anche io questo problema ma cosa devo fare?

  14. #14
    Guest

    Predefinito

    la tabella utenti esiste nel DB?

  15. #15
    Guest

    Predefinito come si fa?

    come devo inserirla nel db?

    io ho copito il codice e lo incollato in un gfile .txt poi una volta caricato su altervista lo rinominato cambiando .txt con .sql

    poi non so spiegatemi voi se ho sbagliato grazie...!!!

    :)
    Ultima modifica di igames : 15-02-2009 alle ore 19.10.17

  16. #16
    Guest

    Predefinito

    Magari con una preghierina ci riesci

    Devi eseguire la query:
    Codice:
    CREATE TABLE `utenti` (   
    `user_id` mediumint(8) NOT NULL auto_increment,   
    `username` varchar(25) NOT NULL default '',   
    `user_password` varchar(32) NOT NULL default '',   
    `user_email` varchar(255) NOT NULL default '',   
    PRIMARY KEY (`user_id`)   
    );

  17. #17
    dborraccino non è connesso Utente giovane
    Data registrazione
    25-07-2010
    Messaggi
    39

    Predefinito

    a me dà questo errore...che faccio?

    Fatal error : require_once () [ function.require ]: Failed opening required '.. / site / config.php' (include_path ='.:') in / Membri online / dborraccino / registration.php on line 5

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

    Predefinito

    È vietato riesumare vecchi post.

    Apri un nuovo topic inerente al problema, riportando il codice.
    Comunque sembra che lo script non riesca a trovare il file da includere. Evita di usare cartelle che contengono uno spazio. Al massimo, usa un underscore "_".

    Ciao!

Regole di scrittura

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