Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    282

    inserire in un form dati in relazione ad un campo precedente

    In un form ho un combo "agente" che prende i dati da una tabella "agenti" (br_codice) ed un campo "percentuale" in cui vorrei riportare (in caso di inserimento e quindi con il campo vuoto) il valore del campo "br_percentuale" della tabella "agenti".
    Il combo agenti funziona e a video vedo anche le percentuali ma non so come riportare il valore di "br_percentuale" nel campo "percentuale".
    Mi potreste dire come fare?
    Grazie

    codice:
     //
    //          questa funzione carica combobox agente
    //
    function comboagente($default)
    {
    require('include/connessione.php');
    mysql_select_db($database_conn,$conn);
    $sql = "SELECT  * FROM agenti ORDER BY br_descrizione"; 
    $result = mysql_query($sql, $conn) or die ("errore ".mysql_error()); 
    while($riga=mysql_fetch_array($result)) 
    	{ 
    	if ($default==$riga['br_codice'])
    		{
    		echo "<option selected=\"selected\"  value=" . $riga["br_codice"] . ">" . $riga["br_descrizione"]." ". $riga["br_percentuale"] . "</option>"; 	
    		}
    		else
    		{
    		echo "<option value=".$riga["br_codice"].">".$riga["br_descrizione"]." ".$riga["br_percentuale"]."</option>";   
    		}
    	} 
    }
    
    
    
    
    
    //   questa è la porzione del form interessata
    //
    	
    <label>agente</label>
    <select name="agente" > <?php $aaa = comboagente($polizze->getagente()); ?> </select>
    
    
    	
    <label>percentuale</label>
    <input name="percentuale" type="text" id="percentuale"  class="text" size="4" value="<?php echo $polizze->getpercentuale();?>" />

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,667
    capito nulla del problema... ritenta


    sicuro che c'entri con HTML ?
    o intendevi postare in PHP?
    o forse JS (ajax)?


    CODE per postare codice, grazie

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    282
    Provo a spiegarmi meglio, mi rendo conto non sono stata molto chiara...
    Ho un form in cui ho due campi: "agente" e "percentuale"
    Il campo agente è un combobox che carico leggendo i dati da una tabella. Selezionando il codice agente vorrei riportare il valore del campo "br_percentuale" all'interno del form nel campo "percentuale".
    Riflettendoci su penso che dovrei in qualche modo leggere il valore mediante la selezione nel combobox e framite una funzione javascript inserirlo nel campo "percentuale".
    Forse dovevo postare in javascript, ma non voglio aprire un'altro post perchè mi sembra sia vietato.
    Mi sono spiegata un pò meglio?
    Grazie

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,667
    se ho capito bene ti serve una chiamata AJAX,
    quindi sposto


  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    282
    Grazie per avermi spostato nella sezione opportuna.
    Non so se serve Ajax (che tra l'altro non conosco), ma credo che la cosa possa essere risolta con una funzione javascript leggendo il valore selezionato nel combobox ed impostando il campo percentuale.
    C'è qualcuno che mi aiuta?
    Grazie

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    282
    Non c'è nessuno che mi può aiutare?
    Un'idea di come fare ce l'ho ma avrei bisogno di qualche suggerimento...
    Quando carico dinamicamente il combobox oltre al codice dell'agente mi porto anche la descrizione e la percentuale. Quindi quando seleziono un elemento nel combo queste informazioni le vedo...
    Nel campo però trovo solo il codice.
    Se riesco in qualche modo a recuperare tutto ciò che vedo nella selezione mi posso poi estrapolare solo la percentuale.
    In javascript posso risalire al contenuto del campo combo così:

    function broke() {
    var age = document.form2.agente.value;
    alert(age);
    //
    // se a questo punto riesco a "leggere" anche la percentuale oppure tutta la descrizione e poi mi estrapolo quello che mi serve allora posso anche impostare il campo nel form

    document.form2.percentuale.value("quello che ho trovato");
    document.form2.percentuale.focus();
    }
    Me la date una mano?
    Grazie

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Ma nella select agente hai anche la pecentuale? Posta la select come la riceve il browser (no codice php)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    La parte php:
    Codice PHP:
    //
    // dichiaro una variabile globale che mi tiene la percentuale che compete a $default
    //
    $PercentualeScelta 0;
    //
    //          questa funzione carica combobox agente
    //
    function comboagente($default)
    {
    require(
    'include/connessione.php');
    mysql_select_db($database_conn,$conn);
    $sql "SELECT  * FROM agenti ORDER BY br_descrizione"
    $result mysql_query($sql$conn) or die ("errore ".mysql_error()); 
    while(
    $riga=mysql_fetch_array($result)) 
        { 
        if (
    $default==$riga['br_codice'])
            {
            echo 
    "<option selected=\"selected\"  value=" $riga["br_codice"] . ">" $riga["br_descrizione"]." "$riga["br_percentuale"] . "</option>";     
            
    $PercentualeScelta $riga["br_percentuale"]; // mi salvo la percentuale che compete a $default
            
    }
            else
            {
            echo 
    "<option value=".$riga["br_codice"].">".$riga["br_descrizione"]." ".$riga["br_percentuale"]."</option>";   
            }
        } 

    La parte HTML:
    Prima, nell'header, definire la funzione che aggiorna la percentuale;
    codice:
    <script type="text/javascript">
    
    function aggiornaPerc(campoSelect) {
    	var sDescrizione = campoSelect.options[campoSelect.selectedIndex].text;
    	var arDescrizione = sDescrizione.split(" ");   // creo un array splittando sul blank
    	var sPercentuale = arDescrizione[arDescrizione.length -1]; // prendo l'ultimo elemento a destra
    	document.form2.percentuale.value = sPercentuale; // aggiorno il campo
    }
    </script>
    Poi, l'html:
    Codice PHP:
    <label>agente</label>
    <select name="agente" onchange="aggiornaPerc(this)"> <?php $aaa comboagente($polizze->getagente()); ?> </select>


        
    <label>percentuale</label>
    <input name="percentuale" type="text" id="percentuale"  class="text" size="4" value="<?php echo $PercentualeScelta;?>" />
    HTH
    Zappa

    P.S: Verifica la correttezza della dichiarazione di variabile globale in php .. sono un po' arrugginito, col php!
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    282
    funziona!!!!!!
    quindi l'idea era buona!
    Grazie!
    l'unica cosa, un pò brutta a vedersi, è che nel combo devo far comparire oltre alla descrizione anche la percentuale.... ma credo che farla scomparire sia quasi impossibile...
    Grazie ancora

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.