• User Attivo

    [Risolto] prova login

    Ciao a tutti del forum
    ho un problemino stupido, però a me non riesce
    IL CODICE CHE VI INVIO NON DEVE FARE ALTRO CHE LEGGERE UNA TEXT ED INVIARE UN MESSAGGIO DI CONFERMA NEL CASO CI SIA UN NOME, MENTRE DARMI UN MESSAGGIO DIVERSO NEL CASO IN CUI LA TEXT E' VUOTA

    P.S. MI DA SEMPRE IL PRIMO MESSAGGIO CIOE' LA VARIABILE $OK

    <?
    $OK = 'IL TUO NOME E';
    $NO = 'INSERIRE NOME VALIDO';

    if(isset($_POST['nome']))
    {
    print"
    $OK $nome";
    }
    else
    {
    print"
    $NO";
    }

    ?>

    GRAZIE IN ANTICIPO


  • User Attivo

    La variabile POST passata all'IF, sia vuota o con un valore, è sempre settata, quindi non si può fare il controllo ISSET, perchè ti restituisce sempre $OK.
    Cambia il codice in questo modo:

    [PHP]
    <?
    $OK = 'IL TUO NOME E';
    $NO = 'INSERIRE NOME VALIDO';

    if($_POST['nome'] != "")
    {
    print"
    $OK $nome";
    }
    else
    {
    print"
    $NO";
    }

    ?>
    [/PHP]

    Ciao!


  • User Attivo

    grazie x l'aiuto
    una domanda
    ma isset non mi controlla se nella text c'è qualcosa?
    e poi " " se vuol dire campo vuoto non mi trovo
    potresti chiarirmi le idee?

    grazie x il codice ma vorrei capire


  • User Attivo

    La funzione ISSET, serve a controllare se un oggetto, in questo caso una variabile è settata.
    Un variabile in PHP, appena viene inserita nel codice, senza ricevere valori, ottiene lo stato di undefined.
    [PHP]
    <?php
    echo isset $a; //FALSO
    ?>
    [/PHP]
    In questo caso, con ISSET è possibile controllare se la variabile è undefined oppure no.
    Ma in altre circostanza, come variabile che sono il risultato di funzioni, come $_POST, $_GET, o altro ancora, ottengono sempre un valore, che può essere vuoto, che si indica con "" (due virgolette ravvicinate), oppure un valore.
    [PHP]
    <?php
    $a = "";
    echo isset $a; //VERO -- a = "" (vuoto)

    $b = "ciao";
     echo isset $b; //VERO -- b = ciao
    

    ?>
    [/PHP]
    In questo caso, ISSET non ha potere, perchè una variabile con o senza valore esiste.

    Ciao!


  • User Attivo

    grazie mille


  • User Attivo

    Ottimo ragazzi, segnalo come risolto

    :ciauz: