[PHP] Controllo <select> comportamento anomalo

Discussione in 'PHP' iniziata da curzio.maria, 27 Maggio 2019.

  1. curzio.maria

    curzio.maria Nuovo Utente

    Registrato:
    14 Aprile 2019
    Messaggi:
    11
    Mi Piace Ricevuti:
    0
    Punteggio:
    1
    Sesso:
    Maschio
    Buongiorno,
    in un form di registrazione utilizzo un controllo select così strutturato :
    PHP:
    <select name="uteLev" class="select"  required> 
     <option  <?php if($uteLev== 1){echo("selected");}?>value="1">OSPITE</option>
                                        <option  <?php if($uteLev== 2){echo("selected");}?>value="2">UTENTE NORMALE</option>
                                        <option  <?php if($uteLev== 3){echo("selected");}?>value="3">ADMIN</option>
                                        <option  <?php if ($uteLev == ) echo ("selected") ; ?> value="0"></option>

    </select>
    considerando che la variabile $uteLev è inizialmente valorizzata come "2" mi attenderei di avere selezionato a schermo UTENTE NORMALE, invece viene sempre mostrato il primo valore, OSPITE.

    Lo strano è che con il seguente codice , funziona esattamente come mi aspetto :
    PHP:
    [CODE]<select name="uteLev" class="select"  required>
                                        
                                        <option  <?php if($uteLev== 1){echo("selected");}?>value=1>OSPITE</option>
                                        <option  <?php if($uteLev== 2){echo("selected");}?>value=2>UTENTE NORMALE</option>
                                        <option  <?php if($uteLev== 3){echo("selected");}?>value=3>ADMIN</option>
                                        <option  <?php if ($uteLev == ) echo ("selected") ; ?> value=0></option>


    </select>[/CODE]
    Insomma sembra che la valutazione non venga eseguita come stringa ma come numero, anche se la variabile è stata dichiarata stringa utilizzando i doppi apici.

    E' normale ?

    Grazie



     
  2. marino51

    marino51 Utente Attivo

    Registrato:
    28 Febbraio 2013
    Messaggi:
    2.518
    Mi Piace Ricevuti:
    123
    Punteggio:
    63
    Occupazione:
    free lance
    Località:
    Lombardia
    "value" deve essere preceduto da uno spazio che lo separi dal valore precedente
    altrimenti nel form si legge selectedvalue="2" che non viene riconosciuto
    PHP:
    .. {echo("selected");}?> value=1>OSPITE</option>
    ….. {echo("selected");}?> value="2">UTENTE NORMALE</option>
    upload_2019-5-27_22-48-13.png
     
  3. curzio.maria

    curzio.maria Nuovo Utente

    Registrato:
    14 Aprile 2019
    Messaggi:
    11
    Mi Piace Ricevuti:
    0
    Punteggio:
    1
    Sesso:
    Maschio
    Grazie per la cortese risposta. conoscendo i miei limiti di solito controllo l'output degli ECHO, questa volta ero tanto sicuro di me che... Grazie ancora
     
Sto caricando...

Condividi questa Pagina