สวัสดีครับ ในบทความนี้จะแจกตัวอย่างการเขียน Code เพื่อออกเลขใบแจ้งหนี้แบบมีข้อความ ปีและเดือน และเลขที่บิล โดยใช้ภาษา PHP ฝึกไว้ครับเผื่อได้ใช้
ขอแนะนำระบบพร้อมใช้ ราคาเบาๆ เอาไปต่อยอดได้ ซื้อแล้วปรึกษาได้เรื่อยๆ
1.ระบบยืมคืนอุปกรณ์กีฬา คลิก
2.เว็บอีคอมเมิร์ชราคาถูก คลิก
3.ระบบหอพัก คลิก
4.ฐานข้อมูลศิษย์เก่า คลิก
5.ระบบเบิกจ่ายเครื่องเขียนสำนักงาน คลิก
6.ระบบสอบออนไลน์ คลิก
7.ระบบห้องสมุด คลิก
8.ระบบอื่นๆ เพิ่มเติม คลิก
ปกติเวลาเราเพิ่มข้อมูลลงในตารางเราจะนิยมใช้การเพิ่มลำดับแบบอัตโนมัติ (Auto Increament) ซึ่งมันสะดวกและง่ายมากๆ แต่ด้วยความที่ความต้องการของลูกค้าไม่มีที่สิ้นสุด ต้องการออกเลขบิลที่มากกว่าตัวเลข คือ มีตัวอักษร, ปี คศ. , เดือน และลำดับเข้ามาเกี่ยวข้องด้วย ดังนั้นในตัวอย่างนี้จะแนะนำแนวทางการนำไปต่อยอดแบบเป็นลำดับขั้นตอนนะครับ และ workshop นี้ เหมาะสำหรับคนที่มี skill ภาษา PHP ระดับกลางขึ้นไปนะครับ ส่วนคนที่กำลังฝึกพื้นฐานลองดูคลิปสอนปรับพื้นฐาน ภาษา php ฟรี 100 คลิป ++ https://devbanban.com/?p=3940 ตามลิ้งข้างต้นครับ
ตัวอย่างที่ต้องไปดูเพิ่มเติม
มาเริ่มทำ workshop กันครับ *คอมเม้นอยู่ในโค้ด
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
<?php echo '<h3> เมื่อลูกค้าอยากได้เลขใบแจ้งหนี้แบบนี้ INV-202301-001 </h3>'; //เมื่อ select max มาแล้ว $last_inv = "INV-202301-001"; //มาจาก query //print_r ออกมาดู (ดูข้อมูลในรูปแบบ array) echo 'print_r ออกมาดู <br>'; print_r(explode("-", $last_inv)); echo '<hr>'; echo 'แยกเป็นออบเจ็ก หรือแต่ละส่วนเพื่อเอาไปจัดการได้ง่ายขึ้น <br>'; $result_explode = explode('-', $last_inv); // ขั้นด้วย '- echo "string : " .$result_explode[0]."<br>"; // 0 คือค่าก่อน '-' echo "Year & Month from query : " .$result_explode[1]."<br>"; // 1 ค่าหลัง '-' echo "Current Year & Month: " .date('Ym')."<br>"; // 1 ค่าหลัง '-' echo "Last INV-No. : " .$result_explode[2]."<br>"; // 2 ค่าหลัง '-' $last_inv_adding = ($result_explode[2]+1); //เอามา +1 เพื่อสร้างบิลใหม่ //เติม 0 ข้างหน้า จาก 2 เป็น 002 $last_inv_addZeros =sprintf("%03d", $last_inv_adding); echo 'Next INV N0 : ' .$last_inv_addZeros; // echo ออกมาดูมี 00 นำหน้าหรือยัง echo '<hr>'; //เอาไป insert ต่อได้เลย อย่าลืมกำหนด column นี้เป็น PK ด้วยนะครับ $new_inv_no = $result_explode[0].'-'.date('Ym').'-'.$last_inv_addZeros; //ผลลัพธ์ echo 'INV ลำดับต่อไป : <b>' .$new_inv_no . '</b>'; //devbanban.com ?> |
ปล. อ่านคอมเม้นเยอะๆ ครับ
ผลการทำงาน
ตัวอย่างระบบที่นำไปใช้ในการออกใบแจ้งหนี้ ระบบหอพัก คลิก.
ลองเอาไปประยุกต์ใช้ดูครับ และฝากติดตาม workshop ต่อๆ ไปด้วยครับผม
ร่วมสนับสนุน ค่ากาแฟ ค่าโฮส devbanban.com ได้ที่
ธนาคารกรุงไทย สาขาเดอะมอลล์ท่าพระ
ชื่อบัญชี นายพิศิษฐ์ บวรเลิศสุธี เลขที่ 878-0-17747-6
———
ธนาคารไทยพาณิชย์ สาขามหาวิทยาลัยราชภัฏธนบุรี
ชื่อบัญชี นายพิศิษฐ์ บวรเลิศสุธี เลขที่ 406-359094-1
fanpage : https://www.facebook.com/sornwebsites/