GORAGOD.com

freelance, web developer, web designer, hosting, domain name

ทำไงให้มันเก็บค่าลง arry ไปเรื่อยๆอ่ะครับ

การทำงานมีดังนี้ครับคือ



1.เลือกสินค้าตัวที่ 1 กดปุ่ม enter ให้ข้อมูลเก็บลงใน array ตัวที่1

2.เลือกสินค้าตัวที 2 กดปุ่ม enter ให้ข้อมูลเก็บลงใน array ตัวที่2

3.แล้วเอาข้อมูลที่เก็บใน array ไปแสดงค่า ทั้ง 2 ค่า จะทำไงครับ มีโค๊ตดังนี้ครับ



ทำไงให้มันเก็บลง arry ไปเรื่อยๆอ่ะครับ





[head]Code (PHP)[/head]

[php]

<form action="" method="post" >

<table width="464" border="1" align="center">

  <tr>

    <td colspan="3" align="center">เลือกสินค้าที่ต้องการ</td>

  </tr>

  <tr>

    <td width="80" align="right">เลือกสินค้า</td>

    <td width="294" align="left">

    <select name="select_product">

            <option value="9999">เลือกสินค้า</option>

            <option value="สินค้า1">สินค้า1</option>

            <option value="สินค้า2">สินค้า2</option>

            <option value="สินค้า3">สินค้า3</option>

            <option value="สินค้า4">สินค้า4</option>

            <option value="สินค้า5">สินค้า5</option>

            <option value="สินค้า6">สินค้า6</option>

    </select>

    </td>

    <td width="68" align="left"><input type="submit" value="เลือกสินค้า"></td>

  </tr>

</table>

</form>



  <?    

    

$select_product =$_POST['select_product'];//รับค่าจาก select เมื่อกดปุ่ม enter



if($select_product){

    $stack = array("$select_product");    //เก็บค่าใส่ อาเร ชื่อ stack    

    

    //ติดตรงนี้อ่ะครับจะทำไงเมื่อเรารับค่าตัวที่ 2 เข้ามาให้มันเพิ่มเข้าไปอีก 1 ตัวอ่ะครับ

       array_push($stack,"$select_product");    //เพิ่มค่าลงไปเป็นตัวที่ 2



    

    print_r($stack); //แสดงค่าในอาเร

}





?>

[/php]



การแสดงผล เพราะเลือกสินค้า 2 อย่าง



สินค้า1

สินค้า2



ขอบคุณครับ
21 ก.ค. 2554 1 5,593

ง่ายๆเลยครับ



$_SESSION['cart'][] = $_POST; // เก็บค่าที่โพสต์มา ลง session



print_r($_SESSION['cart']); // แสดงสินค้าในตะกร้า



unset($_SESSION['cart']); // เคลียร์



เรื่องของเรื่องก็คือ PHP ไม่สามารถรักษาตัวแปร array ไว้ได้ครับ กด enter ครั้งแรก มันจะส่งไปครั้งหนึ่งและถูกทำลายไป กดอีกครั้ง ก็จะไปเริ่มใหม่



ในทางปฏิบัติ เราจะต้องบันทึกข้อมูลที่ส่งไป เก็บไว้ในตัวแปรที่สามารถใช้งานข้ามหน้าได้ ซึ่งก็มี 2 วิธีหลักๆ คือ



1.เก็บข้อมูลที่โพสต์ ลงบน db

2.เก็บข้อมูลที่โพสต์ ลง session (ตามตัวอย่างด้านบน)
#1
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 2M
^