วันอาทิตย์ที่ 14 พฤศจิกายน พ.ศ. 2553

แสดงสินค้าหน้าร้าน ตอนที่ 1 แสดงรายการสินค้าใหม่ , สินค้าแนะนำ , และสินค้าขายดี ในหน้าHome Page

ถึงเวลาที่ต้องอัปเดตบทความสอนพัฒนาร้านค้าออนไลน์ เว็บขายของ ด้วยPHPแล้วล่ะคับ เดือนนี้แทบไม่ได้ทำบทความให้อ่านกันเลย และเนื้อหาที่จะสอน เริ่มเป็นระดับ Advance กันแล้ว หลังจากที่ท่านได้อ่านบทความ ระบบทะเบียนสินค้า(หลังร้าน) ซึ่งเป็นส่วนจัดการของ Admin บทความนี้เราจะสอนแสดงสินค้าที่เราเพิ่มเข้าไป นำมาแสดงให้ลูกค้าเห็นกันคับ
อันดับแรกผมได้สร้างไฟล์ขึ้นมา 2 ไฟล์ ไฟล์แรกตั้งชื่อว่า function.php แล้วพิมพ์ Code PHP เหล่านี้ลงไป


ไฟล์ function.php
 ไฟล์นี้เอาไว้เก็บ Function ต่างๆ ส่วนFunctionที่ผมเพิ่มเข้าไปคือ ฟังก์ชั่นแสดงข้อมูลเป็นคอลัมน์ และ แบ่งหน้าข้อมูล(pagi) โดยที่ เราสามารถกำหนดจำนวนคอลัมน์ที่จะแสดงได้ และสามารถกำหนดการแบ่งหน้าข้อมูลได้อีกด้วย ว่าจะให้แสดงเลขหน้าด้วยหรือไม่

ส่วนไฟล์ที่ 2 ผมตั้งชือว่า fp_index.php กำหนดให้เป็นหน้า Home Page สำหรับข้อมูลที่จะแสดงในเพจนี้ ดังรูป
fp_index.php
ส่วนที่ 1 คือส่วนของสมาชิก ซึ่งเราได้สอนท่านไปแล้วจากบทความความ ระบบล็อกอิน และ ระบบลงทะเบียน
ส่วนที่ 2 แสดงสินค้ามาใหม่ในร้านค้า โดยแสดง จำนวน 9 รายการ 3 คอลัมน์
ส่วนที่ 3 แสดงสินค้ามาแนะนำในร้าน โดยแสดง จำนวน 9 รายการ 3 คอลัมน์
ส่วนที่ 4 แสดงสินค้าขายดีของร้านค้าออนไลน์ โดยแสดง จำนวน 5 รายการ 1 คอลัมน์  เป็นลิสต์ลงมาคับ
สำหรับ Source Code ในหน้านี้ ให้พิมพ์คำสั่งดังนี้คับ

ไฟล์ fp_index.php (Code)
บรรทัดที่ 1 กำหนด session start
บรรทัดที่ 2 เรียกคำสั่งเชื่อมต่อกับฐานข้อมูลให้ทำงานในเพจนี้(config.php)
บรรทัดที่ 3 เรียกไฟล์function.php ซึ่งภายในมีฟังก์ชั่น pagi ซึ่งเราจะเรียกใช้ฟังก์ชั่นนี้คับ
บรรทัดที่ 5 – 7 กำหนดคำสั่ง sql เพื่อไปดึงข้อมูลจาก Data Base มาแสดงในหน้าร้านค้าของเรา โดยกำหนดเงื่อนไข (WHERE) เลือกเฉพาะสถานะสินค้าที่เราต้องการ (1=สินค้ามาใหม่,2=สินค้าขายดี,3=สินค้าแนะนำ)
บรรทัดที่ 43 เรียกไฟล์ login.php มาทำงานในเพจนี้
บรรทัดที่ 50 เรียกใช้ฟังก์ชั่น pagi โดยกำหนดอากิวเมนต์ pagi(จำนวนข้อมูลแสดงหนึ่งหน้า,จำนวนคอลัมน์,เพจที่,คำสั่งsql) ถ้าหากเราไม่ต้องการให้แสดงเลขหน้าให้กำหนดอากิวเมนต์ว่า ‘0’ ดังคำสั่งในบรรทัดนี้คับ (แสดงสินค้ามาใหม่)
บรรทัดที่ 56 เรียกใช้ฟังก์ชั่น pagi โดยกำหนดอากิวเมนต์ pagi(จำนวนข้อมูลแสดงหนึ่งหน้า,จำนวนคอลัมน์,เพจที,คำสั่งsql) โดยไม่แสดงเลขหน้า(สินค้าแนะนำ)
บรรทัดที่ 64 เรียกใช้ฟังก์ชั่น pagi โดยกำหนดอากิวเมนต์ pagi(จำนวนข้อมูลแสดงหนึ่งหน้า,จำนวนคอลัมน์,เพจที่,คำสั่งsql) โดยไม่แสดงเลขหน้า(สินค้าขายดี)

ดูผลลัพธ์ของโปรแกรมได้ที่นี่คับ
พบกับบทความสอนทำระบบ E-Commerce ร้านค้าออนไลน์ เว็บขายของ ด้วย PHP + MySQL ในบทความตอนต่อไปคับ

11 ความคิดเห็น :

  1. สำหรับtableที่ผมใช้สอนในบทความนี้ คือ table tb_product คับ
    ดูได้จากบทความนี้คับ http://pnwtt1987.blogspot.com/2010/10/1_19.html

    ตอบลบ
  2. ไม่ระบุชื่อ14 พฤษภาคม 2555 15:41

    รบกวนถามหน่อยค่ะ
    ในการทำหน้าแรกของเว็บ แบ่งได้ 3ส่วน แต่ละส่วนจะมีคำว่า "php"
    จะโชว์ในเว็บ ซึ่งไม่โชว์ข้อมูลใน Dream
    อยากทราบหลักการในการทำ เป้นอย่างไร

    ตอบลบ
  3. ไม่มีคำสั่งเชื่อมต่อกับฐานข้อมูลหรือป่าวครับ ศึกษาได้จาก ->http://php-for-ecommerce.blogspot.com/2010/09/confphp-connection-database.html
    ถ้ายังไม่เข้าใจก็ให้ดาวน์โหลดไฟล์ที่ผมสอนในบทความไปศึกษาดูเองนะครับ
    http://www.4shared.com/file/ASJptEkC/exshops.html

    ตอบลบ
  4. ไม่ระบุชื่อ13 มีนาคม 2556 16:57

    ขอถามหน่อยค๊า ถ้าจะเปลี่ยนให้แสดงจาก สินค้าแนะนำ สินค้าใหม่ อะไรพวกนี้ ให้เป็นตาม หมวดหมู่สินค้า cg อะคะ ต้องทำยังไงเหรอคะ

    ตอบลบ
    คำตอบ
    1. ทำไม่ยากครับ เอา id ของหมวดสินค้าของเทเบิลหมวดสินค้าไป join กับ id หมวดสินค้าในเทเบิล product ครับ
      เช่นใช้แบบ left join ครับ

      SELECT
      product.product_name,
      product.product_amount,
      product.product_price,
      category.category_name,
      product.category_id
      FROM
      product
      Left Join category ON product.category_id = category.category_id
      WHERE product.category_id=11 AND product.status='สินค้าใหม่'

      หมายถึง แสดงสินค้าที่อยู่ในหมวด id=11 ที่เป็นสินค้าใหม่ออกมาครับ

      ลบ
  5. ไม่ระบุชื่อ14 มีนาคม 2556 22:18

    แล้วเราจะรู้ได้ไงคะว่าเป็น id=11

    คือหนูอยากจะให้ ลูกค้าคลิกหมวดหมู่สินค้านี้ เเล้วก็แสดงแค่สินค้าหมวดหมู่นั้นคะ
    อย่างเช่น หมวดหมู่เครื่องสำอางค์ พอคลิกก็เจอเครื่องสำอางค์ ทำนองนี้คะ

    อีกอย่างคะ สอนการทำเว็บมั้ยคะ พอดีอยากเก่ง อยากรู้เหมือนเจ้าของบทความมั่งอะคะ

    ตอบลบ
    คำตอบ
    1. ก็ใช่ไงครับ เวลาคลิกหมวดสินค้า เราจะส่ง id ของหมวดสินค้าไปด้วยครับ เช่น http:localhost/category.php?id=11
      11 = คือค่า id ของหมวดสินค้าตัวอย่างนะครับ ของน้องอาจเป็นค่าอื่น เช่น 1,2,3
      ลองดูตัวอย่างจากเว็บนี้ครับ http://www.deebyny.com/ ตรงเมนู category เราจะส่งค่าไปอย่างนี้ครับ

      ลบ
    2. ไม่ระบุชื่อ15 มีนาคม 2556 11:23

      ขอบคุณมากนะคะ โง่อยู่ตั้งนาน ทำได้เเล้วคะ ขอบคุณมากๆๆ คะ

      ลบ
    3. ด้วยความยินดีครับ ส่วนเรื่องสอนทำเว็บ ตอนนี้ขอสอนในบล็อกนี้ก่อนครับ ส่วนอนาคตอาจจะมีรับสอนแบบตัวต่อตัวครับ

      ลบ
  6. ไม่ระบุชื่อ15 ตุลาคม 2558 09:35

    รบกวนสอบถามเกี่ยวกับ การทำ Rating 5 ดาว ให้คะแนนสินค้าครับ พอมีตัวอย่าง code ไหมครับ

    ตอบลบ