Visualizzazione dei risultati da 1 a 7 su 7

Discussione: From Registrazione

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    451

    From Registrazione

    ciao a tutti vi voglio chiedere una piccola sciocchezza, io ho realizzato una from per le registrazione ora il problema è quì:

    codice:
    if (!isset($_POST['user']) or !isset($_POST['pwd'])): ?>
    
    	<form name="input" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    		Username: <input type="text" name="user">
    
    		Password: <input type="password" name="pwd">
    
    
    		<input type="submit" value="Submit">
    	</form>
    
    <?php else:
    ora il problema e che se uno carica la pagina va tutto bene, ma se uno clicca sul tasto submit vengono registrati dei dati vuoti nel database ( anche se non capisco visto che faccio un controllo con isset ), invece io vorrei far comparire la scritto o "inserisci username" oppure "inserisci password" a seconda di quello che manca.

    Grazie.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    74
    Codice PHP:
    function showform($errore)
    {
            echo $errore.'
    ';
        <form name="input" action="<?php echo $_SERVER['PHP_SELF']; ?>"    method="post">
            Username: <input type="text" name="user">

            Password: <input type="password" name="pwd">


            <input type="submit" value="Submit">
        </form>
    }

    if (!isset($_POST['user']) or !isset($_POST['pwd']))
    {
        if ($_POST['user']=="")  
            showform('Campo utente vuoto!!');

        elseif ($_POST['pwd']=="")  
            showform('Campo password vuoto!!');

        else
            ......CODICE LOGIN OK......
    }
    else
        showform("");
    Prova e fammi sapere
    ..
    "Voi che avete gl'intelletti sani,mirate la dottrimna che s'asconde dietro il velame delli versi strani".

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    451
    Ho modificato il tuo codice in questo modo:

    Codice PHP:
    <?php
    function showform($errore)
    {
            echo 
    $errore.'
    '

    ?>       
            <form name="input" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
            Username: <input type="text" name="user">

            Password: <input type="password" name="pwd">


            <input type="submit" value="Submit">
            </form>
    <?php }

    if (isset(
    $_POST['user']) or isset($_POST['pwd'])){
       
       if (
    $_POST['user']=="")  
           
    showform("Campo utente vuoto!!");
       if (
    $_POST['pwd']=="")  
           
    showform("Campo password vuoto!!");
     
    } else {
        
    showform("");
    }
    ?>
    Perchè se il campo user e pwd sono entrambi vuoti li deve scrivere entrambi:

    Campo utente vuoto!!
    Campo password vuoto!!

    però facendo come ho fatto io si creano due from per l'invio.


    Grazie per il tuo aiuto.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    74
    Vero, avevo dimenticato l'opzione!!
    Prova questo, dovrebbe andare...

    Codice PHP:
    <?php 
    function showform($errore

            echo 
    $errore.'


            <form name="input" action="'
    .$_SERVER['PHP_SELF'].'" method="post"> 
            Username: <input type="text" name="user">
     
            Password: <input type="password" name="pwd">

     
            <input type="submit" value="Submit"> 
            </form>'
    ;
    }

    /*verifico se le 2 variabili sono impostate, se non lo sono vuol dire ho aperto ora la pagina
    perciò vado all'else relativo, aprendo il form senza errori con showform("")*/
    if (isset($_POST['user']) or isset($_POST['pwd'])){ 

    /* se arrivo qua vuol dire che ho clikkato su Submit perciò le variabili sono state create*/

       
    if ($_POST['pwd']==""  && $_POST['user']==""//se entrembe sono vuote
           
    showform("Campo user e password vuoti!!"); 
       elseif (
    $_POST['user']==""//altrimenti se manca solo il nome utente
           
    showform("Campo utente vuoto!!"); 
       elseif (
    $_POST['pwd']==""//altrimenti ancora se manca solo la password
           
    showform("Campo password vuoto!!");
       else 
    //se arrivo quà è tutto ok perciò proseguo alla verifica
          
    {
          
    //codice verifica login
          
    }

    } else { 
        
    showform(""); 

    ?>
    l'ho testato... è ok
    Ho commentato il codice per chiarezza, spero ti sia utile.

    Ciao.
    ..
    "Voi che avete gl'intelletti sani,mirate la dottrimna che s'asconde dietro il velame delli versi strani".

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    451
    Io pensavo che si poteva fare in qualche altro modo, perchè per ora ho solo inserito user e password ma se ho anche nome, cognome, data di nascia, luogo, ecc.... diventa una cosa da pazzi creare una cosa con if per tutte le possibili combinazioni


    Grazie per il tuo aiuto.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    451
    Non sarà il codice migliore del mondo ma ci sono riuscito

    Codice PHP:
    <?php
    if (isset($_POST['user']) or isset($_POST['pwd'])){
       
       if (
    $_POST['user']=="")  
           
    $error "° Manca la user 
    "
    ;
       if (
    $_POST['pwd']=="")  
           
    $error $error "° Manca la password 
    "

       if (!
    $_POST['pwd']=="" and !$_POST['user']=="")
           exit(
    "Codice ragistrazione nick!!!");
    }
        echo 
    $error;
        
    $error "";
    ?>
              <form name="input" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
            Username: <input type="text" name="user">

            Password: <input type="password" name="pwd">


            <input type="submit" value="Submit">
            </form>
    Grazie darkonme per l'illuminazione, per avermi aiutato e per avermi fatto imparare una nuova funzione "function".

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    74
    Purtroppo la verifica va fatta su ogni variabile, senza considerare che poi devi anche verificare il formato delle variabili che vai ad utilizzare, in particolare quelle che vengono utilizzate nelle query al db.

    Ma di questo se ne parla gia tanto, ti consiglio di veder bene la guida sulla sicurezza del php presente sul sito.

    Alla prossima,

    Ciao.
    ..
    "Voi che avete gl'intelletti sani,mirate la dottrimna che s'asconde dietro il velame delli versi strani".

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.