2012-12-06 62 views
-6

我有下面的代码,我不能找到为什么不echo $ rslt [0] [“product_id”]; ? Cookie在浏览器中,有人可以告诉我什么是错的吗?

if (isset($_COOKIE["jshopping_temp_cart"])) { 
    mysql_connect("localhost", "user", "pass") or die(mysql_error()); 
    mysql_select_db("shopping_katalog") or die(mysql_error()); 
    $result = mysql_query("SELECT * FROM x9qg6_jshopping_cart_temp WHERE id_cookie ='".$_COOKIE["jshopping_temp_cart"]."'");  
    while ($row = mysql_fetch_array($result)) { 
     $data = $row['cart']; 
     $rslt = unserialize($data); 
     echo $rslt[0]["product_id"]; 
    } 
} 
+1

在给定示例中,我看不到任何'echo'或'print'。我认为这是一个错字。为了确定'$ rslt'里面的内容使用'var_dump($ rslt);'。 – Leri

+0

另外,从代码中删除真正的用户名和密码,并停止使用'mysql_ *',因为它已被弃用。您可以使用'mysqli_ *'和/或'PDO'来代替。 – Leri

回答

7

您没有使用echo,所以不会回应。

4

你需要echo它;)

echo $rslt[0]["product_id"]; 
1

你不会实际调用此回音在所有的,如果你还叫回声在不具有价值,那么它不会回显变量价值。

echo $rslt[0]["product_id"];

,以确保有可变的东西实际上是:

var_dump($rslt[0]["product_id"]);

0

回波在你的代码失踪。请修改您的代码,如:

if (isset($_COOKIE["jshopping_temp_cart"])) { 

    mysql_connect("localhost", "shopping_katalog", "[email protected]") or die(mysql_error()); 
    mysql_select_db("shopping_katalog") or die(mysql_error()); 
    $result = mysql_query("SELECT * FROM x9qg6_jshopping_cart_temp WHERE id_cookie ='" . $_COOKIE["jshopping_temp_cart"] . "'"); 
    while ($row = mysql_fetch_array($result)) { 
     $data = $row['cart']; 
     $rslt = unserialize($data); 
     echo $rslt[0]["product_id"]; 
    } 
} 
0

您可以回显所需的字段或使用print_r()来显示所有结果,如print_r();