+ Rispondi alla Discussione
Pagina 1 di 15 12311 ... UltimaUltima
Risultati da 1 a 50 di 731

[Tutorial] Area privata

Ultimo Messaggio di Gigi991 il:
  1. #1
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita

    [Tutorial] Area privata

    Ho scritto un piccolo tutorial, una basilare area privata, con ovviamente registrazione e login.
    Manca la grafica visto che l'obiettivo era solo quello di dare le basi a chi si avvicina da poco al php.

    database
    Codice PHP:
    CREATE TABLE `utenti` (
    `
    idINT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `
    userTEXT NOT NULL ,
    `
    passTEXT NOT NULL ,
    `
    mailTEXT NOT NULL
    ENGINE MYISAM 
    config.php
    Codice PHP:
    <?php
    // avvio la sessione
    session_start();

    // Dati connessione al database
    $db_host 'localhost';        // Host - solitamente localhost
    $db_utente 'root';        // Nome utente del Database
    $db_password 'pass';        // Password del Database
    $db_nomedb 'thedarkita';     // Nome del Database

    // Effettua la connessione al database
    $dbh=mysql_connect ($db_host$db_utente$db_password) or die ('Errore nella stringa di connessione al database: '.mysql_error());
    mysql_select_db($db_nomedb);
    ?>
    index.php
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Tutorial by TheDarkITA</title>
    </head>

    <body>
    Menu:<br />
    <br />
    <br />
    <?php
    if(isset($_SESSION['login']))
        echo 
    '<a href="privata.php">Area privata</a><br /><a href="logout.php">Logout</a><br />';
    else
        echo 
    '<a href="registrati.php">Registrazione</a><br /><a href="login.php">Login</a><br />';
    ?>
    </body>
    </html>
    login.php
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');


    // Se il modulo viene inviato...
    if(isset($_POST['login']))
    {
        
        
    // Dati Inviati dal modulo
        
    $user = (isset($_POST['user'])) ? trim($_POST['user']) : '';    // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : '';    // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
        // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza
        
    if (!get_magic_quotes_gpc()) {
            
    $user addslashes($user);
            
    $pass addslashes($pass);
        }
        
        
    // Crypto la password e la confronto con quella nel database
        
    $pass md5($pass);
        
        
    // Controllo l'utente esiste
        
    $query mysql_query("SELECT id FROM utenti WHERE user = '$user' AND pass = '$pass' LIMIT 1");
        
        
    // Se ha trovato un record
        
    if(mysql_num_rows($query) == 1)
        {
            
    // prelevo l'id dal database
            
    $login mysql_fetch_array($query);
            
            
    // Creo una variabile di sessione
            
    $_SESSION['login'] = $login['id'];
            
            
    // reindirizzo l'utente
            
    header('Location: privata.php');
            exit;
        }
        
    // se non esiste da l'errore
        
    else
            die(
    'Nome Utente o Password errati');
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Login</title>
    </head>

    <body>
    <form action="" method="post">
     <input name="user" type="text" id="user" value="Nome Utente" onfocus="if(this.value=='Nome Utente') this.value='';" /><br />
     <input name="pass" type="password" id="pass" value="Password" onfocus="if(this.value=='Password') this.value='';" /><br />
     <input name="login" type="submit" value="Login" /><br />
    </form>
    </body>
    </html>
    logout.php
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');

    // Esegue il logout cancellando la sessione
    session_destroy();
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Logout</title>
    </head>

    <body>
    Logout eseguito<br />
    <a href="index.php">Vai all'index</a><br />
    </body>
    </html>
    privata.php
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');

    // Se non Ŕ stata definita la variabile manda l'utente alla homepage
    if(!isset($_SESSION['login']))
    {
        
    header('Location: index.php');
        exit;
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Area privata</title>
    </head>

    <body>
    Pagina privata!<br />
    <br />
    <br />
    <a href="logout.php">Logout</a><br />
    </body>
    </html>
    registrati.php
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');


    // Se il modulo viene inviato...
    if(isset($_POST['registra']))
    {
        
        
    // Dati Inviati dal modulo
        
    $user = (isset($_POST['user'])) ? trim($_POST['user']) : '';    // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : '';    // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $mail = (isset($_POST['mail'])) ? trim($_POST['mail']) : '';    // Metto nella variabile 'mail' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
        // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza
        
    if (!get_magic_quotes_gpc()) {
            
    $user addslashes($user);
            
    $pass addslashes($pass);
            
    $mail addslashes($mail);
        }
        
        
        
    // Controllo il Nome Utente
        
    if(strlen($user) < || strlen($user) > 12)
            die(
    'Nome Utente troppo corto, o troppo lungo');
        
    // Controllo la Password
        
    elseif(strlen($pass) < || strlen($pass) > 12)
            die(
    'Password troppo corta, o troppo lunga');
        
    // Controllo l'email
        
    elseif(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})"$mail))
            die(
    'Email non valida');
        
    // Controllo il nome utente non sia giÓ occupato
        
    elseif(mysql_num_rows(mysql_query("SELECT user FROM utenti WHERE user = '$user' LIMIT 1")) == 1)
            die(
    'Nome Utente non disponibile');
        
    // Controllo l'indirizzo email non sia giÓ registrato
        
    elseif(mysql_num_rows(mysql_query("SELECT mail FROM utenti WHERE mail = '$mail' LIMIT 1")) == 1)
            die(
    'Questo indirizzo email risulta gi&agrave; registrato ad un altro utente');
        
    // Registrazione dell'utente nel database
        
    else
        {
            
            
    // Crypt della password per garantire una miglior sicurezza
            
    $pass md5($pass);
            
            
    // Query per l'inserimento dell'utente nel database
            
    $strSQL "INSERT INTO utenti (user,pass,mail)";
            
    $strSQL .= "VALUES('$user', '$pass', '$mail')";
            
    mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error());
            
            
    // Reindirizzo l'utente ad una pagina di conferma della registrazione
            
    header('Location: registrato.php');
            exit;
        }
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Registrazione</title>
    </head>

    <body>
    <form action="" method="post">
     <input name="user" type="text" id="user" value="Nome Utente" onfocus="if(this.value=='Nome Utente') this.value='';" /><br />
     <input name="pass" type="password" id="pass" value="Password" onfocus="if(this.value=='Password') this.value='';" /><br />
     <input name="mail" type="text" id="mail" value="Em@il" onfocus="if(this.value=='Em@il') this.value='';" /><br />
     <input name="registra" type="submit" value="Registrati" /><br />
    </form>
    </body>
    </html>
    registrato.php
    Codice PHP:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <
    html xmlns="http://www.w3.org/1999/xhtml">
    <
    head>
    <
    meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <
    title>Registrazione Completa</title>
    </
    head>

    <
    body>
    Registrazione completa!<br />
    <
    br />
    <
    br />
    <
    a href="index.php">Vai all'index</a><br />
    </body>
    </html> 
    Per i pi¨ pigri Ŕ possibile scaricare lo script completo a questo indirizzo scarica i file
    Ultima modifica di Thedarkita; 02-08-09 alle 12:33 Motivo: Corretto errore SQL

  2. #2
    Esperto L'avatar di ceccus
    Data Registrazione
    Oct 2006
    Messaggi
    920
    Grazie Thedarkita,
    un ottimo tutorial.

  3. #3
    Utente Premium
    Data Registrazione
    Jul 2008
    Messaggi
    300
    Veramente ben fatto... e ben commentato soprattutto

    keiske
    21,60 euro a cliente: PPS di Privacy-Impresa

  4. #4
    User
    Data Registrazione
    Jul 2008
    LocalitÓ
    Genova
    Messaggi
    10
    Ho utilizzato i tuoi script per creare la pagina di log in e registrazione ma ottengo sempre degli errori.

    Ci sono delle parti da cambiare negli script?

  5. #5
    User L'avatar di danny1975
    Data Registrazione
    Jun 2007
    Messaggi
    388
    Ultima modifica di Andrez; 03-08-09 alle 09:43

  6. #6
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Grazie
    devi modificare solo il file config.php mettendo i dati di accesso al database...

  7. #7
    User
    Data Registrazione
    May 2008
    Messaggi
    80
    ciao ragazzi,
    davvero un utile tutorial!!!

    ma... in questo modo tutti gli utenti potranno vedere la stessa pagina???
    quindi sia l'utente cia che l'utente tantisaluti vedranno la pag. privata???

  8. #8
    Utente Premium L'avatar di Inverter
    Data Registrazione
    Jun 2008
    Messaggi
    136
    Ultima modifica di Andrez; 03-08-09 alle 09:43

  9. #9
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Citazione Originariamente Scritto da Motherboard Visualizza Messaggio
    ciao ragazzi,
    davvero un utile tutorial!!!

    ma... in questo modo tutti gli utenti potranno vedere la stessa pagina???
    quindi sia l'utente cia che l'utente tantisaluti vedranno la pag. privata???
    Si

  10. #10
    Utente Premium
    Data Registrazione
    Jul 2008
    Messaggi
    300
    Ovviamente sarai tu poi a diversificare i contenuti a seconda dell'utente...

    se si logga l'utente PIPPO e vuoi fargli vedere cose solo sue e queste cose le estrai da un database farai una query al database chiedendo tutti i dati necessari che coincidono con PIPPO o che coincidono col numero utente di PIPPO e siccome PIPPO deve loggarsi, salvando nelle variabili di sessione il suo nome o il suo numero lo puoi ricavare da $_SESSION['nome'] o $_SESSION['id'] precedentemente salvate

    keiske
    21,60 euro a cliente: PPS di Privacy-Impresa

  11. #11
    Ricercatore L'avatar di supercapocc
    Data Registrazione
    Apr 2007
    LocalitÓ
    Roma
    Messaggi
    660
    salve a tutti, la mia domandina Ŕ :
    come integrare l'autologin, il "ricordami" sul file login e credo poi su tutti gli altri file qui in questione ?

  12. #12
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    dovresti creare dei cookie con user e pass. e all'accesso dovresti vedere se sono settati i cookie e in quel caso mandarlo ad una pagina di login che prenda i valori dai cookie invece che dal form

  13. #13
    User
    Data Registrazione
    Aug 2008
    Messaggi
    64
    scusate ho sbagliato ho risposto ad un altro post !!!!!!!!!perdonatemi
    Ultima modifica di tapin; 09-08-08 alle 15:53

  14. #14
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    nel database manca una virgola nel codice sql
    il file corretto Ŕ il seguente:
    Codice PHP:
    CREATE TABLE `utenti` (
    `
    idINT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `
    userTEXT NOT NULL ,
    `
    passTEXT NOT NULL ,
    `
    mailTEXT NOT NULL
    ENGINE MYISAM 

  15. #15
    User Newbie L'avatar di tensen
    Data Registrazione
    Aug 2008
    Messaggi
    1
    Mi chiedo come mai l'ho installato ma non mi fa il redirect quando mi registro e quando mi loggo.

    Lo script aggiunge correttamente i dati sul database.

    Dove sto sbagliando?

  16. #16
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Cosa vedi invece di essere reindirizzato?

    dopo la funzione header() hai messo exit; perchŔ con internet explorer senza quello da qualche problemino...

  17. #17
    Utente Premium
    Data Registrazione
    Mar 2007
    LocalitÓ
    Catania
    Messaggi
    731
    ma dopo questa istruzione
    Codice PHP:
        if(mysql_num_rows($query) == 1){ 
    non ci va un
    Codice PHP:
    session_start() 
    ?
    a me senza quello non funzionava....

  18. #18
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ŕ nel config session_start... se lo rimetti genera errore...

  19. #19
    Utente Premium
    Data Registrazione
    Mar 2007
    LocalitÓ
    Catania
    Messaggi
    731
    ok per˛ ho un altro problema.
    se accedo all'area privata da un server win 2003, salta la pagina di login ed entra direttamente.
    come si pu˛ risolvere questo preblema??

  20. #20
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    CioŔ?

  21. #21
    Utente Premium
    Data Registrazione
    Mar 2007
    LocalitÓ
    Catania
    Messaggi
    731
    allora i miei siti hanno una pagina admin/index.php che, se non si Ŕ loggati, reindirizza su admin/login.php
    Invio il form a admin/verifica.php che decide se autenticarmi o meno...come nel tutorial
    ma se sto usando una macchina con Win2003 e vado per esempio su admin/index.php, ci accede tranquillamente senza reindirizzarmi su login.php
    come mai?

  22. #22
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Allora se hai fatto precedentemente il login Ŕ normale fin quando non elimini i cookie o la sessione.
    Se invece lo fa anche non facendo il login precedentemente, manca il controllo sulla pagina di amministrazione che ti reindirizzi al login

  23. #23
    Utente Premium
    Data Registrazione
    Mar 2007
    LocalitÓ
    Catania
    Messaggi
    731
    ripeto....sugli altri computer funziona alla perfezione. Solo da server Win2003

    se hai la possibilitÓ prova tu stesso....
    Ŕ un grosso bug!

  24. #24
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Non ho la possibilitÓ di provare, comunque il codice per me Ŕ scritto in modo corretto, forse hai sbagliato tu a implementare il codice nelle tue pagine...

  25. #25
    Utente Premium
    Data Registrazione
    Mar 2007
    LocalitÓ
    Catania
    Messaggi
    731
    l'ho provato anche creando nuove pagine interamente con i costri codici......
    la cosa mi spaventa molto....

  26. #26
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235

    Attivazione tramite mail

    Salve!
    Sto impazzendo per riuscire ad aggiungere allo script un attivazione tramite link inviata per email dopo la registrazione.
    Sono partito aggiungendo alla tabella utenti un campo "attivazione" con VARCHAR(1), con questo appena si invia il modulo di registrazione il valore rimane 0, e nella email segnalata nell'iscrizionein automatico dovrebbe arrivare un messaggio con un lnk per l'attivazione, e magari anche un riepilogo dei dati inviati..

    Nel file registrati.php ho aggunto questo pezzo (quelli in neretto):

    $strSQL = "INSERT INTO utenti (user,pass,mail,attivazione)";
    $strSQL .= "VALUES('$user', '$pass', '$mail', '0')";

    Non riesco a trovare i modo per creare la mail che crea un link di attivazione che cambia il valore su attivazione da 0 ad 1.

  27. #27
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ciao Gigi991,

    Benvenuto nel forum GT
    Allora per far invaire un link di attivazione agiremo nel seguente modo: Creiamo un campo attivazione di tipo varchar come hai fatto tu, ma di lunghezza imposteremo 32 caratteri, in modo da generare un codice casuale che impsoteremo come valore del campo.
    Nella pagina che avrÓ il compito di attivazione imposteremo il campo con valore "", quindi al login ci basterÓ controllare che il valore del campo sia uguale a "" se l'utente Ŕ stato attivato oppure no.


    Registrati.php
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');


    // Se il modulo viene inviato...
    if(isset($_POST['registra']))
    {
        
        
    // Dati Inviati dal modulo
        
    $user = (isset($_POST['user'])) ? trim($_POST['user']) : '';    // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : '';    // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $mail = (isset($_POST['mail'])) ? trim($_POST['mail']) : '';    // Metto nella variabile 'mail' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
        // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza
        
    if (!get_magic_quotes_gpc()) {
            
    $user addslashes($user);
            
    $pass addslashes($pass);
            
    $mail addslashes($mail);
        }
        
        
        
    // Controllo il Nome Utente
        
    if(strlen($user) < || strlen($user) > 12)
            die(
    'Nome Utente troppo corto, o troppo lungo');
        
    // Controllo la Password
        
    elseif(strlen($pass) < || strlen($pass) > 12)
            die(
    'Password troppo corta, o troppo lunga');
        
    // Controllo l'email
        
    elseif(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})"$mail))
            die(
    'Email non valida');
        
    // Controllo il nome utente non sia giÓ occupato
        
    elseif(mysql_num_rows(mysql_query("SELECT user FROM utenti WHERE user = '$user' LIMIT 1")) == 1)
            die(
    'Nome Utente non disponibile');
        
    // Controllo l'indirizzo email non sia giÓ registrato
        
    elseif(mysql_num_rows(mysql_query("SELECT mail FROM utenti WHERE mail = '$mail' LIMIT 1")) == 1)
            die(
    'Questo indirizzo email risulta gi&agrave; registrato ad un altro utente');
        
    // Registrazione dell'utente nel database
        
    else
        {
            
            
    // Crypt della password per garantire una miglior sicurezza
            
    $pass md5($pass);
            
            
            
    // Genero una stringa casuale di Attivazione
            
    $attivazione '';
            for(
    $x=1$x<=32$x++)
            
    $attivazione.=rand(0,9);
            
    $attivazione md5($attivazione);
            
    $message 'Per attivare il Suo account deve visitare il seguente link:<br><a href="http://www.sito.ext/attivazione.php?code='.$attivazione.'">Attiva account</a>';
            
    // Header dell'email, per madnarla in formato html
            
    $headers "From: NomeSito <sito@sito.ext>\r\n";
            
    $headers .= "Reply-To: sito@sito.ext\r\n";
            
    $headers .= "Return-Path: sito@sito.ext\r\n";
            
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

            
    // Invio L'email
            
    mail($mail'Registrazione Tutorial TheDarkITA'$message$headers);
            
            
    // Query per l'inserimento dell'utente nel database
            
    $strSQL "INSERT INTO utenti (user,pass,mail,attivazione)";
            
    $strSQL .= "VALUES('$user', '$pass', '$mail', '$attivazione')";
            
    mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error());
            

            
    // Reindirizzo l'utente ad una pagina di conferma della registrazione
            
    header('Location: registrato.php');
            exit;
        }
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Registrazione</title>
    </head>

    <body>
    <form action="" method="post">
     <input name="user" type="text" id="user" value="Nome Utente" onfocus="if(this.value=='Nome Utente') this.value='';" /><br />
     <input name="pass" type="password" id="pass" value="Password" onfocus="if(this.value=='Password') this.value='';" /><br />
     <input name="mail" type="text" id="mail" value="Em@il" onfocus="if(this.value=='Em@il') this.value='';" /><br />
     <input name="registra" type="submit" value="Registrati" /><br />
    </form>
    </body>
    </html>
    Attivazione.php
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');

        
    // Dati Inviati dal modulo
        
    $code = (isset($_GET['code'])) ? trim($_GET['code']) : '';    // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza
        
    if (!get_magic_quotes_gpc()) {
            
    $code addslashes($code);
        }
       
    // Controllo la validitÓ del link  
       
    if(strlen($code) != 32)
       die(
    'Codice non valido');
       
    // Aggiorno il record
       
    $update mysql_query("UPDATE utenti SET attivazione = '' WHERE attivazione = '$code' LIMIT 1"); 
       
    // Quanti record ha aggiornato la query
       
    $attivato mysql_affected_rows($update);
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Area privata</title>
    </head>

    <body>
    <?=($attivato == 1) ? 'Account Attivato' 'Errore, link non valido' ?><br />
    <br />
    <br />
    <a href="index.php">Homepage</a><br />
    </body>
    </html>
    Login.php
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');


    // Se il modulo viene inviato...
    if(isset($_POST['login']))
    {
        
        
    // Dati Inviati dal modulo
        
    $user = (isset($_POST['user'])) ? trim($_POST['user']) : '';    // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : '';    // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
        // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza
        
    if (!get_magic_quotes_gpc()) {
            
    $user addslashes($user);
            
    $pass addslashes($pass);
        }
        
        
    // Crypto la password e la confronto con quella nel database
        
    $pass md5($pass);
        
        
    // Controllo l'utente esiste
        
    $query mysql_query("SELECT id,attivazione FROM utenti WHERE user = '$user' AND pass = '$pass' LIMIT 1");
        
        
    // Se ha trovato un record
        
    if(mysql_num_rows($query) == 1)
        {
            
    // prelevo l'id dal database
            
    $login mysql_fetch_array($query);
            
    // L'account Ŕ attivo?
            
    if($login['attivazione'] == '')
            {
            
    // Creo una variabile di sessione
            
    $_SESSION['login'] = $login['id'];
            
            
    // reindirizzo l'utente
            
    header('Location: privata.php');
            exit;
            }
            else
            {
            die(
    'Attiva il tuo account!!!');
            }
        }
        
    // se non esiste da l'errore
        
    else
            die(
    'Nome Utente o Password errati');
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Login</title>
    </head>

    <body>
    <form action="" method="post">
     <input name="user" type="text" id="user" value="Nome Utente" onfocus="if(this.value=='Nome Utente') this.value='';" /><br />
     <input name="pass" type="password" id="pass" value="Password" onfocus="if(this.value=='Password') this.value='';" /><br />
     <input name="login" type="submit" value="Login" /><br />
    </form>
    </body>
    </html>

    Non ho testato, facci sapere se funziona correttamente

  28. #28
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Ho provato ora, mi inserisce l'utente nel database, blocca l'accesso alla pagina privata se l'account non Ŕ attivato per˛ non invia la mail e quindi Ŕ impossibile attivarsi..
    Ci sarÓ un prolema nel codice di invio mail..

  29. #29
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Il codice di invio mi sembra corretto, non stampa alcun errore?
    Hai controllato la posta indesiderata?

  30. #30
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Ho ricontrolato ora in posta, non c'Ŕ manco tra le indesiderate..
    Non da errori, finita la registrazione reindirizza in registrato.php, ma la mail non arriva, mentre al login funziona perchŔ mi dice che l'account non Ŕ stato ancora attivato..

  31. #31
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Devi sostituire gli header, mettendo un email valida, altrimenti vengono cestinate automaticamente dalla maggior delle societÓ...
    Hai inserito un indirizzo email valido?

  32. #32
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Si, facendo un esempio se la mia mail Ŕ pinco(a)pallino.it ho inseirito:
    Dove (a) = @ (Se no non mi invia la risposta..)

    // Header dell'email, per madnarla in formato html
    $headers = "From: NomeSito <pinco(a)pallino.it>\r\n";
    $headers .= "Reply-To: pinco(a)pallino.it\r\n";
    $headers .= "Return-Path: pinco(a)pallino.it\r\n";
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

    Provato anche a registrarmi con diversi domini di posta, ma non arriva
    Per˛ non sono sicuro su gli \r\n, non vorrei che li conta come indirizzo email, e lo vede come formato non valido.. E' giusto cosý o devo eliminare \r\n?

  33. #33
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    E' corretto cosi...

  34. #34
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Niente, sono stato un'oretta s¨, ho girato un po su google provando gli esempi in giro ma non riesco a farmela mandare, il risultato rimane lo stesso

  35. #35
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Come non detto, lo spazio web dove ho hostato i file non ha attivao la funzione mail(), ora l'ho richiesta, e poi credo funzionerÓ.

    Alla prossima!

  36. #36
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ok

  37. #37
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Rieccomi, allora mi hanno attivato il mail(), ho provato lo script e mi Ŕ arrivata la mail, solo che cliccando sul link di attivazione mi da questo errore:

    Warning: mysql_affected_rows(): supplied argument is not a valid MySQL-Link resource in /home/hosting/g/gianluigi/www/attivazione.php on line 17
    Errore, link non valido


    Cosa pu˛ essere?

  38. #38
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Prova a sostituire questo:
    Codice PHP:
    $attivato mysql_affected_rows($update); 
    Con questo:
    Codice PHP:
    $attivato mysql_affected_rows(); 

  39. #39
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Perfetto ora viualizza solo la scritta "Account Attivato" come dovrebbe.
    Ora provo a farmi da solo un po di pagine, se ho bisogno ripasso pi¨ tardi

  40. #40
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Bene

    Buon Lavoro

  41. #41
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Rieccomi!
    Problema di oggi, ho fatto un pagina membri.php, dove appunto vedere la lista di tutti i membri in ordine di username, e (miracolo!) ci sono quasi riuscito, ho solo il problema che mi fa vedere tutte le informazioni visibili dal database, ad esempio anche la password (criptata, ma comunque non Ŕ bello da vedere e manco sicuro, penso).
    Quindi chiedo come posso fare per visualizzare solo le voci che voglio io?
    Il codice:
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');
    $query="select * from utenti order by user";
    $resultmysql_query($query);
    $numfields mysql_num_fields($result);
    echo 
    "<table>\n<tr>";
    for (
    $i=0$i $numfields$i++) 
      { 
       echo 
    '<th>'.mysql_field_name($result$i).'</th>'
       }
       echo 
    "</tr>\n";
     
       while (
    $row mysql_fetch_row($result)) 
      { 
       echo 
    '<tr><td>'.implode($row,'</td><td>')."</td></tr>\n"
      }
    echo 
    "</table>\n";
      
    ?>
    Inoltre, in questo modo se ho per esempio 10 utenti o 1000, mi mostra comunque la lista utenti su una pagina.. Come fare per dividere la lista in pezzi, per esempio 20 nomi per pagina?

    Come sempre mi sa che chiedo poco , grazie a chi pu˛ rispondermi


  42. #42
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Per stampare solo il nome utente puoi fare cosi:
    Codice PHP:
     <?php
    // Includo la connessione al database
    require('config.php');

    // Query per ottenre la lista utenti
    $query="select * from utenti order by user";
    $resultmysql_query($query);

    echo 
    '<table>';
    while(
    $row mysql_fetch_array($result))
    {
    echo 
    '<tr><td>'.$row['username'].'</td></tr>';

    }
    echo 
    "</table>\n";
      
    ?>

  43. #43
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Il codice funziona ed Ŕ anche pi¨ pulito e comprensibile
    Per la cosa di stabilire un numero massimo di utenti da visualizzare per pagina come si pu˛ fare?
    Se ho 32 utenti e voglio fare per ogni pagina 10 utenti, per far fare quest suddivisione in automatico come si pu˛ fare?

  44. #44
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ciao Gigi991,

    Puoi fare cosi:
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('config.php');

    // Pagina
    $page = (isset($_GET['page'])) ? $_GET['page'] : 1;

    // Numero record di partenza per la selezione
    $limit = ($page-1)*10;

    // Query per ottenre la lista utenti
    $query="select * from utenti ORDER BY user LIMIT $limit,10";
    $resultmysql_query($query);
    // Numero utenti = mysql_num_rows($result)
    // Dividiamo per 10 che Ŕ il numero di utenti per pagina
    // ceil arrotonda per eccesso
    $pagine ceil(mysql_num_rows($result)/10);

    echo 
    '<table><tr><td>';
    // Pagine
    for($i=1$i<=$pagine$i++)
    {
     echo 
    '<a href="membri.php?page='.$i.'">'.$i.'</a> ';
    }
    echo 
    '</td></tr>';
    while(
    $row mysql_fetch_array($result))
    {
    echo 
    '<tr><td>'.$row['username'].'</td></tr>';

    }
    echo 
    "</table>\n";
      
    ?>
    Se hai dubbi sul codice chiedi pure

  45. #45
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Si visto che ci sono queste 2 cose:

    // Numero record di partenza per la selezione
    $limit = ($page-1)*20;

    E quindi anche il pezzo aggiunto dove Ŕ richiamata la variabile
    // Query per ottenre la lista utenti
    $query="select * from utenti ORDER BY user LIMIT $limit,20";

    Non li ho capiti bene, sopratutto il significato del -1 vicino a $page..

    Per il ceil una conferma
    // ceil arrotonda per eccesso
    $pagine = ceil(mysql_num_rows($result)/20);

    Questo in pratica dice che se per esempio ho 46 utenti /20 verrÓ 2,XX, e quindi arrotonda a 3 perchŔ serve comunque una terza pagina per gli ultimi 12 nomi, giusto?

  46. #46
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ciao Gigi991,

    Il -1 serve a far si che:
    Se la pagina richiesta Ŕ la 1, FarÓ 1-1*20, quindi deve partire dal record numero 0
    Se la pagina richiesta Ŕ la 2, FarÓ 2-1*20, quindi deve partire dal record numero 20

    I record ovviamente partono da 0, non da 1.


    LIMIT $limit,20

    Dice di partire dal record $limit, e prendere 20 record.
    Per il ceil Ŕ esatto in quel modo.

    Spero di essere stato chiaro, se hai altri dubbi chiedi pure

  47. #47
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Tutto chiaro per quello sritto sopra.

    Ora, sono tornato alla pagina di registrazione, e tanto per complicarmi di pi¨ la vita ho deciso di inserire un menu a tendina con tutte le province italiane..
    Per non sprecare spazio nel database ho creato una nuova tabella 'province' con i campi "id" e "nome", in modo da registrare come dato nella tabella utenti solo il numero id della provincia, e rendere visibile sulle pagine php (e nel men¨ a tendina) il nome per intero.
    Nella vecchia tabella 'utenti' ho aggiunto il campo residenza.

    Nella pagina registrati.php ho aggiunto dentro l campo form:

    Codice PHP:
     <select name="provincia">
      <?php
      $strQuery
    ="select * from province";
      
    $elenco=mysql_query($strQuery) or die(mysql_error());
      while(
    $row_province=mysql_fetch_array($elenco)){
      
    $id=$row_province[id];
      
    $nome=$row_province[nome];
      echo 
    '<option value="'.$id.'">'.$nome.'</option>';
      }
      
    ?>
     </select>
    Si vedono tutte le provincie, solo che non me lo registra nel database..
    Ho provato anche a fare non so quante modifiche,ma il risultato era lo stesso..
    Torno a chieervi aiuto dopo ore per fare sta cavolata

  48. #48
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    L'elaborazione dovresti farla cosi:
    Codice PHP:
    <?php
    // Se il modulo viene inviato...
    if(isset($_POST['registra']))
    {
        
        
    // Dati Inviati dal modulo
        
    $user = (isset($_POST['user'])) ? trim($_POST['user']) : '';    // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : '';    // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $mail = (isset($_POST['mail'])) ? trim($_POST['mail']) : '';    // Metto nella variabile 'mail' il dato inviato dal modulo, se non viene inviato d˛ di default ''
        
    $provincia = (isset($_POST['provincia'])) ? trim($_POST['provincia']) : '';
        
    // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza
        
    if (!get_magic_quotes_gpc()) {
            
    $user addslashes($user);
            
    $pass addslashes($pass);
            
    $mail addslashes($mail);
            
    $provincia addslashes($provincia);
        }
        
        
        
    // Controllo il Nome Utente
        
    if(strlen($user) < || strlen($user) > 12)
            die(
    'Nome Utente troppo corto, o troppo lungo');
        
    // Controllo la Password
        
    elseif(strlen($pass) < || strlen($pass) > 12)
            die(
    'Password troppo corta, o troppo lunga');
        
    // Controllo l'email
        
    elseif(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})"$mail))
            die(
    'Email non valida');
        
    // Controllo il nome utente non sia giÓ occupato
        
    elseif(mysql_num_rows(mysql_query("SELECT user FROM utenti WHERE user = '$user' LIMIT 1")) == 1)
            die(
    'Nome Utente non disponibile');
        
    // Controllo l'indirizzo email non sia giÓ registrato
        
    elseif(mysql_num_rows(mysql_query("SELECT mail FROM utenti WHERE mail = '$mail' LIMIT 1")) == 1)
            die(
    'Questo indirizzo email risulta gi&agrave; registrato ad un altro utente');
        
    // Registrazione dell'utente nel database
        
    else
        {
            
            
    // Crypt della password per garantire una miglior sicurezza
            
    $pass md5($pass);
            
            
            
    // Genero una stringa casuale di Attivazione
            
    $attivazione '';
            for(
    $x=1$x<=32$x++)
            
    $attivazione.=rand(0,9);
            
    $attivazione md5($attivazione);
            
    $message 'Per attivare il Suo account deve visitare il seguente link:<br><a href="http://www.sito.ext/attivazione.php?code='.$attivazione.'">Attiva account</a>';
            
    // Header dell'email, per madnarla in formato html
            
    $headers "From: NomeSito <sito@sito.ext>\r\n";
            
    $headers .= "Reply-To: sito@sito.ext\r\n";
            
    $headers .= "Return-Path: sito@sito.ext\r\n";
            
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

            
    // Invio L'email
            
    mail($mail'Registrazione Tutorial TheDarkITA'$message$headers);
            
            
    // Query per l'inserimento dell'utente nel database
            
    $strSQL "INSERT INTO utenti (user,pass,mail,attivazione, provincia)";
            
    $strSQL .= "VALUES('$user', '$pass', '$mail', '$attivazione', '$provincia')";
            
    mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error());
            

            
    // Reindirizzo l'utente ad una pagina di conferma della registrazione
            
    header('Location: registrato.php');
            exit;
        }
    }
    ?>
    Bisognerebbe fare dei controlli sull'input provincia, in modo da evitare che si possano inviare valori nn validi...

  49. #49
    User
    Data Registrazione
    Dec 2008
    LocalitÓ
    Italia
    Messaggi
    235
    Ecco, non ci crederai ma ho provato anche prima che mi crvevi tu ad inserire le stesse righe di codice, ma comunque non mi inserisce i dati nel database, l'unica cosa che penso Ŕ che da qualche parte forse sbaglio i nomi delle variabili o dell tabelle nel database..
    Ti riscrivo tutti i nomi che ho dato alle tabelle del database, e le righe di codice aggiunte, cosi vediamo se ho magari invertito qualche variabile..

    Nel database ho tabella 'utenti' con campi (in ordine cosý): id, user, pass, mail, residenza, attivazione.
    Nella tabella 'province' ho i campi: id, nome.

    Nel codice PHP, nei "Dati inviati dal modulo" ho aggiunto:
    Codice PHP:
     $residenza = (isset($_POST['residenza'])) ? trim($_POST['residenza']) : ''
    Nel filtro di dati magic_quotes ho aggiunto:
    Codice PHP:
    $residenza addslashes($residenza); 
    Nella query per l'inserimento utente nel database ho messo:
    Codice PHP:
    $strSQL "INSERT INTO utenti (user,pass,mail,residenza,attivazione)";
    $strSQL .= "VALUES('$user', '$pass', '$mail', '$residenza', '$attivazione')";
    mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error()); 
    E per finire nel campo form tra input name mail e registra ho aggiunto:
    <select name="provincia">
    <?php
    $strQuery="select * from province";
    $elenco=mysql_query($strQuery) or die(mysql_error());
    while($row_province=mysql_fetch_array($elenco)){
    $id=$row_province[id];
    $nome=$row_province[nome];
    echo '<option value="'.$id.'">'.$nome.'</option>';
    }
    ?>
    </select>


    Con uesti pezzi aggiunti nella form di registrazione il menu a tendina ha dentro tutte le provincie, quindi la parte del fom dovrebbe essere corretta, ma non inserisce il dato nella tabella utenti, il campo rsidenza mi rimane vuoto..

    Quando avete tempo se potete vedere se ho sbagliato qualche richiamo o sbagliato variabili vi faccio santi
    Intanto io continuo con le prove, magari di mattina il cervello lavora meglio..



    EDIT: Altra cosa, mettendo <select> tra input mail e registra, nella form non mi fa pi¨ vedere il tasto "Registrati", come mai?
    Ultima modifica di Gigi991; 23-12-08 alle 11:09

  50. #50
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    LocalitÓ
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ciao gigi991,

    Il nome del select Ŕ provincia non residenza...
    Per il tasto registrati, avrai fatto qualche errore nella sintassi html...
    Posta tutta la pagina, se non riesci a risolvere, altrimenti cosi posso capire ben poco....

+ Rispondi alla Discussione
Pagina 1 di 15 12311 ... UltimaUltima

Tag per Questa Discussione

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB Ŕ Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] Ŕ Attivato
  • Il codice [VIDEO] Ŕ Attivato
  • Il codice HTML Ŕ Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.