Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Controllo su login

  1. #1

    Controllo su login

    questo è il login finale utilizzato e funzionante.... ora mi manca solo un controllo che ritorna un errore se l'utente clicca su login senza aver inserito nessun dato.... l'ho fatto nella pagina checkusers solo che mostra l'errore appena carico il login senza aver premuto il tasto login (ovvio il messaggio e nella form) solo che non so come sistemarlo...

    pagina login.php

    Codice PHP:
    ...
    <?php require_once('checkuser.php');?>
    ...
    .....
    <?php
                    
    //Controllo che l' utente sia loggato
                    
    if(IsSet($_SESSION['logged']))
                    {
                        
    //L' utente e' loggato

                    
    }else{
                        
                    
    ?>

                    <form method="post" action="<?php echo $_SERVER['PHP_SELF'?>">
                    <table class="table_login" summary="Login Utente">
                    <tr>
                        <td>Login:</td>
                        <td><input class="input_registrazione" id="username" name="username" maxlength="200" value="" onfocus="setStyle(this.id)" /></td>
                    </tr>
                    <tr>
                        <td>Password:</td>
                        <td><input class="input_registrazione" id="password" name="password" maxlength="200" value="" onfocus="setStyle(this.id)" /></td>
                    </tr>
                    </table>

                    <div class="" id=""><input id="sumbit_login" class="sumbit_login" type="submit" value="Accedi" /></div>

                    <div class="recoverypassword" id="">[url="forgotpw.php"]Recupera Password[/url]</div>
                    <div class="register" id="">[url="register.php"]Registrazione[/url]</div>
                    </form>
                    
                    <?php
                    
    }
                    
    ?>

                    <div class="" id="">
                    <?   // riporto gli errori di inserimento dati
                         
    echo '<ul class=error_reg>';

                         foreach (
    $errori AS $v) {
                        
                         echo 
    '[*]'.$v.'';
                         }
                         echo 
    '[/list]';
                    
    ?>
    pagina ceckuser.php

    Codice PHP:
    <?php

    //Avvio o continuo la sessione
    session_start();

    //Controllo che la sessione sia attiva
    if(!IsSet($_SESSION['logged']))
    {
        
    //Controllo se l' utente vuole loggarsi
        //Recupero i valori da una Form
        
    $username = @$_POST['username'];
        
    $password = @$_POST['password'];
        
        
    //Controllo se l' username e la password non sono vuoti
        
    if((!strlen($username) == 0) and (!strlen($password) == 0))
        {
            
    //Effettuo il controllo dei dati
            
    $strSQL "SELECT iduser FROM users WHERE username = '".$username."' AND password = MD5('".$password."')";
            
    $result mysql_query($strSQL);
            
    $row mysql_fetch_row($result);
            
    //Controllo se l' utente e' stato trovato
            
    if(!strlen($row[0]) == 0)
            {
                
    //Effettuo il login
                
    $_SESSION['logged'] = $row[0];
                
    $_SESSION['username'] = $username;
            }
            
    //Libero la memoria
            
    mysql_free_result($result);
        }
        
        if (
    $username == "" and $password == ""// controllo che l'utente abbia inserito i dati nel form
        
    {
            
    $errori[0] = "La [b]Username[/b] e la [b]Password[/b] sono obbligatori";
        }
        
        return 
    $errori;
        }

    if(@
    $_GET['logout'] == bye//Effettuo il Logout
    {
        
    $_SESSION = array(); //Desetto tutte le variabili di sessione
        
    session_destroy(); //Distruggo le sessioni
        
    require_once('index.php');
    }
    ?>
    L'uomo che considera senza senso la propria vita e quella dei suoi simili, non è soltanto sfortunato ma è quasi squalificato per vivere.
    http://myscript72.altervista.org

  2. #2
    Utente bannato L'avatar di Skyline89
    Registrato dal
    Jun 2006
    Messaggi
    225
    da quello che ho capito nella tua domanda lo hai già fatto... prova a spiegarti con altre parole

  3. #3
    si Skyline89 il controllo è fatto solo che avviene prima che l'utente abbia premuto il tasto invia.. cioè appena si apre la pagina di login c'è già stampato l'errore!
    L'uomo che considera senza senso la propria vita e quella dei suoi simili, non è soltanto sfortunato ma è quasi squalificato per vivere.
    http://myscript72.altervista.org

  4. #4
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Anche io non ho ben chiaro,
    ma forse quello che tu vuoi è un controllo lato client che visualizzi una finestra di alert all'utente nel caso non siano stati inseriti i dati e blocchi l'invio?
    Se è cosi' devi farlo con javascript.
    Ciao

  5. #5
    perchè copn javascritp? con php non si può?
    L'uomo che considera senza senso la propria vita e quella dei suoi simili, non è soltanto sfortunato ma è quasi squalificato per vivere.
    http://myscript72.altervista.org

  6. #6
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Per i controlli sui form di norma si usa Javascript ( controllo lato client ).
    Questo tipo di controlli ha la caratteristica di controllare i valori dei cambi in tempo reale alla pressione del tasto di invio, in modo da non far perdere tempo agli utenti di attendere il caricamento per poi mostrare un messaggio di errore..

    Esempi sulla rete o anche sul forum di Javascript di html.it penso che ne puoi trovare un'infinità cosi' vedi se effettivamente è quello che vorresti realizzare.

    Ciao

  7. #7
    ho risolto cosi:

    campo nascosto nel login.php

    Codice PHP:
    <input type="hidden" name="login" value="ok" /> 
    e controllo nel checkuser.php cosi:


    Codice PHP:
    if ($username == "" and $password == "" AND $_POST['login']=="ok")
        {
            
    $errori[0] = "La [b]Username[/b] e la [b]Password[/b] sono obbligatori";
        }
        
        return 
    $errori;
        } 
    L'uomo che considera senza senso la propria vita e quella dei suoi simili, non è soltanto sfortunato ma è quasi squalificato per vivere.
    http://myscript72.altervista.org

  8. #8
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Si, come immaginavo non avevo ben compreso cosa dovessi fare.
    Per quello allora non c'è bisogno del campo hidden:

    Codice PHP:
    if ($_POST['username'] == "" AND $_POST['password'] == "")
      
    $errori "La [b]Username[/b] e la [b]Password[/b] sono obbligatori"

  9. #9
    invece si altrimenti mi stampa l'errore prima di premere invio su login
    L'uomo che considera senza senso la propria vita e quella dei suoi simili, non è soltanto sfortunato ma è quasi squalificato per vivere.
    http://myscript72.altervista.org

  10. #10
    Utente bannato L'avatar di Skyline89
    Registrato dal
    Jun 2006
    Messaggi
    225
    certo devi metterlo nella pagina dopo (è logico)

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.