将SPAN值插入DB

时间:2012-08-22 07:43:35

标签: php mysql

我尝试过多种方法将SPAN中的值插入数据库?显示在span中的值来自Javascript。目前,当我运行时,来自UP和TP的0.00将显示来自javascript函数的值。当我插入MYSQL数据库时,除了来自UP和TP的值之外,我还插入了所有其他数据。我使用输入类型=“隐藏”来传递值。这是我的代码。有人可以帮忙吗?谢谢。

 <p></p><div><b>UnitPrice: <span id="UP">0.00</span> </b></div><p>
 <p></p><div><b>TotalPrice: <span id="TP">0.00</span> </b></div><p>

 <input type="hidden" name="UnitPrice" value="', document.getElementById("UP").value '"/>
 <input type="hidden" name="TotalPrice" value="', document.getElementById("TP").value '"/>

 $UnitPrice = (trim($_POST['UnitPrice']));
 $TotalPrice= (trim($_POST['TotalPrice']));

 $query = "INSERT INTO `OrderItem` (`UnitPrice`, `TotalPrice`) VALUES ('$UnitPrice','$TotalPrice')";
 $result = mysql_query($query) or die($query."<br/><br/>".mysql_error());

<script type="text/javascript">
function showUP(str) {
    if (str==""){
        document.getElementById("UP").innerHTML="";
        return;
    }
    if (window.XMLHttpRequest)   {
        // code for IE7+, Firefox, Chrome, Opera, Safari   
        xmlhttp=new XMLHttpRequest();  
    } else {
        // code for IE6, IE5   
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    } 
    xmlhttp.onreadystatechange=function(){   
        if (xmlhttp.readyState==4 && xmlhttp.status==200){
            document.getElementById("UP").innerHTML=xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET","getunitprice.php?q="+str,true);
    xmlhttp.send();
}


function multiply(Quantity) {
    var totalPrice = parseFloat(document.getElementById("UP").innerHTML)*Quantity;
    document.getElementById("TP").innerHTML = totalPrice;
}
</script>

1 个答案:

答案 0 :(得分:1)

你要做的是javascript而你不能那样做。

获得<span id="UP">0.00</span>后,您还可以使用该值添加隐藏元素,将ID添加到隐藏元素中,并修改您的javascript函数,为这些隐藏元素添加值

<script type="text/javascript">
function showUP(str) {
    if (str==""){
        document.getElementById("UP").innerHTML="";
        return;
    }
    if (window.XMLHttpRequest)   {
        // code for IE7+, Firefox, Chrome, Opera, Safari   
        xmlhttp=new XMLHttpRequest();  
    } else {
        // code for IE6, IE5   
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    } 
    xmlhttp.onreadystatechange=function(){   
        if (xmlhttp.readyState==4 && xmlhttp.status==200){
            document.getElementById("UP").innerHTML=xmlhttp.responseText;
            document.getElementById("UnitPrice").value=xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET","getunitprice.php?q="+str,true);
    xmlhttp.send();
}


function multiply(Quantity) {
    var totalPrice = parseFloat(document.getElementById("UP").innerHTML)*Quantity;
    document.getElementById("TP").innerHTML = totalPrice;
    document.getElementById("TotalPrice").value = totalPrice;
}
</script>

<p></p><div><b>UnitPrice: <span id="UP">0.00</span> </b><input type="hidden" name="UnitPrice" id="UnitPrice" value=""/></div><p>
<p></p><div><b>TotalPrice: <span id="TP">0.00</span> </b><input type="hidden" name="TotalPrice" id="TotalPrice" value=""/></div><p>