2015-12-02 2 views
1

Недавно я пытаюсь изучить, как добавить корзину в php и MySQL. До тех пор я нашел это полезным website.

Однако есть много ошибок, что некоторые из них я уже знаю, как исправить это.

Но я не могу понять, что это за незаконное смещение строки. Ошибка указана в строке 64 в index.php, как показано ниже.

Это 64 Сбой в линии

<p><?php echo $row['name'] ?> x <?php echo $_SESSION['cart'][$row['id_product']]['quantity'] ?></p> 

Sample Images

<?php 

if(isset($_SESSION['cart'])){ 

    $sql="SELECT * FROM products WHERE id_product IN ("; 

    foreach($_SESSION['cart'] as $id => $value) { 
     $sql.=$id.","; 
    } 

    $sql=substr($sql, 0, -1).") ORDER BY name ASC"; 
    $query=mysqli_query($conn,$sql); 
    while($row=mysqli_fetch_array($query)){ 

    ?> 
     <p><?php echo $row['name'] ?> x <?php echo $_SESSION['cart'][$row['id_product']]['quantity'] ?></p> 
    <?php 

    } 
?> 
+0

'isset' возвращает TRUE на нулевом или пустом значении. Я предпочитаю '! Empty()' –

+0

http://stackoverflow.com/questions/13688071/multi-dimension-session-array –

ответ

0

попробуйте проверить с этим

session_start(); 
if(isset($_SESSION['cart']) && !empty($_SESSION['cart'])) { 
    echo "<pre>";print_r($_SESSION['cart']);echo "</pre>"; 
} 

Проверка погоды $_SESSION['cart'] является массивом или нет. Попробуйте это, чтобы проверить =>var_dump($_SESSION['cart']);