Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Form Login

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    1

    Form Login

    Salve ragazzi volevo chiedervi un aiuto per un form che volevo creare per 1 sito di fantacalcio; in pratica vorrei creare un login form con password per 6 diverse persone in modo ke dopo l'autenticazione, ognuno possa inviare la propria formazione che compaia direttamente sulla pagina del sito, in modo da evitare telefonate e rendere il tutto "pubblico" per evitare imbrogli ecc..ho letto 1 pò sul web ke è possibile farlo in tanti modi compreso in php ma non ci capisco molto..avete qualche link da consigliarmi per creare un form facile facile? in fondo non ho bisogno di grandi script..vi ringrazio in anticipo!

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    14
    Credo che dovrai salvare i dati in un DB.
    Provo a buttare lì qualche idea

    1- Creare le tabelle
    2- Registrare gli utenti nel DB
    3- Creare le pagine per effettuare l'autenticazione (login/logout)
    4- Creare la pagina per caricare le formazioni
    5- Visualizzare tutte le formazioni suddivise per utenti

    Iniziamo creando due tabelle: utenti e formazioni

    codice:
    CREATE TABLE utenti(
     id_utente TINYINT(3) AUTO_INCREMENT,
     user VARCHAR(25) NOT NULL DEFAULT '',
     password VARCHAR(100) NOT NULL DEFAULT '',
     PRIMARY KEY (id_utente),
     UNIQUE(user)
    )TYPE=InnoDB;
    
    CREATE TABLE formazioni(
     id_formazione TINYINT(3) AUTO_INCREMENT,
     id_utente TINYINT(3) NOT NULL,
     data_ins DATA NOT NULL DEFAULT '0000-00-00', 
     portiere VARCHAR(25) NOT NULL DEFAULT '',
     difensore1 VARCHAR(25) NOT NULL DEFAULT '',
    ...ecc  // QUI VERRENNO INSERITI GLI ALTRI CAMPI CHE SERVONO
     PRIMARY KEY (id_formazione),
     FOREIGN KEY (id_utente) REFERENCES utenti(id_utente)
     ON UPDATE CASCADE
     ON DELETE CASCADE
    )TYPE=InnoDB;
    Ora creiamo il form per far registrare gli utenti:

    codice:
    <form action='carica_utenti_db.php' method='post'>
    User <input type='text' name='username' />
    Password <input type='password' name='pass' />
    <input type='submit' value='registrati' />
    </form>
    nel file carica_utenti_db.php
    oltre a controllare la validità dei dati inseriti nel form, potresti 'criptare' la password utilizzando la funzione md5() .

    Se non vuoi utilizzare un form per registrare gli utenti puoi usare una INSERT ad esempio:
    INSERT INTO utenti SET (user='giocatore1', password='passGiocatore1');
    INSERT INTO utenti SET (user='giocatore2', password='passGiocatore2');
    ...

    una volta che hai caricato gli utenti, devi creare il form di login:
    codice:
    <form method='post' action='login.php'>
     User <input type='text' name='username' />
     Password <input type='password' name='pass' />
    <input type='submit' value='Entra' />
    </form>
    nella pagina login.php
    Codice PHP:
    <?php
    /* 
    * ...qui va inserito il codice per collegarsi al database
    */

    $username=$_POST['username'];
    $password=$_POST['pass']; 
    /* oppure  $password=md5($_POST['pass']); se hai criptato la password */

    $sql="SELECT * FROM utenti WHERE username='$username' and password='$password'";
    $result=mysql_query($sql);

    /* conti il numero delle righe con la funzione mysql_num_rows(), se il risultato è == 1
    * registri le variabili di sessione ad esempip username e con la 
    * header("location:inserisci_formazione.php"); 
    * reindirizzi l'utente alla pagina dove si trova il form per inserire la formazione, altrimenti
    * visualizzerai un messaggio di errore con una echo "Errore: User o Password non validi";
    */

    ?>
    la pagina di logout conterrà solo poche righe di codice:

    Codice PHP:
    <?
    session_start
    ();
    session_destroy();
    ?>
    nella pagina inserisci_formazione.php, come prima cosa avvii la sessione e poi
    con la funzione session_is_registred(), reindizzi l'utente alla pagina login.php nel caso in cui la variabile username non è stata registrata nella sessione.

    Codice PHP:
    <?php
    session_start
    ();
    //controlli che 
    if(!session_is_registered(username)){
    header("Location:login.php");
    }
    ?>
    <html><body>
    <form action='carica_formazione.php' method='post'>
    Portiere <input type='text' name='poriere' />
    ... altri dati
    <input type='submit' value='Inserisci formazione' />

    </form>
    </body></html>
    nel file carica_formazione.php

    Codice PHP:
    <?php
    session_start
    ();
    //controlli che 
    if(!session_is_registered(username)){
    header("Location:login.php");
    }

    // crei una funzione per controllare i dati provenienti da inserisci_formazione.php
    // crei una funzione per recuperare l'id_utente dalla tabella utenti
    // qui inserisci il codice per collegarti al DB

    // dopo aver fatto tutti i controlli necessari, inserisci la formazione nel DB : 
    $sql "INSERT INTO formazioni SET ... ecc ";
    $querymysql_query($sql);
    /* 
    se non ci sono errori stampi echo "Formazione inserita"; altrimenti visualizzi un messaggio di errore.  Infine inserisci i link per effettuare il logout e per visualizzare tutte le formazioni inserite.

    */

    ?>
    ultima pagina visualizza_formazioni.php

    Codice PHP:
    <?php
    //connesione al DB
    $sql="SELECT id_utente FROM utenti"
    $query=mysql_query($sql);
    while(
    $dato=mysql_fetch_assoc($query)){
    /* nella WHERE puoi fare un controllo sul campo data_ins per visualizzare le formazioni inserite  solo in una certa data.
    */

    $sql2="SELECT * FROM formazioni,utenti WHERE formazioni.id_utente=utenti.id_utente AND
    utenti.id_utente="
    .$dato['id_utente'];
    $query2=mysql_query($sql2);
     while(
    $dati=mysql_fetch_assoc($sql2)){
       
    // Stampa i dati
     
    }

    }

    ?>
    ovviamente questo è solo per dare un'idea.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.