Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    form select non restituisce il valore corretto

    Buongiorno,
    ho provato a cercare fra i vari post, ma non ho trovato risposta..
    Inserisco quì la domanda perchè credo sia un problema di codice php o di come viene interpretato per lo meno.

    Ho un form html fra i cui elementi c'è una select box.
    Ora se viene scritta con codice html, i valori passati alla pagina php per l'elaborazione sono corretti, mentre se vengono generati tramite codice php (i valori sono recuperati da un db) dentro la variabile $POST non ottengo il valore ma solo la label testuale.

    Ho provato a mettere controlli dappertutto per capire se l'array dei dati recuperati dal database erano corretti, piuttosto che varie istruzioni echo, ma non riesco a venirne fuori.

    Vi posto il codice per farvi capire


    <form name="form" method="POST" onsubmit="return controllo();" action="../ins_app.php">
    ...
    <select name="id_get_html" class="float">
    <option value="1">andrea</option>
    <option value="2">giovanni</option>
    <option value="3">giuseppe</option>
    </select>

    <?
    ...

    $xsell_ut = $data->query("SELECT id_login,username_login FROM login WHERE user!=1");
    while ($row = mysql_fetch_assoc($xsell_ut)) {
    $utenti[$row["id_login"]] = $row["username_login"];
    }

    ...

    echo "<select name=\"id_get\" class=\"float\">"; // onchange=\"conferma();\">";
    foreach ($utenti as $key => $value) {
    echo "<option value\"".$key."\"";
    if($value==$_SESSION['username_login']) echo " selected=\"selected\" ";
    echo ">".$value."</option>";
    }
    echo "</select>";
    ?>

    __________________________________________________

    nella pagina ins_app.php

    ottengo come valori del form html 1,2,3,4 etc
    mentre come valori del select php andrea,giovanni,giuseppe...

    Ho inserito anche la query al db per completezza, ma come già accennavo, i valori dell'array $utenti sono corretti, il ciclo foreach anche, e se visualizzo il codice html della pagina generata ottengo correttamente la creazione del form:

    <select name="id_get" class="float">
    <option value="1">andrea</option>
    <option value="2">valore 2</option>
    <option value="3">valore 3</option>

    <select name="id_get" class="float"><option value"1">andrea</option><option value"3">virgilio</option><option value"4">piero</option><option value"5">alessandro</option><option value"6">matteo</option><option value"7">raffaella</option><option value"8">stefano</option><option value"9">sabrina</option></select>

    Secondo voi da cosa potrebbe dipendere?
    Andrea

  2. #2
    Non ho capito qual'è il problema?!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Il problema è che all'invio del form la variabile

    $POST['id_get_html'] ha i valori numerici (1)

    mentre

    $POST['id_get'] ha i valori testuali (andrea)
    Andrea

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