Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    8

    Inviare Valore di Option diverso dal "value"

    Buongiorno gente,
    è uno dei miei primo post che faccio, spero possiate aiutarmi perchè non riesco a venirci a capo, nemmeno facendo ricerche.
    E' da pochi mesi che mi son cimentato nel php. Ora è arrivato il primo problema. Sto costruendo un sito amatoriale tra amici per il fantacalcio.
    Il problema che ho riscontrato è che dovrei mandare dei dati al DB tramite un option e fin qua tutto ok, son riuscito nell'intento, peccato che il dato che invio non è quello che vorrei inviare. Io vorrei inviare il campo "$nome" ma lasciare in option come campo "value" quello attuale, in quanto dal javascript lui mi calcola una somma istantanea. E' possibile ciò?
    Posto il codice:
    Codice PHP:
    <?php
    include ('header.php');
     
    $provasessione $_SESSION['utente'];
     
    $controllorosa mysql_query("SELECT * FROM squadra WHERE nomesquadra = '$provasessione' ");
     
    $controllorosa_i mysql_num_rows($controllorosa);
     
     if (
    $controllorosa_i 0) {
        
        echo 
    'Tutto OK!';

    } else { 
        
        if (!isset(
    $_POST['inviarosa'])) {
     
    $query="SELECT * FROM calciatore WHERE ruolo = 'POR' ";
     
    $risultati=mysql_query($query);
     
     
    $query2="SELECT * FROM calciatore WHERE ruolo = 'DIF' ";
     
    $risultati2=mysql_query($query2);
     
    ?>
     
     <script lang="javascript" type="text/javascript">
    // <!CDATA[
    //------------------------------------------------------
    //restituisce la somma degli elementi passati come id
    //alert( calcola_somma("Text1", "Text2") );
    //alert( calcola_somma(["Text1", "Text2"]) );
    //------------------------------------------------------
    function calcola_somma()
    {
        var s = 0;
        for(var i = 0; i < arguments.length; i++)
        {
            var n = null;
            var v = arguments[i];
            if( typeof(v) == "string" )
            {
                n = document.getElementById(v).value.replace(",", ".");
                s += ((isNaN(parseFloat(n)))?0:parseFloat(n));    
            }
            else if(v instanceof Array)
            {
                for(var i = 0; i < v.length; i++)
                {
                    n = document.getElementById(v[i]).value.replace(",", ".");
                    s += ((isNaN(parseFloat(n)))?0:parseFloat(n));    
                }
            }
        }
        return s;
    }

    function calcola()
    {
        var somma = calcola_somma("Text1", "Text2");
        document.getElementById("div1").innerHTML = 500 - somma;
    }

    // ]]>
    </script>

    <div class="form">
    <form method="post">
    <label>Portiere:</label>
        <select id="Text1" onchange="calcola();" name="por1">
        <option disabled="disabled" selected="selected">Scegli il Primo Portiere</option>
        
        <?php
        
    while($rows mysql_fetch_assoc($risultati)) {
            
    $nome $rows['nome'];
            
    $fanta $rows['fantamiliardi'];
             
    ?>
            
            <option value="<?php echo $fanta?>"><?php echo "$nome ($fanta)" ?></option>
            
    <?php ?>
    </select>



    <label>Portiere:</label>
        <select id="Text2" onchange="calcola();" name="dif1">
        <option disabled="disabled" selected="selected">Scegli il Difensore</option>
        
        <?php
        
    while($rows2 mysql_fetch_assoc($risultati2)) {
            
    $nome2 $rows2['nome'];
            
    $fanta2 $rows2['fantamiliardi'];
             
    ?>
            
            <option value="<?php echo $fanta2?>"><?php echo "$nome2 ($fanta2)" ?></option>
            
    <?php ?>
    </select>


    Rimangono ancora: <div id="div1">500</div>
    <input type="submit" value="Invia" name="inviarosa" />
    </form>
    </div>
    <?php  


    } else {
        
        
    //Controlla campi
        
    $por1 mysql_real_escape_string($_POST["por1"]);
        
    $dif1 mysql_real_escape_string($_POST["dif1"]);
        
        if (
    $por1 == "" || $dif1 == "") {
            
            echo 
    "Devi Inserire Tutti I Campi";
            
        } else {
                
                
    mysql_query("INSERT INTO squadra (nomesquadra, por1, dif1) VALUES ('".$_SESSION['utente']."', '$por1', '$dif1' )");
                
                echo 
    "Tutto Perfetto";
            }
            
        }
        
        }
    ?>
    Grazie anticipatamente a tutti coloro che possono aiutarmi!

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    8
    UP

  3. #3
    Non dovresti cambiare il valore: value="$nome"?

    Codice PHP:
    <select name="status" id="status">
    <
    option value="QUELLO CHE INVII">QUELLO CHE VEDI</option>
    </
    select

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    8
    Peccato che quello che invio, ovvero il valore di "value", deve rimanere in quel modo xkè devo fare una somma instantanea tramite javascript..A me serve, se possibile, far rimanere il value in quel modo ma inviare al db il nome del giocatore, anche usando un'altra formula ma che mi faccio lo stesso una somma instantanea!!

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.