2017-04-08 61 views
-1

我有一些產品會在while循環窗體中打印到屏幕上,並且會附帶一個'add_to_cart'按鈕。在While循環中提交按鈕

我希望能夠按「添加到購物車」按鈕,並添加所選產品上面的「$ selectedProduct」變量。但是當我按下它時,它沒有任何反應,變量保持空白。

<?php 

    include('connect.php'); 
    require("session.php"); 


     //create the sql statement 
     $sql_all= 
      "SELECT * FROM product 
       ORDER BY product_ID DESC"; 
     $result_all = mysqli_query($con,$sql_all); 


     //PRINT OUT ALL THE PRODUCT 
     while ($row_all = mysqli_fetch_assoc($result_all)) 
       { 
        echo '<form method="post">'; 
         echo '<u>'.$row_all["name"].'</u>'; 

         echo '<br>'; 

         echo '<button name="add_to_cart" type="submit">Add to Cart</button>'; 

         echo '<hr>'; 
        echo '</form>'; 



       } 



      if(isset($_POST["add_to_cart"])) 
      { 

       //CREATE A VARIABLE THAT HOLDS THE SELECTED PRODUCTED TO BE ADDED TO CART 
        $selectedProduct = $row_all["name"]; 

       echo 'Selected Product = '.$selectedProduct; 

      } 

    mysqli_close($con); 
?>    
+0

無論您的形式所具有的作用,也沒有你有一個JavaScript處理表單提交。 – Dez

回答

0

嗨,你似乎還沒有添加任何要通過後期的方法。找到下面的代碼,我已經告訴你如何以正確的方式做到這一點。這會每次將選定的產品添加到該特定變量。

while ($row_all = mysqli_fetch_assoc($result_all)) 
       { 
        echo '<form method="post">'; 
         echo '<u>'.$row_all["name"].'</u>'; 

         echo '<br>'; 

         echo '<button name="add_to_cart" value='.$row_all['name'].' type="submit">Add to Cart</button>'; 

         echo '<hr>'; 
        echo '</form>'; 



       } 



      if(isset($_POST["add_to_cart"])) 
      { 

       //CREATE A VARIABLE THAT HOLDS THE SELECTED PRODUCTED TO BE ADDED TO CART 
        $selectedProduct = $_POST["add_to_cart"]; 

       echo 'Selected Product = '.$selectedProduct; 

      } 

    mysqli_close($conn); 

但是,如果你想要它每次添加或迭代產品的數量,使變量存儲許多產品。你將不得不使用可變會話

+0

我添加了你的代碼,但是當我選擇一個以上的單詞時,它只會選擇第一個單詞。有任何想法嗎? – patreilly

+0

使用mysqli_fetch_array而不是關聯數組>>> 而($ row_all = mysqli_fetch_array($ result_all)) –

+0

同樣的事情,只是呼應了第一個字 – patreilly

0
<?php 

    include('connect.php'); 
    require("session.php"); 


     //create the sql statement 
     $sql_all= 
      "SELECT * FROM product 
       ORDER BY product_ID DESC"; 
     $result_all = mysqli_query($con,$sql_all); 
while ($row_all = mysqli_fetch_assoc($result_all)) 
       { 
        echo '<form method="post">'; 
         echo '<u>'.$row_all["name"].'</u>'; 

         echo '<br>'; 

         echo '<button name="add_to_cart" value='.$row_all['name'].' type="submit">Add to Cart</button>'; 

         echo '<hr>'; 
        echo '</form>'; 



       } 



      if(isset($_POST["add_to_cart"])) 
      { 

       //CREATE A VARIABLE THAT HOLDS THE SELECTED PRODUCTED TO BE ADDED TO CART 
        $selectedProduct = $_POST["add_to_cart"]; 

       echo 'Selected Product = '.$selectedProduct; 

      } 

     mysqli_close($conn); 
?>