获取变量不会写入数据库

时间:2014-09-22 18:41:04

标签: php

我已获得此代码

$cislonakupu=$_GET['cislonakupu'];

    if($_REQUEST['command']=='update'){
        $datum = Date("j/m/Y H:i:s", Time());
    $user1=mysql_query("SELECT * FROM `register` WHERE `username`='$session'");
    $mu=mysql_query("SELECT * FROM `velikostiobj` WHERE `objednavkac`='$cislonakupu'");$cislonakupu=$_GET['cislonakupu'];

        $customerid=mysql_insert_id();
        $date=date('Y-m-d');
        $orderid=mysql_insert_id();

        $max=count($_SESSION['cart']);
        for($i=0;$i<$max;$i++){
            $pid=$_SESSION['cart'][$i]['productid'];
            $q=$_SESSION['cart'][$i]['qty'];
            $price=get_price($pid);
            $cp=$_POST['cp'];
        $velikots=$row['velikost'];

$n= date('j/m/Y H:i:s', strtotime($Date. ' + 14 days'));

    while ($row=mysql_fetch_array($mu)) {

                        $resultik=mysql_query("INSERT INTO `objednavkyinfo`(cislonakupu,produkt,mnozstvi,cena,cislofaktury,username,datumnakupu,dorucitdodata,velikost,dorucspol) VALUES ('$cislonakupu','$pid','$q','$price','$cislofaktury','$session','$datum','$n','$velikots','$cp')") or die(mysql_error());
}

        }
        header("Location: shoppingcart.php?delete=ano");


    }

我需要将$velikots写入数据库。

如果$velikots="Some text"; - 它正在运作

如果$velikots=$row['velikost']; - 无效

问题出在哪里?

1 个答案:

答案 0 :(得分:2)

您永远不会获取结果。在从数据库中实际获取查询之前,您正尝试使用查询结果。

$row = mysql_fetch_assoc($mu);
$velikots = $row['velikost'];

然后你应该能够删除你的while循环:

 while ($row=mysql_fetch_array($mu)) { ... } // remove this.

Please, don't use mysql_* functions in new code。它们不再被维护and are officially deprecated。请参阅red box?转而了解prepared statements,并使用PDOMySQLi - this article将帮助您确定哪个。如果您选择PDO,here is a good tutorial您也对SQL injections

持开放态度