Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Semplice IF che non funziona

    Salve a tutti,
    sono un semi-neofita di PHP e sto sclerando per un semplice controllo IF che non funziona come vorrei

    Eccovi l'esempio:


    Codice PHP:
    $mio_flag_scelta=$_REQUEST['flag_scelta']; (prende il valore da un checkbox fleggato
    (faccio un echo $mio_flag_scelta e mi restituisce on)

    Poi faccio il controllo:

    Codice PHP:
    if ($mio_flag_scelta=="on")
    {
       -
    istruzioni1-
    }
    else
    {
       -
    istruzioni2-

    Ecco, qualcuno mi spieghi perchè nonostante la variabile sia settata ad "on" PHP esegua le -istruzioni2- dell'else.

    Grazie in anticipo per le delucidazioni.

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    35
    Puoi postare anche la parte html del checkbox

  3. #3
    fai solo così:

    Codice PHP:
    <?
    if ($mio_flag_scelta)

       -
    istruzioni1

    else 

       -
    istruzioni2
    }

    ?>

  4. #4
    Originariamente inviato da Sirlosc
    Puoi postare anche la parte html del checkbox
    eccola:

    Codice PHP:
    <input type="checkbox" name="flag_scelta"

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    35
    Sembra tutto corretto, prova ad eseguire questo codice e dimmi se ti funziona.
    Codice PHP:
    <form action="" method="get">
    <input type="checkbox" name="flag_scelta">
    <input name="invia" type="submit" value="invia" /> 
    </form>
    <?php
    $valore
    =$_GET['flag_scelta'];
     if (
    $valore == 'on') {
            echo 
    'on';
            }else{
            echo 
    'null';
            }
    ?>

  6. #6
    Originariamente inviato da Sir IMOTEPH
    fai solo così:

    Codice PHP:
    <?
    if ($mio_flag_scelta)

       -
    istruzioni1

    else 

       -
    istruzioni2
    }

    ?>
    non funziona neanche così...
    forse devo illustare meglio la situazione: ho un db e ho creato una sorta di piccolo gestionale per fare delle query. Il db è abbastanza vasto e quindi visualizzo i dati "paginandoli" a gruppi di 20, 50 o 100 elementi alla volta.

    Orbene, quando faccio la query i risultati sono ok, ma quando voglio vedere un'altra paginata ecco che l'IF di cui sopra va a farsi benedire.
    Per la paginazione utilizzo uno script esterno nel quale passo tutti i parametri necessari tramite una variabile $paginazione,

    Questo è lo script:

    Codice PHP:
    <?php

    $paginazione 
    "Pagina ".$mia_page." di " .$tot_pages "

     [ "
    ;
    for(
    $i 1$i <= $tot_pages$i++) {
    if(
    $i == $current_page) {
    $paginazione .='| <span style="background-color: black"><font color="white">[b]'$i '</font></span>[/b] ';
    } else {
    $paginazione .= "| <a href=\"?mia_tabella=$mia_tabella&page=$i&valore1=$mio_valore1&ord1=$mio_ord1&valore2=$mio_valore2&ord2=$mio_ord2&provenienza=$mia_provenienza&anno=$mio_anno&flag_scelta=$mio_flag_scelta&titolo=$mio_titolo&per_page=$per_page\" title=\"Vai alla pagina $i\">$i</a> ";

    }
    }
    $paginazione .= "| ]";

    ?>
    Lo script mi restituisce correttamente il parametro $_REQUEST['flag_scelta'],
    infatti:



    Codice PHP:
    $mio_flag_scelta=$_REQUEST['flag_scelta'];
    echo 
    '$mio_flag_scelta= '.$mio_flag_scelta
    mi restituisce on, ma al controllo IF

    Codice PHP:
    if ($mio_flag_scelta=="on")
    {
       -
    istruzioni1-
    }
    else
    {
       -
    istruzioni2-

    esegue -istruzioni2-

    Spero di essere stato sufficientemente chiaro

  7. #7
    echo ti scrive on ma nn vuol dire che dentro $flag_mia_scelta ci sia scritto on perchè non è una stringa.
    E' come fare la echo della variabile contenente il risultato di una query: ti stampa #Resource id: n ma mica c'è scritto quello dentro.

  8. #8
    Originariamente inviato da Sir IMOTEPH
    echo ti scrive on ma nn vuol dire che dentro $flag_mia_scelta ci sia scritto on perchè non è una stringa.
    E' come fare la echo della variabile contenente il risultato di una query: ti stampa #Resource id: n ma mica c'è scritto quello dentro.
    Ok, ho capito.
    Ma allora che controllo devo inserire, tenendo conto di quel passaggio di parametri che ho riportato sopra?

  9. #9
    prova a mettere
    codice:
    <input type="checkbox" name="flag_scelta" value=\"$flag_mia_scelta\">

  10. #10
    Originariamente inviato da Sir IMOTEPH
    prova a mettere
    codice:
    <input type="checkbox" name="flag_scelta" value=\"$flag_mia_scelta\">
    Ho messo

    codice:
    <input type="checkbox" name="flag_scelta" value="'.$flag_mia_scelta.'">
    che equivale ma ora non mi passa neanche il parametro... che ciofeca questo checkbox, meglio il radio button...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.