• User Attivo

    Aggiungere condizione ad una variabile

    Ciao a tutti.
    Da un elemento flash attraverso il metodo POST passo delle variabili.
    La pagina che riceve la variabile la scrive dentro ad un'altra variabile

    [PHP]$start = $_POST['txt'];[/PHP]

    Se io volessi mettere una condizione se uno richiama quella pagina senza quindi passare il parametro ?
    Ho provato così ma mi da errore

    [PHP]$start = if(isset($_POST['txt'])){

    echo $txt; }
    
    else {
    	header("Location: xxxx.errore.php");};[/PHP]

  • User Attivo

    Non puoi mettere un if...else in una variabile , a meno che non sia un operatore ternario.
    Prova così :
    [PHP] if(isset($_POST['txt'])){
    $start = true;
    echo $_POST['txt'];
    }

    else { 
    

    $start = false;
    header("Location: xxxx.errore.php");
    }[/PHP]


  • User Newbie

    Perdonami la domanda, perchè vuoi inserire una condizione in una variabile?? Anche se come ha detto ilnetsurfer non si puo fare.

    Se il tuo scopo è quello di fare lo stesso controllo in vari punti del tuo codice e non vuoi ripetere tale istruzione puoi usare le function.
    Tipo:
    [PHP]
    <?php
    function controllo(){

    if(isset($_POST['txt'])){

    echo $txt; } 
     
    else { 
        header("Location: xxxx.errore.php");}
    

    }
    ........Codice Codice Codice Codice
    controllo();
    ........Codice Codice Codice Codice
    ........Codice Codice Codice Codice
    controllo();
    ?> [/PHP]

    Così facendo ho richiamato il function controllo, che contiene il nostro if ed else, in vari punti del codice e scrivendolo solo una volta, così se voglio cambiare una cosa la cambio solo una volta e vale per tutti....
    Ti consiglio di cercare function php con google i primi siti ti sanno dare una spiegazione dei function cosa sono e come si usano e come passare e/o ricevere dei paramentri non globali.


  • User Attivo

    Ok!
    A me serve assegnare il valore passato alla variabile perchè questa la devo poi elaborare da questa funzione
    [PHP]<?

    $start = $_POST['txt'];

    $end = getMicrotime();

    function getMicrotime()
    {
    list($sec, $sec2) = explode(" ", microtime());
    return ((float)$sec + (float)$sec2);
    }

    $time = $end - $start;

    ?>[/PHP]

    Volevo solo mettere un controllo se uno richiama la pagina senza aver passato il valore ed evitare che uscisse il messaggio di errore di > undefined


  • User Newbie

    [php]$start = $_POST['txt'];[/php]
    E' un tipo time??? perchè se poi inserisco una o più lettere

    [php]$time = $end - $start;[/php]
    mi sa che non ti funzionerà

    Per quello che vuoi fare te basta che all'inizio della pagina fai
    [php]if(!isset($_POST['txt'])){

    codice nel caso in cui non passa il valore } [/php]così va bene se metti qualche istruzione bloccante o che reindirizza altrimenti devi fare l'else

    [php]if(!isset($_POST['txt'])){

    codice nel caso in cui non passa il valore }

    else {
    Contenuto pagina nel momento in cui la Condizione è Falsa
    e quindi gli è stato passato il valore
    }
    [/php]

    Ciau