Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    34

    Select Memorizzare in una variabile la scelta di un utente

    Ciao a tutti! Ho il seguente problema:

    Ho creato una select in una pagina php. Essa si collega ad una tabella di my sql.

    Come faccio a memorizzare il valore scelto dall'utente in una variabile php?

    Con codfisc riesco a memorizzare la variabile con $_POST['codfisc'].

    Come si fa con la select? Riconosce soltanto la prima scelta.
    Ecco il codice, Grazie.


    <body>

    <script type="text/javascript">
    var xmlhttp;

    function mostraInfo(str)
    {
    xmlhttp=GetXmlHttpObject();
    if (xmlhttp==null)
    {
    alert ("Browser does not support HTTP Request");
    return;
    }
    var url="#";
    url=url+"?q="+str;
    xmlhttp.onreadystatechange=stateChanged;
    xmlhttp.open("GET",url,true);
    xmlhttp.send(null);
    }

    function stateChanged()
    {
    if (xmlhttp.readyState==4)
    {
    document.getElementById("info").innerHTML=xmlhttp. responseText;
    }
    }

    function GetXmlHttpObject()
    {
    if (window.XMLHttpRequest)
    {
    // code for IE7+, Firefox, Chrome, Opera, Safari
    return new XMLHttpRequest();
    }
    if (window.ActiveXObject)
    {
    // code for IE6, IE5
    return new ActiveXObject("Microsoft.XMLHTTP");
    }
    return null;
    }
    </script>

    <script>
    $(function() {
    $( "#datepicker" ).datepicker({
    showButtonPanel: true
    });
    });
    </script>
    <?php

    if (!isset($_POST['submit'])) { //se non è stato premuto il tasto inserisci

    ?>
    <div id="form">
    <form action="#" method="POST" id="formut">
    <h1>Inserisci Nuovo Paziente</h1>
    Seleziona Tipo Paziente:
    <select name="tipopaz" onChange="mostraInfo(this.value)">
    <option value="0" selected="selected">Seleziona Tipo Paziente ------> </option>
    <?php
    //Seleziono quelli che sono i pazienti
    $query = "SELECT * FROM `tipopaziente`";
    $result = mysql_query($query);
    while($riga = mysql_fetch_array($result)){
    echo "<option value='$riga[id]'>$riga[codice] $riga[descrizione] </option>";
    }

    ?>
    </select>



    <label for="cf">Codice Fiscale</label><input type="text" name="codfisc" id="codfisc"/>
    <div class="datacar">
    <label for="dataapcartella">Data Apertura Cartella</label><input type="text" name="dataapcartella" id="datepicker" />
    </div>

    <label for="cognome">Cognome</label><input type="text" name="cognome" id="cognome" />
    <label for="nome">Nome</label><input type="text" name="nome" id="nome" />
    <label for="annonascita">anno di nascita</label><input type="text" name="annonascita" id="annonascita" />
    <label for="tel">Telefono</label><input type="text" name="tel" id="telefono" />
    <label for="indir">Indirizzo</label><input type="text" name="indir" id="indirizzo" />
    <label for="email">Email</label><input type="text" name="email" id="email" />
    <!-- <label for="messaggio">Messaggio</label>
    <textarea name="messaggio" id="messaggio" cols="30" rows="10"></textarea> -->
    <input type="submit" id="submit" name="submit" value="Inserisci" />
    </form>
    </div>

    <?php } else {//se ho premuto il punsante inserisci, raccolgo i dati e li confronto con il DB

    $tipopaziente=$_POST['tipopaz'];
    $codfisc=mysql_real_escape_string($_POST['codfisc']); //proteggo l'invio dall'sql injection
    $dataapcartella=mysql_real_escape_string($_POST['dataapcartella']);
    $cognome=mysql_real_escape_string($_POST['cognome']);
    $nome=mysql_real_escape_string($_POST['nome']);
    $annonascita=mysql_real_escape_string($_POST['annonascita']);
    $tel=mysql_real_escape_string($_POST['tel']);
    $indir=mysql_real_escape_string($_POST['indir']);
    $email=mysql_real_escape_string($_POST['email']);


    echo "Scelta Effettuata:" .$tipopaziente. "<br/n>";
    echo "Codice Fiscale:" .$codfisc. "<br /n>";
    echo "Data Apertura Cartella:" .$dataapcartella. "<br /n>";
    echo "Cognome:" .$cognome. "<br /n>";
    echo "Nome:" .$nome. "<br /n>";
    echo "Anno di nascita:" .$annonascita. "<br /n>";
    echo "Telefono:" .$tel. "<br /n>";
    echo "Indirizzo:" .$indir. "<br /n>";
    echo "e-mail:" .$email. "<br /n>";


    //controllo valori acquisiti

    if($codfisc=='' || $dataapcartella==''){ // ||=OR; &&=AND
    echo "ERRORE! Devi compilare tutti i campi";

    }

    }
    ?>






    </body>

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    142
    io ho questo codice e funziona
    codice:
    <select name="regione" value="regione">
          <option value="abruzzo">Abruzzo</option>
          <option value="basilicata">Basilicata</option>
          <option value="calabria">Calabria</option>
          <option value="campania">Campania</option>
          <option value="emilia">Emilia-Romagna</option>
          <option value="friuli">Friuli-Venezia Giulia</option>
          <option value="lazio">Lazio</option>
          <option value="liguria">Liguria</option>
          <option value="lombardia">Lombardia</option>
          <option value="marche">Marche</option>
          <option value="molise">Molise</option>
          <option value="piemonte">Piemonte</option>
          <option value="puglia">Puglia</option>
          <option value="sardegna">Sardegna</option>
          <option value="sicilia">Sicilia</option>
          <option value="toscana">Toscana</option>
          <option value="trentino">Trentino-Alto Adige</option>
          <option value="umbria">Umbria</option>
          <option value="valledaosta">valledaosta</option>
          <option value="veneto">Veneto</option>
        </select>
    Codice PHP:
    $regione=$_GET['regione']; 
    è simile al tuo e quello che ottengo è il valore di
    option value='#valore#'
    quindi se ti serve di ottenere più valori devi fare in modo che siano
    li

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    34
    ciao, grazie per avermi risposto.
    Il mio problema è un altro!

    la select che ho fatto punta ad una tabella di mysql. Quando clicco sul pulsante di selezione ottengo le righe presenti nella tabella.
    Il problema che non riesco a salvare nella variabile tipo paziente la scelta effettuata nella select, mentre con le altre variabili (esempio $codfisc, $cognome) si.

    Come faccio a memorizzare nella variabile $tipopaziente la scelta effettuata nella select?

    Grazie!

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    142
    prova a postare il codice relativo alla select, ma una volta che la pagina è già stata caricata e che quindi tutto il php è stato eseguito.

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    34
    Come faccio a memorizzare la scelte effettuata dell'utente in una variabile php?

    La select è la seguente:


    <h1>Inserisci Nuovo Paziente</h1>
    Seleziona Tipo Paziente:
    <select name="tipopaz" onChange="mostraInfo(this.value)">
    <option value="0" selected="selected">Seleziona Tipo Paziente ------> </option>
    <?php
    //Seleziono quelli che sono i pazienti
    $query = "SELECT * FROM `tipopaziente`";
    $result = mysql_query($query);
    while($riga = mysql_fetch_array($result)){
    echo "<option value='$riga[id]'>$riga[codice] $riga[descrizione] </option>";
    }
    ?>
    </select>

  6. #6
    Ti è stato chiesto di postare il sorgente HTML della pagina generata e non il codice che la produce!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    34
    Ciao, scusa come faccio a postare il file php?

  8. #8
    Mi sembra ci siano un po' di errori come si vede dal codice da te postato:

    codice:
    ...
    <select name="tipopaz" onChange="mostraInfo(this.value)">
    
    <option value="0" selected="selected">Seleziona Tipo Paziente ------> </option>
    
    
    Notice: Undefined index: id in C:\xampp\htdocs\LDM\InserisciPaziente.php on line 208
    
    <option value=''>paz0001 Paziente soggetto ad allergie </option>
    
    Notice: Undefined index: id in C:\xampp\htdocs\LDM\InserisciPaziente.php on line 208
    
    
    <option value=''>paz0002 Paziente diabetico </option>
    
    Notice: Undefined index: id in C:\xampp\htdocs\LDM\InserisciPaziente.php on line 208
    
    <option value=''>paz0003 Paziente anemico </option> </select>
    ...
    Notice: Undefined index: id in C:\xampp\htdocs\LDM\InserisciPaziente.php on line 208

    Come puoi ben vedere i campi value delle varie option sono vuoti!

    Probabilmente nella tabella tipopaziente non c'è una colonna chiamata ID
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    34
    i campi option sono generati dalla quary.
    posso inviarti una e-mail di questo screenshot?

  10. #10
    Come ti dicevo nel post precedente probabilmente la tabella tipopaziente non ha una colonna chiamata ID.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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