Visualizzazione risultati 1 fino 29 di 29

Discussione: Un form di registrazione tipo Google

  1. #1
    Guest

    Predefinito Un form di registrazione tipo Google

    Salve a tutti,

    vorrei creare un form di registrazione in PHP (e già qui non so da dove iniziare anche se ci stanno mille topic a riguardo), magari mi potete dare uno script già fatto senza perderci tempo? Ne vorrei uno con database che spiega bene come fare...
    Ma non è l'unica cosa che vorrei fare, non so se ci avete caso... ma è da Luglio che esiste "Google+" il social di Google...
    Ecco e nel menu dropdown di Google c'è "+Tu", e se ti logghi diventa "+Mionome", in questo caso "+Luca"
    Come posso fare anche io una cosa del genere ?
    Perchè inanzitutto come fa a diventare con il mio nome, quando su Google non c'è una form action specifica a "google.com", bensi ad una pagina di registrazione... e poi come fa a mostrare due messaggi diversi, ovvero se non sei loggato "+Tu" e se si "+Luca" ?
    Grazie mille

  2. #2
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    C'è un tutorial sul forum:

    http://forum.it.altervista.org/how/1...strazione.html

    Non so se fa al caso tuo, ma puoi modificarlo per quello che vuoi te.

    Sevenjeak
    Software developer and much more

  3. #3
    Guest

    Predefinito

    Ho caricato tutti i files, ma mi si blocca, perchè non esce il codice di conferma e non mi fa iscrivere :(
    http://talkpluginorange.altervista.org/iscrizione.php ho levato la riga del codice ma nulla, come faccio?

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

    Predefinito

    Occorre caricare anche la cartella "caratteri", con il suo contenuto.

    Cosa hai levato?
    Comunque, quello script più che altro doveva essere uno spunto per farci un sistema login personalizzato; qualcosa per avere una base già pronta; ma in effetti, ancora senza la "spiegazione", sembra più che altro uno script "da usare".
    Il chaptcha ti consiglio di lasciarlo; oppure puoi usare il re-captcha.

    Ciao!
    Ultima modifica di alemoppo : 23-03-2012 alle ore 19.34.42

  5. #5
    Guest

    Predefinito

    L'ho caricata, ma è come prima!

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

  7. #7
    Guest

    Predefinito

    Ottimo! Funziona benissimo!
    Come modifico la email che manda la mail di conferma? Vorrei mettere il mio indirizzo personale...
    Basta levare "mysql_real_escape_string($_POST['email'])" e mettere il mio tra i " ' " e finire con punto e virgola?
    Perchè ho provato a fare così e non invia la mail, nemmeno nell' Antispam...

    Ah, poi non vedo il logout, mi puoi buttare su due piedi giù un pò di codice? Io non so come fare!

    e poi ancora... come posso sia per iscrizione.php che per login.php non inviare i dati nella stessa pagina, ma su una pagina diversa? Ho provato a spostare il php e lasciare solo html, per poco non mi saltava il sito
    Ultima modifica di talkpluginorange : 23-03-2012 alle ore 20.15.22

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

    Predefinito

    Citazione Originalmente inviato da talkpluginorange Visualizza messaggio
    Come modifico la email che manda la mail di conferma? Vorrei mettere il mio indirizzo personale...
    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    [*]Email di provenienza:

    Lo script invia le email per confermare le eventuali azioni importanti dell'utente. Quindi, l'indirizzo di origine, sarà "nomesito@altervista.org". Potete cambiarlo aggiungendo al file "funzioni.php" la riga:
    (esempio con email spam@dominio.it)
    Codice PHP:
    $EMAIL = 'spam@dominio.it';
    Citazione Originalmente inviato da talkpluginorange Visualizza messaggio
    Ah, poi non vedo il logout, mi puoi buttare su due piedi giù un pò di codice? Io non so come fare!
    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Per effettuare il logout, è sufficiente far visitare all'utente la pagina "config.php?logout=". Se il logout va a termine, si viene reindirizzati nella homepage del sito.
    (nota che il " 04-03-2012 at 21.43.53" l'ultima modifica è stata "Motivo: Evidenziato il logout": già un altro utente me lo aveva chiesto, così ho deciso di evidenziarlo mettendolo in grassetto. Ora non si più come evidenziarlo ulteriormente...).

    Citazione Originalmente inviato da talkpluginorange Visualizza messaggio
    e poi ancora... come posso sia per iscrizione.php che per login.php non inviare i dati nella stessa pagina, ma su una pagina diversa? Ho provato a spostare il php e lasciare solo html, per poco non mi saltava il sito
    Devi modificare l'action del form, ma occhio che la pagina di destinazione deve essere in modo tale di "accogliere" i dati. Pensa bene a cio che vuoi fare: non ne capisco il motivo. Cosa vuoi fare esattamente?

    Ciao!
    Ultima modifica di alemoppo : 23-03-2012 alle ore 21.22.15

  9. #9
    Guest

    Predefinito

    Sai perchè ne voglio cambiare l'action?
    Perchè io vorrei fare un menu dropdown come google... c'è la pagina di login con il menu sopra e vorrei che al click si venisse reindrizzati alla mia home con il menu dropdown sopra scritto "+Luca"... stessa cosa per login
    invece se non la punto ad un altra pagina al click mi visualizza sempre la pagina di login e non magari una ipotetica home...
    io però ho paura, quindi mi affido a te, se no stavolta il sito salta davvero

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

    Predefinito

    Per imparare devi "far saltare il sito ", nel senso che devi metterci mano. Ti assicuro che al massimo lo script non funziona più, quindi non fai altro che riscaricarlo nuovo e riupparlo, quindi niente di che... (magari ogni tanto fai un backup, così salvi l'eventuale lavoro corretto).

    Passando al problema, se vuoi modificare il redirect di "destinazione" una volta loggati:

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    [*]Redirect:

    Dopo aver effettuato il login, il logout, oppure dopo aver cambiato la password, è possibile impostare la pagina di destinazione, dopo l'operazione. Di default, è impostata la home del vistro sito (nomesito.altervista.org), ma è possibile cambiarlo, aggiungendo al file "funzioni.php" la riga:
    (esempio con redirect a google.com)
    Codice PHP:
    $INDIRIZZO_REDIRECT = 'google.com';
    Notare che "http://" verrà aggiunto automaticamente.
    ...Ma come mai non volete leggere quella spiegazione? (che DOVREBBE {tra poco, spero} essere un tutorial).

    Non ho capito il fatto del menù a tendina. Vuoi far apparire il nick dentro il menù?
    Non devi far altro che fare:
    Codice PHP:
    <?php session_start(); ?>
    .....
    <select><option><?php
    if(isset($_SESSION['utente']))echo $_SESSION['utente']; else echo 'Sconosciuto'; ?></option></select>
    Ciao!
    Ultima modifica di alemoppo : 23-03-2012 alle ore 21.47.16

  11. #11
    Guest

    Predefinito

    Ok! Fino a qui ci siamo...
    non mi funziona la mail non la manda.
    Ho aggiunto la riga al files funzioni.php:
    Codice:
    $EMAIL = 'spam@dominio.it';
    e modificato la mail nel files "iscrizione.php" ma non manda la mail! Cosa c'è che non va?
    Grazie mille!

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

    Predefinito

    Quindi hai modificato le prime due di queste righe?
    Codice PHP:
    $oggetto = 'Registrazione su '.nick().'.altervista.org';
    $testo = "Ti sei registrato correttamente su .altervista.org.\n\nNick: ".$username."\nPassword: ".$password."\n\n Visita questa pagina per attivare l\'account: \n\nhttp://".$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF']."?att=".$attivazione."\n\nGrazie per esserti registrato!";

    if(
    mail($email,$oggetto,$testo,HEADER_MAIL))
    prova a scriverle qui, altrimenti non riesco a vedere l'eventuale errore.

    Ciao!

  13. #13
    Guest

    Predefinito

    Codice:
    <?php
    /*
    © by alemoppo (Moroni Alessandro)
    */
    /*
    $ACCOUNT_DB = '';			#[=<account>]
    $INDIRIZZO_REDIRECT = '';	#[=<account>.altervista.org]
    $EMAIL = '';				#[=<account>@altervista.org]
    $COLORE = '';				#[=#9370DB]
    */
    
    define('HEADER_MAIL','From: '.(isset($EMAIL)?$EMAIL:(nick().'@altervista.org<')).(isset($EMAIL)?('<'.$EMAIL.'>'):(nick().'>')));
    function colore()
    {
    	global $COLORE;
    	if(isset($COLORE))
    		return $COLORE;
    	else
    		return '#9370DB';
    }
    
    $EMAIL = 'miamail@yahoo.it';
    
    ...

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

    Predefinito

    La riga
    Codice PHP:
    $EMAIL = 'miamail@yahoo.it';
    posizionala prima del "define".

    Ciao!

  15. #15
    Guest

    Predefinito

    Non funziona ancora!
    Ho messo:
    Codice:
    $EMAIL = 'miamail@yahoo.it';
    
    define('HEADER_MAIL','From: '.(isset($EMAIL)?$EMAIL:(nick().'@altervista.org<')).(isset($EMAIL)?('<'.$EMAIL.'>'):(nick().'>')));
    function colore()
    {
    	global $COLORE;
    	if(isset($COLORE))
    		return $COLORE;
    	else
    		return '#9370DB';
    }

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

    Predefinito

    Sopra hai scritto che hai modificato anche il file "iscrizione.php"
    Citazione Originalmente inviato da talkpluginorange Visualizza messaggio
    e modificato la mail nel files "iscrizione.php" ma non manda la mail! Cosa c'è che non va?
    Grazie mille!
    Quindi forse c'é qualche errore lì... Di default, l'email viene inviata.

    Ciao!

  17. #17
    Guest

    Predefinito

    Ho sbagliato! Volevo dire: funzioni.php
    lì ho aggiunto la riga, mentre nel files iscrizioni.php ho semplicemente modificato la mail in: $email= 'miamail@yahoo.it';

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

    Predefinito

    in "iscrizioni.php" teoricamente non bisognerebbe modificar nulla. Ti consiglio di ripristinare il sorgente con quello iniziale. Poi fai una modifica alla volta e vedi dove poi non funziona più.
    Se non c'é nessun errore nello script, le email potrebbero essere in "spam" nella tua casella di posta.

    Ciao!

  19. #19
    Guest

    Predefinito

    Funziona!!!
    Per motivi di problemi...
    come posso togliere il file "arial.ttf" via dalla directory "caratteri" e farlo funzionare così, in mezzo agli altri files senza in quella directory?
    Cosa devo modificare?

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

    Predefinito

    Dentro il file "config.php" dovresti modificare questa riga:
    Codice PHP:
    './caratteri/arial.ttf', //font
    Ad esempio, così:
    Codice PHP:
    './arial.ttf', //font
    In effetti una cartella non ha molto senso, però l'ho fatto con la previsione di aggiungerci altri font in futuro, per rendere più efficace il captcha.

    Ciao!

  21. #21
    Guest

    Predefinito

    Ottimo!
    Ultima domanda... come posso modificare i dati CORRETTAMENTE?
    Ci tengo a specificare... es: ho provato a modificare in funzioni.php:
    Codice:
    $ACCOUNT_DB = '';			#[=<account>]
    $INDIRIZZO_REDIRECT = '';	#[=<account>.altervista.org]
    $EMAIL = '';				#[=<account>@altervista.org]
    $COLORE = '';				#[=#9370DB]
    in
    Codice:
    $ACCOUNT_DB = '';			#[=<mio_db]
    $INDIRIZZO_REDIRECT = '';	#[=google.com]
    $EMAIL = '';				#[=miamail@yahoo.it]
    $COLORE = '';				#[=#9370DB]
    e già solo qui mi da errore...
    poi ho provato a modificare (ti metto particine di codice di esempio) in iscrizione.php:
    Codice PHP:
    if(mysql_query('UPDATE utenti SET attivazione = \'\' WHERE attivazione = \''.$attivazione.'\''))
    if(
    mysql_affected_rows($db) == 1)
    echo
    'Account attivato correttamente!<br>';
    else echo
    'Problemi con attivazione account.<br>';
    if(isset(
    $INDIRIZZO_REDIRECT))
    echo
    '<a href="http://'.$INDIRIZZO_REDIRECT.'">Premi qui per continuare</a>';
    else
    echo
    '<a href="http://'.nick().'.altervista.org">Torna alla home</a>';
    mysql_close($db);
    }
    in

    Codice PHP:
    if(mysql_query('UPDATE utenti SET attivazione = \'\' WHERE attivazione = \''.$attivazione.'\''))
    if(
    mysql_affected_rows($db) == 1)
    echo
    'Account attivato correttamente!<br>';
    else echo
    'Problemi con attivazione account.<br>';
    if(isset(
    $INDIRIZZO_REDIRECT))
    echo
    '<a href="http://'.$INDIRIZZO_REDIRECT.'">Premi qui per continuare</a>';
    else
    echo
    '<a href="http://www.google.com">Torna alla home</a>';
    mysql_close($db);
    }
    e anche qui mi da errore...
    allora, per esempio solo in queste due parti, come posso configurare bene i dati?
    Grazie mille!

    EDIT:

    Salve, riprendo da qui perchè vorrei fare una cosa un pò più complessa...
    posso creare un form dove carichi un avatar che poi viene riprodotto sotto forma di icona nella homepage? E posso anche creare un piccolissimo sistema di messaggi e di notifiche? Come qui nel forum di altervista...
    Grazie mille!
    Ultima modifica di alemoppo : 15-04-2012 alle ore 16.05.14 Motivo: EDIT + tag php

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

    Predefinito

    Citazione Originalmente inviato da talkpluginorange Visualizza messaggio
    come posso modificare i dati CORRETTAMENTE?

    Codice:
    $ACCOUNT_DB = '';			#[=<mio_db]
    $INDIRIZZO_REDIRECT = '';	#[=google.com]
    $EMAIL = '';				#[=miamail@yahoo.it]
    $COLORE = '';				#[=#9370DB]
    Così, teoricamente:
    Codice PHP:
    $ACCOUNT_DB = '<mop_db'; #[=<mio_db]
    $INDIRIZZO_REDIRECT = 'google.com'; #[=google.com]
    $EMAIL = 'miamail@yahoo.it'; #[=miamail@yahoo.it]
    $COLORE = '#9370DB'; #[=#9370DB]
    Se non funziona qualcosa, fammi sapere (non ho mai provato a fare certe modifiche).

    EDIT:

    Citazione Originalmente inviato da talkpluginorange Visualizza messaggio
    posso creare un form dove carichi un avatar che poi viene riprodotto sotto forma di icona nella homepage? E posso anche creare un piccolissimo sistema di messaggi e di notifiche? Come qui nel forum di altervista...
    Grazie mille!
    Certo che è possibile... Devi soltanto implementarlo.

    Ciao!

  23. #23
    Guest

    Predefinito

    Ok ora provo... per le notifiche e l'avatar mi potresti dare una dritta?

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

    Predefinito

    L'avatar, puoi far eseguire l'upload, e salvare l'immagine in una cartella. Poi, salvi ad esempio il nome dell'utente associato al nome dell'immagine... Ancora più facilmente, potresti rinominare l'immagine con il nick dell'utente, così non ti sbagli

    Per le notifiche, fai una tabella con tutte le notifiche degli utenti. Per vedere se un utente ha una notifica, fai un
    Codice:
    SELECT ... WHERE UTENTE = $utente
    Ciao!

  25. #25
    Guest

    Predefinito

    Grazie per la risposta, perdona la mia ignoranza non so come fare tutte queste funzioni...
    hai una guida o mi potresti dire più "approfonditamente" come fare?

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

  27. #27
    Guest

    Predefinito

    Ho dato un'occhiata, ma non ho trovato nulla per quanto riguarda l'upload degli avatar e le notifiche :(

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

    Predefinito

    Per l'upload, cercando si trova addirittura sul forum (cosa che devi fare prima di chiedere) :\

    Per le notifiche, ti ho già detto come fare (un modo).
    Il secondo link parla di mysql, come creare le tabelle etc etc... E quello mi pare sia più che sufficiente.

    Ciao!
    Ultima modifica di alemoppo : 15-04-2012 alle ore 19.45.22

  29. #29
    Guest

    Predefinito

    Ok, per le notifiche ci torno dopo... è sbagliato questo php per salvare gli avatar, vero?
    Codice PHP:
    <?php
    $uploaddir
    = 'img';
    $FILE_MAX_SIZE = '800';
    if (
    $_FILES['userfile']['size'] < $MAX_FILE_SIZE) {
    if (
    move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) {
    print
    "Il file è valido, e inviato con successo.";
    } else {
    print
    "Possibile attacco tramite file upload!";
    }
    } else {
    print
    "Dimensioni del file eccessive, il file non può superare i ".$MAX_FILE_SIZE." bytes.";
    }
    ?>
    EDIT:
    Sbaglio sempre a configurare i dati, oltre alla immagine di sopra, cosa c'è che non va qui?
    Codice PHP:
    $ACCOUNT_DB = '<mop_db'; #[=<Database_1]
    $INDIRIZZO_REDIRECT = 'google.com'; #[=google.com]
    $EMAIL = 'miamail@yahoo.com'; #[=miamail@yahoo.com]
    $COLORE = '#9370DB'; #[=#9370DB]
    */
    define('HEADER_MAIL','From: '.(isset($EMAIL)?$EMAIL:(miamail@yahoo.com).(isset($EMAIL)?('<'.$EMAIL.'>'):(nick().'>')));
    function
    colore()
    {
    EDIT:

    Mi scuso se faccio UP, ma avendo fatto EDIT non avreste visto il mio messaggio...
    Allora, ho questo script che salva le immagini caricate (che saranno gli avatar), ora cosa devo fare per continuare? Devo assegnare ogni immagine ad un utente?
    Comunque, ecco il codice dello script (la cartella si chiama "upload_img")
    form.html
    Codice HTML:
    <form action="upload.php" method="post" enctype="multipart/form-data">
        <!-- Campo file di nome "image" -->
        <input name="image" type="file" size="40" />
        <br /><br />
        <!-- Pulsante -->
        <input name="upload" type="submit" value="Carica immagine" />
    </form>
    ed ecco il PHP del file "upload.php":
    Codice PHP:
    <?php
    do {
    if (
    is_uploaded_file($_FILES['image']['tmp_name'])) {
    // Controllo che il file non superi i 18 KB
    if ($_FILES['image']['size'] > 18432) {
    $msg = "<p>Il file non deve superare i 18 KB!</p>";
    break;
    }
    // Ottengo le informazioni sull'immagine
    list($width, $height, $type, $attr) = getimagesize($_FILES['image']['tmp_name']);
    // Controllo che le dimensioni (in pixel) non superino 160x180
    if (($width > 160) || ($height > 180)) {
    $msg = "<p>Dimensioni non corrette!</p>";
    break;
    }
    // Controllo che il file sia in uno dei formati GIF, JPG o PNG
    if (($type!=1) && ($type!=2) && ($type!=3)) {
    $msg = "<p>Formato non corretto!</p>";
    break;
    }
    // Verifico che sul sul server non esista già un file con lo stesso nome
    // In alternativa potrei dare io un nome che sia funzione della data e dell'ora
    if (file_exists('upload_img/'.$_FILES['image']['name'])) {
    $msg = "<p>File già esistente sul server. Rinominarlo e riprovare.</p>";
    break;
    }
    // Sposto il file nella cartella da me desiderata
    if (!move_uploaded_file($_FILES['image']['tmp_name'], 'upload_img/'.$_FILES['image']['name'])) {
    $msg = "<p>Errore nel caricamento dell'immagine!</p>";
    break;
    }
    }
    } while (
    false);
    echo
    $msg;
    ?>
    e fino a qui mi salva le immagini, ora?

    Inoltre, non riesco a connettermi al database, perchè per questo script non uso AlterVista, e mi da errore.
    Codice PHP:
    if(isset($ACCOUNT_DB))
    $nick = $ACCOUNT_DB;
    else
    $nick = nick();
    $db = mysql_connect('localhost',$nick,'');
    if(!
    $db)
    die(
    'Impossibile connettersi al database: '.mysql_error());
    if(!
    mysql_select_db('my_'.$nick,$db))
    die(
    'Impossibile selezionare il database');
    }
    tipo, il nome del database dovrebbe essere "My_sql", e lì è configurato tutto per AlterVista, mi potresti dire anche qui come fare?
    Grazie mille!
    Ultima modifica di alemoppo : 16-04-2012 alle ore 14.22.24

Regole di scrittura

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