Pagina 1 di 3 123 UltimoUltimo
Visualizzazione risultati 1 fino 30 di 78

Discussione: creare una pagina di registrazione

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

    Exclamation creare una pagina di registrazione

    Gente parto dal presupposto che sono totalmente inesperto nel campo, e che mi serve una grande mano. Sto cercando di creare una pagina di registrazione ho creato la query in myphpadmin ho creato delle pagine come qui descritto, xò cliccando su registration.php mi compare questo errore
    Fatal error : require_once () [ function.require ]: Failed opening required '.. / site / config.php' (include_path ='.:') in / Membri online / dborraccino / registration.php on line 5
    mi spiegate cosa posso fare?Ve ne sarei veramente grato è da un pò che ci sto sbattendo la testa vi pregoooo
    Ultima modifica di alemoppo : 09-01-2012 alle ore 17.17.57 Motivo: +tag [quote]

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

    Predefinito

    Ciao.

    Ho dato un'occhiata al tuo sito.
    Stai lavorando sul form sotto la scritta "Registrati per restare sempre aggiornato sulle mie attività", vero?
    Perché quel form invia i dati a questa pagina, ma qui c'é un errore.

    Dal titolo sopra, presumo che vuoi fare una specie di newsletter, vero? In caso affermativo, puoi usare quella offerta da altervista: la puoi trovare qui {ovvero, pannello di controllo -> Tools -> newsletter}.

    Sinceramente non l'ho mai provata, ma penso ti sia utile .

    ...Se invece vuoi provare a continuare con il form che hai nella homepage, allora dovresti scriverci il sorgente della pagina "registration_p.php", per vedere come risolvere l'errore.

    Ciao!
    Ultima modifica di alemoppo : 09-01-2012 alle ore 17.36.46

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

    Predefinito

    allora il fatto è questo, quella parte la dovrei integrare con il lavoro finale perchè sinceramente non sò come collegare quella parte della registrazione al mio databse...allora ho fatto come diceva la guida che ho indicato, ma se vado su registred.php mi dà quell'errore...e non sò che fare...poi se voi avete una cosa già fatta e me la passata vi ringrazio maggiormente...

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

    Predefinito

    SE vuoi fare una sorta di newsletter (ancora non mi hai risposto), ti ho indicato uno script già fatto, che trovi sul pannello di controllo sotto Tools.

    SE invece vuoi continuare con quello script, ho ricontrollato, e sembra che hai eliminato lo script "registration_p.php": infatti adesso da un 404. Quindi dovresti rimetterlo, e scrivere qui il suo codice, perché da quando ho visto prima, ha un errore.

    Ciao!

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

    Predefinito

    no la newsletter la utilizzerò in seguito... non avevo capito che dovevo rispondere comunque sono riuscito ad impostare la prima parte solo che quando inserisco i dati non mi comunica niente al database e non ricevo nemmeno la mail di conferma...è come se non facesse nessuna operazione...posto qui come ho modificato?

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

    Predefinito

    Sì, però la pagina "registration_p.php" non esiste, quindi il form invia i dati ad una pagina inesistente...

    Ciao!

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

    Predefinito

    ale non vedere quello che ho sul sito..quello non lo sto modificando...ne sto modificando un altro che non ho inserito nel sito perchè voglio che funzioni prima...comunque ho 2 problemi, quando faccio la registrazione mi crea la il nuovo utente nel database solo che non mi visualizza niente di quell'utente alla voce email esce scritto email e così alle altre voci...poi una volta fatta la registrazione mi indirizza ad una pagina bianca, altra cosa che non fà e mandarmi la mail di registrazione...

    EDIT:

    http://dborraccino.altervista.org/registration.php


    questo è il link di quello che sto utilizzando

    EDIT:

    e questo è il codice che ho utilizzato
    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)
    {
    //
    header('Location: http://www.dborraccino.altervista.org');
    }
    //
    else {
    //
    if(isset($HTTP_POST_VARS['submit']))
    {
    //
    if(!$_POST['username']) die('Attenzione : il campo username è vuoto');

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

    //
    $_POST['username'] = str_replace($bad, '', $_POST['username']);
    $dato = $_POST['username'];
    //
    if(strlen($dato) != $len) {
    die(
    'Hai usato dei caratteri non validi nel campo username. Puoi usare solo lettere, numeri e il trattino basso _ !!');
    }
    //
    $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.'
    );
    }
    //
    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.');
    }
    //
    $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());
    //
    $yoursite = 'www.dborraccino.altervista.org';
    $webmaster = 'dborraccino';
    $youremail = 'dborraccino@altervista.org';
    //
    //
    $_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";
    //
    mail($_POST['email'], $subject, $message, "From: $www.dborraccino.altervista.org <$dborraccino@altervista.org>\nX-Mailer:PHP/" . phpversion());
    echo(
    'Registrazione avvenuta, Benvenuto !!!<br />
    Le informazioni che ci hai fornito ti sono state spedite via mail.'
    );
    }
    //
    else {
    ?>
    </HEAD>
    <BODY>
    <table border="0" cellspacing="1" cellpadding="0" width="600" align="center" bgcolor="#aaaaaa"><tbody>
    <tr><form action="/site/config.php" method="post"> <input name="phpMyAdmin" type="hidden" value="V0N0db6Fl62QWr6eBkly75xAGn3" /><td>
    <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>
    <?
    } //
    } //
    ?>
    Ultima modifica di alemoppo : 09-01-2012 alle ore 21.28.07 Motivo: Usa il tasto "Edita"

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

    Predefinito

    Provalo così:

    Codice PHP:
    <?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)
    {
    header('Location: http://www.dborraccino.altervista.org');
    }
    else {
    if(isset(
    $_POST['submit']))
    {
    if(!
    $_POST['username']) die('Attenzione : il campo username è vuoto');

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

    $_POST['username'] = str_replace($bad, '', $_POST['username']);
    $dato = $_POST['username'];
    if(
    strlen($dato) != $len) {
    die(
    'Hai usato dei caratteri non validi nel campo username. Puoi usare solo lettere, numeri e il trattino basso _ !!');
    }
    $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.'
    );
    }
    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.');
    }
    $insert ="INSERT INTO `utenti` (username, user_password, user_email) VALUES ('".mysql_real_escape_string($_POST['username'])."', '".md5($_POST['password'])."', '".mysql_real_escape_string($_POST['email'])."')";

    $insert2 = mysql_query($insert);
    if(!
    $insert2) die(mysql_error());
    $yoursite = 'www.dborraccino.altervista.org';
    $webmaster = 'dborraccino';
    $youremail = 'dborraccino@altervista.org';

    $_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";

    mail($_POST['email'], $subject, $message, "From: $www.dborraccino.altervista.org <$dborraccino@altervista.org>\nX-Mailer:PHP/" . phpversion());
    echo(
    'Registrazione avvenuta, Benvenuto !!!<br />
    Le informazioni che ci hai fornito ti sono state spedite via mail.'
    );
    }

    else {
    ?>
    </HEAD>
    <BODY>
    <table border="0" cellspacing="1" cellpadding="0" width="600" align="center" bgcolor="#aaaaaa"><tbody>
    <tr><form action="/site/config.php" method="post"> <input name="phpMyAdmin" type="hidden" value="V0N0db6Fl62QWr6eBkly75xAGn3" /><td>
    <form action="<? $_SERVER['PHP_SELF']; ?>" method="post" name="signup" id="signup">
    <table>
    <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>
    </table>
    </form>
    <?php
    }
    }
    ?>
    Sul database, i dati vengono inseriti correttamente?

    Ciao!
    Ultima modifica di alemoppo : 09-01-2012 alle ore 21.42.51

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

    Predefinito

    non è cambiato niente...la mail non mi arriva e sul database mi crea 3 nuove righe ma all'interno sono vuote...

    EDIT:

    gente allora chi mi aiuta?Ale ho modificato così come hai detto tu, solo che la mail non mi arriva comunque...e nel database si aggiunge il nuovo utente solo che non mi visualizza niente dell'utente!Come faccio?
    Ultima modifica di alemoppo : 10-01-2012 alle ore 14.48.09 Motivo: Usa il tasto "Edita"

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

    Predefinito

    Ho riscritto una parte di codice. Se non funziona nemmeno così, lo riscrivo tutto:

    Codice PHP:
    <?php
    //include header.php
    include('site/header.php');
    //collegamento dal database
    require_once('site/config.php');
    session_start();
    //controlla se l'utente è già loggato
    if($_SESSION['logged_in'] == 1)
    {
    header('Location: http://www.dborraccino.altervista.org');
    }
    else {
    if(isset(
    $_POST['submit']))
    {
    if(!
    $_POST['username']) die('Attenzione : il campo username è vuoto');

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

    $_POST['username'] = str_replace($bad, '', $_POST['username']);
    $dato = $_POST['username'];
    if(
    strlen($dato) != $len) {
    die(
    'Hai usato dei caratteri non validi nel campo username. Puoi usare solo lettere, numeri e il trattino basso _ !!');
    }
    $q2 = mysql_query("SELECT * FROM `utenti` WHERE `username` = '".mysql_real_escape_string($_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.'
    );
    }
    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.');
    }
    $insert ="INSERT INTO `utenti` (username, user_password, user_email) VALUES ('".mysql_real_escape_string($_POST['username'])."', '".md5($_POST['password'])."', '".mysql_real_escape_string($_POST['email'])."')";

    $insert2 = mysql_query($insert);
    if(!
    $insert2) die(mysql_error());
    $yoursite = 'www.dborraccino.altervista.org';
    $webmaster = 'dborraccino';
    $youremail = 'dborraccino@altervista.org';

    $_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";

    mail($_POST['email'], $subject, $message, "From:dborraccino.altervista.org <dborraccino@altervista.org>");
    echo(
    'Registrazione avvenuta, Benvenuto !!!<br />
    Le informazioni che ci hai fornito ti sono state spedite via mail.'
    );
    }

    else {
    ?>
    <form action="<?= $_SERVER['PHP_SELF']; ?>" method="post" name="signup" id="signup">
    <table border="0" cellspacing="1" cellpadding="0" width="600" align="center" bgcolor="#aaaaaa">
    <tr><td>Username:</td><td><input type="text" id ="username" name="username" value="" maxlength="30"></td></tr>
    <tr><td>Password:</td><td><input type="password" id="password" name="password" value="" maxlength="30"></td></tr>
    <tr><td>Verifica Password:</td><td><input type="password" id="verify_password" name="verify_password" value="" maxlength="30"></td></tr>
    <tr><td>Email:</td><td><input type="text" id="email" name="email" value="" size="30"></td></tr>
    <tr><td>Invia il modulo per completare la registrazione</td><td><input type="submit" id="submit" name="submit" value="Invia" /></td></tr>
    </table>
    </form>
    <?php
    }
    }
    ?>
    Ciao!

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

    Predefinito

    ale ti ringrazio per quello che stai facendo...comunque mi ha dato quest'errore No database selected :-(

    EDIT:

    xò è strano, sono andato a controllare sul database e mi inserisce 2 nuove righe, xò sempre vuote!che posso fare?
    Ultima modifica di alemoppo : 10-01-2012 alle ore 15.48.31 Motivo: Non fare post consecutivi: usa il tasto "Edita" per editare i messaggi...

  12. #12
    L'avatar di soulcanada
    soulcanada non è connesso Utente giovane
    Data registrazione
    12-08-2011
    Messaggi
    75

    Predefinito

    Citazione Originalmente inviato da dborraccino Visualizza messaggio
    ale ti ringrazio per quello che stai facendo...comunque mi ha dato quest'errore No database selected :-(
    Ad occhio e croce il nome del database che hai nella configurazione non è corretto (dovrei vedere proprio il codice comunque di solito è quello che genera quell'errore).
    Citazione Originalmente inviato da dborraccino Visualizza messaggio
    xò è strano, sono andato a controllare sul database e mi inserisce 2 nuove righe, xò sempre vuote!che posso fare?
    Fai una stampa della query di inserimento (se il codice non è variato è questa):
    Codice PHP:
    $insert ="INSERT INTO `utenti` (username, user_password, user_email) VALUES ('".mysql_real_escape_string($_POST['username'])."', '".md5($_POST['password'])."', '".mysql_real_escape_string($_POST['email'])."')";

    // stampa la query
    echo $insert; exit;
    e controlla che i dati al suo interno sia corretti.

    Ma il fatto che inserisca due tuple invece di una nel db è voluto?

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

    Predefinito

    In config.php ho messo questo
    Codice PHP:
    <?php
    $host
    ="localhost"; // Hostname
    $username="dborraccino"; // Mysql username
    $password="la mia password"; // Mysql password
    $db_name="my_dborraccino"; //Nome del Database
    $tbl_name="utenti"; // Nome della Tabella
    $db = mysql_connect($localhost,$username,$password);
    mysql_select_db($db_name,$db);

    $user_id = $_POST['user_id'];
    $username = $_POST['username'];
    $password = $_POST['password'];
    $email = $_POST['email'];

    mysql_query("INSERT INTO ".$tbl_name." VALUES (user_id,username,password,email)",$db) || die(mysql_error());


    mysql_close($db);
    ?>
    mentre mi spieghi come faccio la stampa?
    Ultima modifica di alemoppo : 10-01-2012 alle ore 16.32.19 Motivo: +tag [php]

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

    Predefinito

    Vedo che la discussione è andata avanti... Comunque, ho fatto uno script nuovo (se vuoi provarlo):

    --eliminato (SBAGLIATO)---

    Nel file config.php (dentro la cartella site), dovrebbe esserci:
    Codice PHP:
    <?php
    $db
    = mysql_connect('localhost','dborraccino','');
    if(!
    $db)
    die(
    'Impossibile connettersi al database: ' . mysql_error());
    if(!
    mysql_select_db('my_dborraccino',$db))
    die(
    'Impossibile selezionare il database');
    ?>
    Ciao!
    Ultima modifica di alemoppo : 10-01-2012 alle ore 17.06.54

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

    Predefinito

    ora lo provo e ti faccio sapere! :-)

    EDIT:

    no non va bene quello script...mi dice uno o più dati mancanti! si nel config.php c'è quella parte scritta!Uffa gente ma come facciamo?

    http://dborraccino.altervista.org/registration.php

    provate voi
    Ultima modifica di alemoppo : 10-01-2012 alle ore 16.57.58 Motivo: USA IL TASTO EDITA!

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

    Predefinito

    Scusami, errore mio. Prova così:

    Codice PHP:
    <?php
    if(isset($_POST['username'],$_POST['password'],$_POST['verify_password'],$_POST['email']))
    {
    if(empty(
    $_POST['username']))
    die(
    'username vuoto!');
    if(empty(
    $_POST['password']))
    die(
    'Password vuota!');
    if(empty(
    $_POST['verify_password']))
    die(
    'password di verifica vuota!');
    if(empty(
    $_POST['email']))
    die(
    'email vuota!');

    if(
    $_POST['verify_password'] != $_POST['password'])
    die(
    'Le due password non coincidono');

    if(
    filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) === FALSE)
    die(
    'Email non valida');

    require_once(
    './site/config.php');

    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);
    $email = mysql_real_escape_string($_POST['email']);

    $q = mysql_query('SELECT username FROM utenti WHERE username = \''.$username.'\'');
    if(
    mysql_num_rows($q) == 1)
    die(
    'Questo utente risulta esistente');

    $q = mysql_query('INSERT INTO utenti (username,user_password,user_email) VALUES (\''.$username.'\',\''.md5($password).'\',\''.$email.'\')');
    if(!
    $q)
    die(
    'Problemi durante la query: '.mysql_error());

    $oggetto = 'Registrazione su dborraccino.altervista.org';
    $testo = "Ti sei registrato correttamente su dborraccino.altervista.org.\n\nNick: ".$username."\nPassword: ".$password."\n\nGrazie per esserti registrato!";

    if(
    mail($email,$oggetto,$testo,'From:dborraccino.altervista.org<dborraccino@altervista.org>'))
    header('location:dborraccino.altervista.org');
    else die(
    'Problemi durante invio email');
    }
    ?>
    <form action="<?= $_SERVER['PHP_SELF']; ?>" method="post">
    <table border="0" cellspacing="1" cellpadding="0" width="600" align="center" bgcolor="#aaaaaa">
    <tr><td>Username:</td><td><input type="text" id ="username" name="username" value="" maxlength="30"></td></tr>
    <tr><td>Password:</td><td><input type="password" id="password" name="password" value="" maxlength="30"></td></tr>
    <tr><td>Verifica Password:</td><td><input type="password" id="verify_password" name="verify_password" value="" maxlength="30"></td></tr>
    <tr><td>Email:</td><td><input type="text" id="email" name="email" value="" size="30"></td></tr>
    <tr><td>Invia il modulo per completare la registrazione</td><td><input type="submit" id="submit" name="submit" value="Invia" /></td></tr>
    </table>
    </form>
    Ciao!
    Ultima modifica di alemoppo : 10-01-2012 alle ore 16.55.49

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

    Predefinito

    ora mi dà l'errore dopo aver fatto la registrazione!

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

    Predefinito

    Che errore? Cosa dice?
    p.s: aggiorna nuovamente il codice: dopo che l'ho scritto qui, l'ho modificato. Quindi forse hai preso la parte "vecchia" .

    Ciao!

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

    Predefinito

    Problemi durante la query: No database selected ora mi dà questo problema!

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

    Predefinito

    Puoi scrivere quello che c'é dentro il file "config.php" dentro la cartella "site"?
    (il problema è li).
    Semmai, prova ad usare il codice che ti ho dato sopra.
    Ciao!

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

    Predefinito

    hei campione ci siamo quasi...ora nel database mi esce tutto e la password codificata..solo che dopo la registrazione mi compare questo erroreLa pagina http://dborraccino.altervista.org/db...altervista.org non è presente. da dove modifico il reindirizzo?

    EDIT:

    mi è arrivata pure la mail... .-) :-) :-) sono felicissimo...ti posso abbracciareeeee :-)
    Ultima modifica di alemoppo : 17-01-2012 alle ore 01.13.08 Motivo: usa il tasto "Edita"!

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

    Predefinito

    Provalo così:

    Codice PHP:
    <?php
    if(isset($_POST['username'],$_POST['password'],$_POST['verify_password'],$_POST['email']))
    {
    if(empty(
    $_POST['username']))
    die(
    'username vuoto!');
    if(empty(
    $_POST['password']))
    die(
    'Password vuota!');
    if(empty(
    $_POST['verify_password']))
    die(
    'password di verifica vuota!');
    if(empty(
    $_POST['email']))
    die(
    'email vuota!');

    if(
    $_POST['verify_password'] != $_POST['password'])
    die(
    'Le due password non coincidono');

    if(
    filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) === FALSE)
    die(
    'Email non valida');

    require_once(
    './site/config.php');

    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);
    $email = mysql_real_escape_string($_POST['email']);

    $q = mysql_query('SELECT username FROM utenti WHERE username = \''.$username.'\'');
    if(
    mysql_num_rows($q) == 1)
    die(
    'Questo utente risulta esistente');

    $q = mysql_query('INSERT INTO utenti (username,user_password,user_email) VALUES (\''.$username.'\',\''.md5($password).'\',\''.$email.'\')');
    if(!
    $q)
    die(
    'Problemi durante la query: '.mysql_error());

    $oggetto = 'Registrazione su dborraccino.altervista.org';
    $testo = "Ti sei registrato correttamente su dborraccino.altervista.org.\n\nNick: ".$username."\nPassword: ".$password."\n\nGrazie per esserti registrato!";

    if(
    mail($email,$oggetto,$testo,'From:dborraccino.altervista.org<dborraccino@altervista.org>'))
    header('Location: http://dborraccino.altervista.org');
    else die(
    'Problemi durante invio email');
    }
    ?>
    <form action="<?= $_SERVER['PHP_SELF']; ?>" method="post">
    <table border="0" cellspacing="1" cellpadding="0" width="600" align="center" bgcolor="#aaaaaa">
    <tr><td>Username:</td><td><input type="text" id ="username" name="username" value="" maxlength="30"></td></tr>
    <tr><td>Password:</td><td><input type="password" id="password" name="password" value="" maxlength="30"></td></tr>
    <tr><td>Verifica Password:</td><td><input type="password" id="verify_password" name="verify_password" value="" maxlength="30"></td></tr>
    <tr><td>Email:</td><td><input type="text" id="email" name="email" value="" size="30"></td></tr>
    <tr><td>Invia il modulo per completare la registrazione</td><td><input type="submit" id="submit" name="submit" value="Invia" /></td></tr>
    </table>
    </form>
    (ovviamente il testo della email puoi cambiarlo.. Io ho scritto due parole )

    Ciao!
    Ultima modifica di alemoppo : 10-01-2012 alle ore 17.21.05

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

    Predefinito

    senti ora xò mi dà problemi sul login e logout...quella guida che stava nel forum è tutta sbaglaita...dopo se finiamo tutto la riscrivo così posso aiutare anche gli altri xò specifico che è solo opera del mago alemappo...senti un altra cosa ma se qualcuno ha perso i dati come fa a recuperarli?

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

    Predefinito

    Allora, calma .

    Lo script di quella pagina non ho nemmeno capito come era strutturato. Quello che ho fatto, ho cercato di renderlo compatibile con le tabelle (e i nomi dei campi) usati con lo script "vecchio".

    Però, evidentemente non sono così compatibili... {ad esempio, la query che faceva nel config.php non l'ho capita, forse è quello che non rende compatibili le cose...}.

    In ogni caso, bisognerebbe rifare sia il login, sia il logout, sia la pagina di recupero, e tutte le altre cose che vuoi.

    Semmai adesso ti scrivo anche quelle... però non proprio adesso, perché il 13 ho un esame, e dovrei studiare ... Se qualcun altro si mette per farli, ok.. altrimenti devi aspettare me, e non so quando lo faccio (forse sta sera, boh)...

    Ciao!

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

    Predefinito

    hai ragione ti sto dando molto fastidio e ti sto togliendo tempo...se vuoi ti faccio vedere quelle che ho io...e mi dici al massimo che posso modificare...oppure aspetto te!

    EDIT:

    allora sono riuscito a risolvere il problema logout, ma nel login anche mettendo utente e password sembra che non riesca a trovare i dati indicati

    dove sbaglio?

    Codice PHP:
    <?
    include('./site/header.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: [url]http://www.dborraccino.altervista.org');[/url]
    }
    //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 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: [url]http://www.dborraccino.altervista.org');[/url]

    } 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>
    <?
    }
    ?>

    mi dà quest'errore Login fallito ! Verifica se hai inserito correttamente il tuo username e password
    Ultima modifica di alemoppo : 10-01-2012 alle ore 21.06.39 Motivo: USA IL TASTO EDITA +tag[php]

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

    Predefinito

    Login:

    Codice PHP:
    <?php
    session_start
    ();

    if(isset(
    $_SESSION['utente']))
    header('Location: http://dborraccino.altervista.org');

    if(isset(
    $_COOKIE['user'],$_COOKIE['pass']))
    {
    $user = mysql_real_escape_string($_COOKIE['user']);
    $pass = mysql_real_escape_string($_COOKIE['pass']);

    #rinnovo i cookie
    setcookie('user',$user,time()+(60*60*24*30)); //dura 30 gg
    setcookie('pass',$pass,time()+(60*60*24*30)); //dura 30 gg
    }
    else if(isset(
    $_POST['username'],$_POST['password']))
    {
    $user = mysql_real_escape_string($_POST['username']);
    $pass = md5(mysql_real_escape_string($_POST['password']));
    }

    if(isset(
    $user,$pass))
    {
    require_once(
    './site/config.php');
    $q = mysql_query('SELECT username FROM utenti WHERE username = \''.$user.'\' AND user_password=\''.$pass.'\' LIMIT 1');
    mysql_close($db);
    if(!
    $q)
    echo
    'Errore durante la query: '.mysql_error();
    else if(
    mysql_num_rows($q) == 1)
    {
    $_SESSION['utente'] = htmlentities($user);
    if(isset(
    $_POST['ricordami']))
    {
    setcookie('user',$user,time()+(60*60*24*30)); //dura 30 gg
    setcookie('pass',$pass,time()+(60*60*24*30)); //dura 30 gg
    }
    echo
    'Loggato correttamente';
    }
    else echo
    'I dati non sono corretti. Riprova...';
    }
    if(!isset(
    $_SESSION['username']))
    {
    ?>
    <form name="login" method="post" action="<?= $_SERVER['PHP_SELF']; ?>">
    <table cellpadding="5">
    <tr><td>Username:</td><td><input type="text" id="username" name="username"></td></tr>
    <tr><td>password:</td><td><input type="password" id="password" name="password"></td></tr>
    <tr><td colspan="2">Ricordami<input type="checkbox" name="ricordami" value="on" class="check"></td></tr>
    <tr><td align="center" colspan="2"><input type="submit" value="Invia" name="submit" id="submit" class="button"></td></tr>
    </table>
    </form>
    <?php
    }
    ?>
    Logout:
    Codice PHP:
    <?php
    session_start
    ();
    if(isset(
    $_SESSION['utente']))
    session_destroy();
    if(isset(
    $_COOKIE['user']) || isset($_COOKIE['pass']))
    {
    setcookie('user',$user,time()-500);
    setcookie('pass',$pass,time()-500);
    }
    header('Location: http://dborraccino.altervista.org');
    ?>
    Recupero password:
    Codice PHP:
    <?php
    function stringa_random()
    {
    $str = 'ABCDEFGHKLMNOPQRSTWXYZabcdefghjkmnpqrstwxyz123456789';
    $r = '';
    $l = 8+rand(0,5);
    for(
    $i=0;$i<$l;$i++)
    $r .= $str{rand(0,strlen($str))};
    return
    $r;
    }
    if(isset(
    $_POST['username']) && (!empty($_POST['username'])))
    {
    require_once(
    './site/config.php');
    $q = mysql_query('SELECT email FROM utenti WHERE username = \''.mysql_real_escape_string($_POST['username']).'\' LIMIT 1');
    mysql_close($db);
    if(!
    $q)
    echo
    'Errore durante la query: '.mysql_error();
    else
    {
    $row = mysql_fetch_assoc($q);
    $email = $row['email'];
    }
    }
    else if(isset(
    $_POST['email']) && (!empty($_POST['email'])))
    {
    $email = mysql_real_escape_string($_POST['email']);
    }

    if(isset(
    $email))
    {
    require_once(
    './site/config.php');

    $new_pass = stringa_random();

    $q = mysql_query('UPDATE utenti SET user_password = \''.md5($new_pass).'\' WHERE email = \''.$email.'\'');
    if(!
    $q)
    echo
    'Errore durante la query: '.mysql_error();
    else
    {

    $q = mysql_query('SELECT username FROM utenti WHERE user_password = \''.$new_pass.' AND email=\''.$email.'\' LIMIT 1');
    mysql_close($db);
    if(!
    $q)
    echo
    'Errore durante la query: '.mysql_error();
    else
    {
    $row = mysql_fetch_assoc($q);
    $username = $row['username'];
    if(!
    mail($email,'Reset password',"Reset effettuato correttamente.\n\nNuova password: $new_pass\n\nUtente: $username",'From:dborraccino.altervista.org<dborraccino@altervista.org>'))
    echo
    'Errore invio durante email';
    }
    }
    }
    ?>
    Immetti nome utente o email per ricevere via email una nuova password:
    <form name="login" method="post" action="<?= $_SERVER['PHP_SELF']; ?>">
    <table cellpadding="5">
    <tr><td>Username:</td><td><input type="text" id="username" name="username"></td></tr>
    <tr><td>email:</td><td><input type="text" id="email" name="email"></td></tr>
    <tr><td align="center" colspan="2"><input type="submit" value="Invia" name="submit" id="submit" class="button"></td></tr>
    </table>
    </form>
    ...mancherebbe lo script per modificare la password.
    Li ho scritti frettolosamente, quindi potrebbero esserci degli errori.
    Inoltre, forse, si poteva risparmiare qualche (una) query nel recupero password.
    Con un campo in più sul database, si riusciva ad aumentare la sicurezza dell'account! Infatti così la password viene resettata comunque, anche senza conferma via email (e non è una bella cosa, perché chiunque conoscendo email o username, potrebbe resettare la password di un altro utente).
    Ah, poi in qualche parte, mi son dimenticato di chiudere la connessione al database...

    Ciao!

    EDIT:

    Questa è una pagina per capire se sei loggato o meno:

    Codice PHP:
    <?php
    session_start
    ();
    if(!isset(
    $_SESSION['utente']))
    include(
    'login.php'); //includo la pagina login, per loggare in automatico tramite i cookie
    if(isset($_SESSION['utente']))
    echo
    'Sei loggato con '.$_SESSION['utente'];
    else echo
    'Non risulti loggato';
    ?>
    Ultima modifica di alemoppo : 10-01-2012 alle ore 23.01.37

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

    Predefinito

    al login mi dà quest'errore... Fatal error: require_once() [function.require]: Failed opening required './site/config.php' (include_path='.:') in /membri/dborraccino/utente/login.php on line 24 ma alla linea 24 ho visto e sembra tutto ok!

    stessa cosa per il recupero pass solo che è alla numero 13...se provo a togliere quella stringa mi dice che non è selezionato il database...

    e non possiamo mettere il campo in più nel database?Sarebbe formidabile...anche perchè sinceramente vorrei fare una registrazione migliore...sai con nome cognome città...questa alla fine è solo una prova poi dopo vorrei fare una cosa più carina :-)
    Ultima modifica di dborraccino : 12-01-2012 alle ore 18.49.59

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

    Predefinito

    Il fatto che dice che il database non è selezionato, è una conseguenza dell'errore.
    Nella stessa cartella dove esegui lo script, deve esserci la cartella "site" con dentro il file config.php.

    Ciao!

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

    Predefinito

    ciao, non sono ancora riuscito a capire l'errore... il file config è nella cartella site, anche perchè per la registrazione il file è sempre quello..che facciamo?

    questo è sempre l'errore

    Fatal error: require_once() [function.require]: Failed opening required 'site/config.php' (include_path='.:') in /membri/dborraccino/utente/recupero_password.php on line 13
    Ultima modifica di dborraccino : 16-01-2012 alle ore 19.22.31

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

    Predefinito

    Ma la cartella è nella stessa cartella dello script?
    Puoi indicare l'indirizzo della pagina?

    Ciao!

Pagina 1 di 3 123 UltimoUltimo

Regole di scrittura

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