Visualizzazione risultati 1 fino 13 di 13

Discussione: Login e registrazione senza database

  1. #1
    Guest

    Predefinito Login e registrazione senza database

    Ciao a tutti! ho un sito creato in html e volevo sapere come fare per implementarci un form per la registrazioni utenti e login senza usare un database...Mi spiego meglio l'utente si registra inserisce password, username, mail e poi le viene inviata una mail con un link di attivazione, poi l'utente puo accedere a le pagine protette si puo? O anche cosi l'utente si registra username, mail, e qualche dato opzionale poi le viene inviata una mail con la password generata casualmente,che poi sia modificabile dopo almeno 1 accesso...Grazie in anticipo per l'eventuali risp...

  2. #2
    Guest

    Predefinito

    Senza database si può fare.
    Solo in html (o in javascript) no.
    Devi usare php per memorizzare i dati.

    Facendo qualche ricerca nel forum trovi alcuni esempi.


    Ciao!

  3. #3
    Guest

    Predefinito

    E usando il php devo rifare il sito? Ho cercato nel forum ma non hanno la funzione dell'email di convalida...Grazie

  4. #4
    Guest

    Predefinito

    Citazione Originalmente inviato da step92 Visualizza messaggio
    E usando il php devo rifare il sito?
    tutto no ma visto che devi usare le sessioni devi rinominare ogni file .html con estensione .php e aggiungere session_start(); in cima alla pagina sopra l'head tra i tag <?php ?>
    per l'email di conferma cerca anche su google e se proprio non trovi niente chiedi qui che ti aiutiamo

    ciao ciao

  5. #5
    Guest

    Predefinito

    Su google ho trovato anche cose gia fatte ma non so come fare! Mi potreste aiutare voi?

  6. #6
    Guest

    Predefinito

    Se forse dici dove ti blocchi, cosa non hai capito, quello che hai trovato, ti si può aiutare

  7. #7
    Guest

    Predefinito

    Il problema è che non so niente di php...Non saprei da dove iniziare :-)...Ho chiesto qui sperando che mi dica come fare...Odio chiedere la pappa pronta ma non so proprio come fare confido in voi!

    EDIT: Ho trovato questo http://forum.it.altervista.org/how/5...-di-testo.html si puo modificare per le mie esigenze? Su html.It ho trovato uno script jar login che è proprio quello che mi serve...Mi potete spiega come implementarlo nel mio sito html? Lo script di html non va! Vi prego datemi una mano!
    Ultima modifica di step92 : 22-03-2009 alle ore 16.22.29

  8. #8
    Guest

    Predefinito

    Codice PHP:
    <?php
    if($_GET['step'] == "conf") {
    $username=$_GET['username'];
    $codice=$_GET['codice'];
    $file="utenti.txt";
    $apri=fopen($file, 'r+');
    $contenuto=fread($apri, filesize($file));
    $array=explode(';', $contenuto);
    $log="0";
    foreach(
    $array as $valore) {
    list(
    $username_file, $password, $email, $codice_file, $attivo)=explode(',', $contenuto);
    if(
    $username_file == $username and $codice_file == $codice) {
    $log="1";
    if(
    $attivo == "1") {
    $log="2";
    }
    }
    }
    if(
    $log == '0') {
    echo
    "La combinazione username codice non è corretta! Verifica i dati e riprova!";
    }
    if(
    $log == '1') {
    //codice mancante
    }
    if(
    $log == '2') {
    echo
    "Hai gia confermato l'email!";
    }
    } else {
    if(isset(
    $_POST['submit'])) {//se il form è stato submistato il form
    $username=htmlentities($_POST['username']);//raccolgo i dati inviati via post
    $password=htmlentities($_POST['password']);
    $rip_password=htmlentities($_POST['rip_password']);
    $email=htmlentities($_POST['email']);
    if(
    $username == '' or $password == '' or $email == '') {//se uno o piu campi sono vuoti
    echo"Riempi tutti i campi!";
    } else {
    if(
    $password != $rip_password) {//se le due password sono uguali
    echo"Le due password non sono uguali!";
    } else {
    if(
    strpos($username, ',') !== false or strpos($password, ',') !== false or strpos($email, ',') !== false or strpos($username, ';') !== false or strpos($password, ';') !== false or strpos($email, ';') !== false) {//se i dati contengono ',' o ';'
    echo"Non puoi usare i caratteri '<strong>,</strong>' e '<strong>;</strong>'!";
    } else {
    if (!
    eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $email)) {//se la sintassi dell'email è scorretta
    echo"La sintassi dell'email non &egrave; corretta!";
    } else {
    if(
    strlen($username) < 4) {//se l'username a meno di 4 caratteri
    echo "Username deve avere piu di 4 caratteri!";
    } else {
    if(
    strlen($password) < 4) {//se la password a meno di 4 caratteri
    echo "La password deve avere piu di 4 caratteri!";
    } else {
    $file='utenti.txt';
    $apri=fopen($file, 'a+');//apro il file
    $contenuto=fread($apri, filesize($file));//leggo il file
    $array=explode(';', $contenuto);//divido i dati degli utenti contenuti nel fil di testo
    foreach($array as $valore) {
    list(
    $username_file, $password_file, $email_file, $codice_file, $attivo_file)=explode(',', $valore);//listo i dati dell'utente
    if($username_file == $username) {//se l'uesrname è gia stato scelto
    $user_non_valido++;
    }
    if(
    $email_file == $email) {//se l'email è gia stata usata
    $email_non_valido++;
    }
    }
    if(
    $user_non_valido == '1') {
    echo
    "User gia scelto! Scegliene un altro!";
    } else {
    if(
    $email_non_valido == '1') {
    echo
    "Email gia usata! Usane un altra!";
    } else {
    $crypt_password=md5($password);//cripto la password
    $arraycodice=array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
    for(
    $i=0; $i<30; $i++) {
    $randcodice=rand(1,31);
    $codice.=$arraycodice[$randcodice];//creo il codice di conferma
    }
    fwrite($apri,$username.','.$crypt_password.','.$email.','.$codice.',0;');//scrivo sul file
    fclose($apri);//chiudo il file
    list($sito, $inutile)=explode('.', $_SERVER['HTTP_HOST']);//listo nome del sito e la parte inutile
    $testo="<p>Ciao ".$username."!<br> Questa &egrave; l'emai di conferma del sito <a href=http://\"".$_SERVER['HTTP_HOST']."\">".$sito."</a>.<br>Per completare la registazione clicca <a href=\"http://".$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']."?step=conf&username=".$username."&codice=".$codice."\">Qui</a>!<br><p align=right>Lo Staff</p></p>";//creo il testo dell email
    $head="MIME-Version: 1.0\n";
    $head.="Content-Type: text/html; charset=\"iso-8859-1\"\n";
    $head.="Content-Transfer-Encoding: 7bit\n\n";
    mail($email, 'Conferma registrazione', $testo, $head);//invio l'email
    echo"Ti &egrave; stata spedita un email dove troverai un link per confermare il tuo indirizzo email!";
    }
    }
    }
    }
    }
    }
    }
    }
    } else {
    ?>
    <form method="post">
    <input name="submit" type="hidden"/>
    <table width="273" border="0">
    <tr>
    <td width="50%">Username:</td>
    <td width="50%"><input name="username" type="text" /></td>
    </tr>
    <tr>
    <td>Password:</td>
    <td><input name="password" type="password" /></td>
    </tr>
    <tr>
    <td>Ripeti Password:</td>
    <td><input name="rip_password" type="password" /></td>
    </tr>
    <tr>
    <td>Email:</td>
    <td><input name="email" type="text" /></td>
    </tr>
    <tr>
    <td align="right"><input type="reset" value="Reset" /></td>
    <td><input type="submit" value="Registrati" /></td>
    </tr>
    </table>
    </form>
    <? }
    }
    ?>
    step ho buttato giu questo codice per la registrazione manca solo la parte in cui attivo viene setteato a 1 .....
    vedi se qualcuno puo aiutarti per completarlo

    ciao ciao


    EDIT:
    mi ero dimenticato il login
    Codice PHP:
    <?php
    session_start
    ();
    if(
    $_SESSION['log'] == '1') {//se l'utente ha gia effetuato il login
    header("Location: http://".$_SERVER['HTTP_HOST']."/index.php");//lo mando alla index.php
    } else {
    if(isset(
    $_POST['submit'])) {//se il form è stato submistato il form
    $username=htmlentities($_POST['username']);//raccolgo i dati inviati via post
    $password=htmlentities($_POST['password']);
    $file='utenti.txt';
    $apri=fopen($file, 'r');//apro il file
    $contenuto=fread($apri, filesize($file));//leggo il file
    fclose($apri);//chiudo il file
    $utenti=explode(';', $contenuto);//divido i dati degli utenti contenuti nel fil di testo
    $crypt_pass=md5($password);//cripto la password
    foreach($utenti as $valore) {
    list(
    $username_file, $password_file, $email, $codice, $attivo)=explode(',', $valore);//listo i dati dell utente
    if($username_file == $username) {//verifico se l'utente corisponde a quello scelto
    $log=1;
    if(
    $password_file == $crypt_pass) {//verifico se la password corisponde a quella scelta
    $log=2;
    if(
    $attivo != '1') {//se l'utente non attivato l'user
    echo"Non hai ancora confermato l'email quindi non puoi effetuare il login!";
    } else {
    $_SESSION['log'] = '1';//setto le sessioni
    $_SESSION['username'] = $username;
    $_SESSION['email'] = $email;
    echo
    "Login avvenuto con successo! Benvenuto ".$username."!";
    }
    }
    }
    }
    if(
    $log != '1' or $log != '2') {//se non c'è stato il login
    echo"Combinazione username e password sbagliata!";
    }
    } else {
    ?>
    <form method="post">
    <input name="submit" type="hidden"/>
    <table width="273" border="0">
    <tr>
    <td width="50%">Username:</td>
    <td width="50%"><input name="username" type="text" /></td>
    </tr>
    <tr>
    <td>Password:</td>
    <td><input name="password" type="password" /></td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    <td><input type="submit" value="Invia"/></td>
    </tr>
    </table>
    </form>
    <? }
    }
    ?>
    pero questa è completa
    Ultima modifica di webeasy : 24-03-2009 alle ore 17.06.00

  9. #9
    Guest

    Predefinito

    Grazie molte webeasy qualcuno sa come completarlo?
    Ultima modifica di step92 : 25-03-2009 alle ore 09.30.24

  10. #10
    Guest

    Unhappy completare codice

    Chi mi puo' aiutare a completare il codice? Php lo mastico quasi zero e ho bisogno di una mano velocemente!!

    Grazie

  11. #11
    Guest

    Predefinito

    Stavo cercando anche io il codice per la registrazione e per il login...
    Ma quando metto la mia email mi manda il link con
    Questa è l'emai di conferma del sito {nome sito}.
    Per completare la registazione clicca Qui!
    Ma sei clicco su " QUI " mi appare la pagina bianca :(
    Qualcuno sa risolvere questo problema?


    Grazie mille a tutti :D

  12. #12
    fgbect non è connesso Neofita
    Data registrazione
    15-04-2008
    Residenza
    Milano
    Messaggi
    27

    Predefinito

    Citazione Originalmente inviato da biccheddudesign Visualizza messaggio
    Stavo cercando anche io il codice per la registrazione e per il login...
    Ma quando metto la mia email mi manda il link con
    Questa è l'emai di conferma del sito {nome sito}.
    Per completare la registazione clicca Qui!
    Ma sei clicco su " QUI " mi appare la pagina bianca :(
    Qualcuno sa risolvere questo problema?


    Grazie mille a tutti :D
    Perchè se non si modifica questo blocco:

    if($log == '1') {
    //codice mancante

    Siccome l'$log alla conferma è '1' non puà essrci nientaltro che una pagina vuota!

    webeasy a suo tempo aveva scritto che: "manca solo la parte in cui attivo viene setteato a 1"

    Anch'io sto cercando di implementare il settaggio della mail confermata.....

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

    Predefinito

    Hai riesumato una discussione di 4 anni fa! Apri una tua discussione spiegando bene il tuo problema!

    Ciao!

Regole di scrittura

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