Visualizzazione risultati 1 fino 8 di 8

Discussione: MOdifica successiva di dati inseriti con Radio button o menu a tendina

  1. #1
    L'avatar di Steve68
    Steve68 non è connesso Utente giovane
    Data registrazione
    13-11-2006
    Residenza
    Savona
    Messaggi
    42

    Predefinito MOdifica successiva di dati inseriti con Radio button o menu a tendina

    Buongiorno,
    ho creato un DB in cui alcuni dati vengono inseriti con un'interfaccia mediante pulsanti a selezione unica e menu a tendina.
    L'inserimento funziona regolarmente, ciò che non riesco a fare è poterli modificare successivamente.
    Facciamo un esempio per chiarezza:
    abbiamo un campo si/no chiamato "garanzia", tramite una maschera con pulsanti radio, posso consentire la scelta del dato che potrei anche selezionare di default su si tramite checked.
    Per modificare i dati inseriti ho creato una pagine in cui, dopo aver letto i dati del record selezionato, li rendo disponibili nelle caselle della maschera.
    Il problema nasce con i pulsanti ratio e con i menu a tendina, poiché non so come gestirli in quanto non so come far mostrare loro la scelta precedentemente effettuata.

  2. #2
    Guest

    Predefinito

    Prova con questo:

    Codice PHP:
    <input type="radio" name="nome" <?php if($query['garanzia'] == 'si'){echo 'checked';} ?> />
    Se non ho capito male è ciò che ti serve.

  3. #3
    L'avatar di Steve68
    Steve68 non è connesso Utente giovane
    Data registrazione
    13-11-2006
    Residenza
    Savona
    Messaggi
    42

    Predefinito

    Attualmente la situazione è la seguente:

    <tr>
    <td>&Egrave; in garanzia? </font></td>
    <td>SI<input type="radio" name="garanzia" value="1" />
    NO<input type="radio" name="garanzia" value="0"/>
    </td>
    <td><p>Inserire se &egrave; o meno in garanzia</p></td>
    </tr>

    Quindi dovrei leggere il valore dal campo e con IF inserire Checked su SI o su NO a seconda dei casi, giusto?
    Diventerebbe:

    <td>SI<input type="radio" name="garanzia" <?php if($query['garanzia'] == 'si'){echo 'checked';} ?> />
    NO<input type="radio" name="garanzia" <?php if($query['garanzia'] == 'no'){echo 'checked';} ?> />

    Corretto? Forse ci sono un po' di errori di punteggiatura
    Ultima modifica di Steve68 : 30-10-2015 alle ore 18.18.56

  4. #4
    Guest

    Predefinito

    Si è così, non funziona?

    Chiaramente $query sarà la variabile con la quale tu prelevi le informazioni dal database es:
    Codice PHP:
    $query = mysqli_fetch_array(mysqli_query($connessionealdb, "SELECT * FROM lista_garanzie WHERE utente = '$utente' "));
    //oppure
    $query = mysql_fetch_array(mysql_query("SELECT * FROM lista_garanzie WHERE utente = '$utente' "));
    Oppure in alternativa puoi provare anche così:
    Codice PHP:
    <?php if($query['garanzia'] == 'si'){echo 'checked="checked" ';} ?>
    Ultima modifica di competenzepertutti : 30-10-2015 alle ore 18.46.58

  5. #5
    L'avatar di Steve68
    Steve68 non è connesso Utente giovane
    Data registrazione
    13-11-2006
    Residenza
    Savona
    Messaggi
    42

    Predefinito

    No, non funge, forse c'è qualcosa che mi sfugge.
    provo a semplificare ciò che ho fatto, ma non so come fai a inserire il codice a colori, quindi mi spiace ma il mio copia/incolla non sarà molto chiaro.

    Richiamo i dati dal database:

    $query = "select * from commesse where id_commessa='$id_commessa'"; // seleziona il record a seconda di id
    $dbResult = mysql_query($query, $db) or die ("Selezione fallita"); // manda in esecuzione
    $line = mysql_fetch_array($dbResult); // ricavo i testi da inserire nella form successiva
    $numero_reso=$line['numero_reso'];
    $garanzia=$line['garanzia'];
    ....
    ....

    Poi chiudo la sessione PHP e in HTML creo una tabella tipo:

    <table>
    <tr>
    <td colspan=3><p><b>AUTORIZZAZIONE</b></p></td>
    </tr>
    <tr bgcolor=FFFFC2>
    <td><p>Numero RMA <font color=red>(*)</font></p></td>
    <td><input type="text" name="numero_reso" value="<?php echo $numero_reso;?>"></td>
    <td><p>Numero di autorizzazione</p></td>
    </tr>
    <tr bgcolor=FFFFC2>
    <td>&Egrave; richiesto un report? </font></td>
    <td>SI<input type="radio" name="garanzia" <?php if($query['garanzia'] == 'si'){echo 'checked';} ?> />
    NO<input type="radio" name="garanzia" <?php if($query['garanzia'] == 'no'){echo 'checked';} ?> />
    </td>
    <td><p>Inserire se in garanzia o meno</p></td>
    </tr>
    </table>

  6. #6
    Guest

    Predefinito

    Per scrivere il codice a colori devi usare i tag "[ PHP]" e chiudere con "[ /PHP]" senza spazi.
    Ma torniamo al problema...
    Quello che ti ho fatto io era solo un esempio non avendo il tuo codice a disposizione, chiaramente tu dovevi adattarlo ai tuoi bisogni


    Comunque il codice corretto è questo:
    Codice PHP:
    <table>
    <tr>
    <td colspan=3><p><b>AUTORIZZAZIONE</b></p></td>
    </tr>
    <tr bgcolor=FFFFC2>
    <td><p>Numero RMA <font color=red>(*)</font></p></td>
    <td><input type="text" name="numero_reso" value="<?php echo $numero_reso;?>"></td>
    <td><p>Numero di autorizzazione</p></td>
    </tr>
    <tr bgcolor=FFFFC2>
    <td>&Egrave; richiesto un report? </font></td>
    <td>SI<input type="radio" name="garanzia" <?php if($garanzia == 'si'){echo 'checked';} ?> />
    NO<input type="radio" name="garanzia" <?php if($garanzia == 'no'){echo 'checked';} ?> />
    </td>
    <td><p>Inserire se in garanzia o meno</p></td>
    </tr>
    </table>
    PS: questo è il codice che tu mi hai scritto, ricordati di impostarlo come devi, non limitarti al copia e incolla!
    Ultima modifica di competenzepertutti : 01-11-2015 alle ore 11.40.38

  7. #7
    L'avatar di Steve68
    Steve68 non è connesso Utente giovane
    Data registrazione
    13-11-2006
    Residenza
    Savona
    Messaggi
    42

    Predefinito

    Hai ragione, in realtà ciò che ho scritto è una semplificazione della realtà, però nel trasportarla ho tralasciato il value, ora ho capito perché non riuscivo a far funzionare il tuo suggerimento, così adesso gira:

    Codice PHP:
    <tr>
    <td>SI<input type="radio" name="garanzia" value="1" <?php if($garanzia){echo 'checked';} ?> />
    NO<input type="radio" name="garanzia" value="0" <?php if($garanzia== 0){echo 'checked';} ?> />
    </td>
    </tr>
    Ultima modifica di Steve68 : 02-11-2015 alle ore 00.03.45

  8. #8
    Guest

    Predefinito

    Perfetto :D

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •