ข้ามไปที่เนื้อหาหลัก

บทความ

กำลังแสดงโพสต์จาก สิงหาคม, 2018

SyntaxError: JSON.parse: unexpected non-whitespace character after JSON data

วิธีแก้ปัญหา SyntaxError: JSON.parse: unexpected non-whitespace character ปัญหาที่เกิดขึ้นคือ เมื่อมีการ submit ผ่าน iframe และให้ PHP คืนค่าเป็น JSON $json = json_encode(array(                                     "is_successful" => FALSE,                                     "message" => $message )); echo $json; ผลที่ได้คือ หน้าเว็บค้าง ไม่มีอะไรตอบสนองหรือทำงานต่อจากนั้นเลย และเมื่อเปิด console ขึ้นมาดูก็พบข้อความแจ้ง error ดังนี้ SyntaxError: JSON.parse: unexpected non-whitespace character after JSON data at line 1 column 921 of the JSON data ทั้งที่ค่าคืนกลับมาใน iframe ก็ปกติดี โค้ดในส่วนของการดึงข้อมูลใน iframe หลังจาก Submit เรียบร้อยมีดังนี้ var c = 0; $("#post_iframe").on('load',function() { c++; if(c==1){ iframeContents = this.contentWindow.document.body.innerHTML; var...

PHP CI MANIA : PHP CodeIgniter Generator โปรแกรมช่วยสร้างโค้ด ลดเวลาการเขียนโปรแกรม

ราคาแต่ละเวอร์ชั่น   (ราคา 1,500 .- / 2,990.- / 3,990 .-)        จะเริ่มที่เวอร์ชั่น 0.1 ถึง 0.9 โดยความสามารถเริ่มต้นคือ        1) หน้าแสดงรายการทั้งหมด จะสามารถค้นหา และแบ่งหน้าได้อัตโนมัติ        2) หน้าเพิ่มข้อมูล จะสามารถกำหนดจำนวน INPUT ที่ต้องการป้อนข้อมูลได้        3) หน้าแสดงรายละเอียดเรคอร์ด สามารถคลิกเลือกรายการที่ต้องการดูข้อมูลทั้งหมดได้        4) หน้าแก้ไขข้อมูล สามารถคลิกแก้ไขข้อมูลในแต่ละเรคอร์ดจากหน้าแสดงรายการได้        5) การลบข้อมูล สามารถคลิกลบรายการในแต่ละเรคอร์ดได้        6) มีระบบ Login และบริหารจัดการข้อมูลสมาชิกได้        นอกจากนี้ระบบยังรองรับส่วนของการ JOIN TABLE อื่นๆได้อีกด้วย เช่น ฟิลด์ที่เก็บรหัสสมาชิก จะสามารถ JOIN ไปยังตารางสมาชิก เพื่อดึงชื่อมาแสดงผลได้ด้วย        และความสามารถอีกอย่างที่จำเป็นอย่างยิ่งนั่นก็คือ รองรับการเชื่อมโยงกับตา...

K Plus จ่ายค่าไฟฟ้าส่วนภูมิภาค ผ่านแอพฯ PEA Smart Plus

การทำงานร่วมกันของ PEA Samrt Plus กับ K PLUS - ธนาคารกสิกรไทย หลังจากที่พยายามหาเมนูจ่ายค่าไฟ(การไฟฟ้าส่วนภูมิภาค) อยู่หลายครั้งหลายหน พยายามจ่ายด้วยเมนู การไฟฟ้านครหลวง อยู่หลายครั้งก็ไม่สำเร็จ (จะจ่ายได้ไงเล่า มันคนละส่วนกันกับการไฟฟ้าส่วนภูมิภาค) ก็ลองค้นหาใน Google และเลื่อนไปเปิดกระทู้พันทิปมาอ่าน ก็ได้ความว่า ต้องติดตั้งแอพ PEA Samrt Plus ก่อนจึงจะสามารถชำระเงินได้ หลังจากติดตั้งเรียบร้อย เปิดขึ้นมาก็จะเจอส่วนของการลงทะเบียน เมื่อลงทะเบียนเรียบร้อยก็มาเพิ่มสถานที่ใช้ไฟฟ้า - จะแสกน QR Code/Barcode - หรือ จะกรอกเองตามตัวอย่างบนบิลค่าไฟก็ได้ กรอกข้อมูลเรียบร้อยให้สังเกตข้อมูลชื่อเจ้าของผู้ใช้ และยอดค้างชำระว่าถูกต้องหรือไม่ ถ้าถูกต้องกดที่เข้าไปเพื่อชำระค่าไฟค้างจ่าย หรือจะเข้าไปที่เมนู ชำระค่าไฟฟ้า ด้านล่างก็ได้ ถ้ามีค่าไฟฟ้าค้างจ่าย จะปรากฏกลางจอภาพให้เลือก (แต่ในภาพด้านล่างนี้ชำระไปแล้วก็เลยว่างเป่า) เมื่อกดเลือกรายการที่ต้องการชำระเรียบร้อย ให้เลือก บัญชีธนาคาร หลังจากกดเลือกบัญชีธนาคารแล้ว จะมีรายชื่อธนาคารให้เลือก - ...

ตัวอย่างการใช้ HTML5 Canvas วาด ER Diagram

มาดูตัวอย่างการใช้ Canvas วาด ER Diagram กันครับ ถ้าดูในโค้ดด้านล่างนี้ จะสังเกตเห็นว่าส่วนของ //LEFT หรือตาราง Master และส่วนของ //RIGHT หรือตาราง Detail ทั้งสองส่วนนี้ จะทำงานซ้ำๆกัน ซึ่งถ้านำไปใช้จริงก็จะเป็นการดึงฟิลด์ของตารางที่เกี่ยวข้องออกมาวนลูป เพื่อแสดงชื่อฟิลด์ในช่องแต่ละช่อง ตามจำนวนฟิลด์ที่มีในตารางแต่ละตาราง ตัวอย่างโค้ดวาด ER Diagram <!DOCTYPE HTML> <html>   <head>     <style>       body {         margin: 0px;         padding: 0px; background-color : #eeeeee; text-align : center;       } canvas#myCanvas{ border: 1px solid #cccccc; background-color : #ffffff; }     </style>   </head>   <body>     <canvas id="myCanvas" width="1024" height="600"></canvas>     <script> var canvas = document.getElementById('myCanvas'); var context = canvas.getConte...

Bootstrap Flowchart - สร้างโฟลวชาร์ตระบบแบบง่ายๆ

Bootstrap Determination Flowchart ตัวอย่างการทำโฟลชาร์ตแบบง่ายๆ ด้วย Bootstrap Frmaework ซึ่งน่าจะนำไปใช้ประโยชน์ต่อการสร้างระบบจัดการโปรเจ็กต์ของเราได้ และสิ่งที่น่าสนใจอีกอย่างคือ เมื่อนำไปเชื่อมโยงกับระบบ CodeIgniter Generator ที่ผมกำลังสร้างมานั้น อาจจะสามารถสร้างระบบการจัดการโปรเจ็กต์พร้อมสร้างโครงสร้างไฟล์ที่จำเป็นได้เสร็จสรรพ ที่มา : https://bootsnipp.com/snippets/a36yo PHP  CI  MANIA   -  PHP Code Generator  โปรแกรมช่วยสร้างโค้ด ลดเวลาการเขียนโปรแกรม เขียนโปรแกรมง่ายและสะดวกขึ้น สนใจสั่งซื้อราคาสุดคุ้ม >>  http://fastcoding.phpcodemania.com/

PHP จัดตารางการแข่งขันฟุตบอล / บาสเกตบอล / กีฬาประเภทพบกันทุกทีมเหย้า-เยือน

PHP generate football schedule ในโค้ดตัวอย่างด้านล่างนี้ จะเป็นการวนลูป for อยู่ด้วยกันทั้งหมด 3 รอบ for ครั้งที่ 1  กำหนดให้นับแค่ 2  ในลูปแรกจะเป็นทีมเหย้า ในลูปที่สองจะเป็นทีมเยือน for ครั้งที่ 2 จะนับตามจำนวนทีม ในตัวอย่างมี 8 ทีมก็จะนับจนกว่าจะครบ 8 ทีม for ครั้งที่ 3 จะนับตามจำนวนทีมคู่แข่ง ในตัวอย่างมี 8 ทีม ก็จะพบคู่แข่งอีก 7 ทีม  (ซึ่งพบกัน 2 ครั้ง เหย้า-เยือน ก็จะเท่ากับ 14 ครั้ง) ข้อสังเกต เมื่อขึ้น Day 9 จะมีการสลับเอาทีมเยือนขึ้นมาเป็นทีมเหย้า Team 2 จึงเป็นเจ้าบ้านรับการมาเยือนของ Team 1 แทน สำหรับโค้ดที่ใช้เป็นตัวอย่าง มีดังต่อไปนี้ [PHP CODE] <?php $teams = array( 'Team 1', 'Team 2', 'Team 3', 'Team 4', 'Team 5', 'Team 6', 'Team 7', 'Team 8' ); $team_logo[0] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-15-512.png'; $team_logo[1] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-16-512.png';...

JavaScript เปลี่ยนตัวพิมพ์ใหญ่ให้กับอักษรตัวแรกเหมือน ucfirst() ของ PHP

JavaScript กับการกำหนดตัวแรกเป็นตัวพิมพ์ใหญ่ สร้างฟังก์ชั่น JavaScript เพื่อทำให้ตัวแรกเป็นตัวพิมพ์ใหญ่ function jsUcfirst(string)  {      return string.charAt(0).toUpperCase() + string.slice(1); } วิธีการเรียกใช้งาน <input name="controller_name" onchange="this.value=jsUcfirst(this.value)" /> โค้ดด้านบนนี้จะทำงานเมื่อเกิดการเปลี่ยนแปลงข้อมูลในช่องกรอกข้อมูลที่ชื่อ controller_name จะเรียก onchage ขึ้นมาทำงาน this.value=jsUcfirst(this.value) คือคำสั่ง JavaScript ที่กำหนดให้ค่า value ของช่องกรอกข้อมูลตัวนี้ มีค่าเท่ากับค่าที่เปลี่ยนตัวแรก เป็นตัวพิมพ์ใหญ่ไปแล้ว มาดูกันทีละขั้นตอนว่าเกิดอะไรขึ้นบ้างในฟังก์ชั่นนี้ เราจะสามารถแยกออกได้ 3 เหตุการณ์ด้วยกัน คือ เหตุการณ์ที่ 1 => string.charAt(0) เหตุการณ์ที่ 2 => .toUpperCase() เหตุการณ์ที่ 3 => + string.slice(1); สมมติว่าเราส่งคำว่า members เข้าไปในฟังก์ชั่น jsUcfirst() string.charAt(0) จะทำการตัดอักษรตัวแรกออกมาจาก string จะได้คำว่า m ออกมา .toUpperCase() จะทำงานต่อทันทีหลังจาก...

มันเป็นเรื่องของเหตุผล ที่เมื่อผลลัพธ์ Callback มาแล้วไม่มีฟังก์ชั่นไหน Validate สิ่งที่ได้รับกลับมาเท่านั้นเอง

+++ ทำความดีควรหวังผล แต่ไม่ต้องหวังสิ่งตอบแทน +++ ผมอาจจะจั่วหัวดูชวนสงสัยกันสักหน่อย เพราะเรามักจะได้ยินคำว่า  " ทำดีไม่หวังผลตอบแทน " ผมก็แค่เติมคำใหม่เข้าไปว่า ควรหวังผล เพราะถ้าเราไม่หวังผล แล้วเราจะรู้ได้อย่างไรว่าสิ่งที่ทำลงไป "นั้นดีจริง" บุญ นั้นเกี่ยวข้องกับเรื่องของ เหตุ และ ผลแห่งกรรม กับคำถามที่ว่า  ทำบุญหวังผลตอบแทนจะไม่ได้บุญจริงหรือ??? ว่าด้วยเรื่องของ เหตุและผล เมื่อเราทำลงไปแล้ว ต่อให้อยากได้หรือไม่อยากได้ ผลจากสิ่งที่เราทำไปแล้วนั้น ย่อมกลับมาหาเราแน่นอน ไม่ทางใดก็ทางหนึ่ง ดังนั้น เมื่อเราทำบุญ เราย่อมได้บุญแน่นอน  ไม่ว่าเราจะอยากได้หรือไม่อยากได้ก็ตาม แต่คำถามที่ควรถามจริงๆคือ ผลบุญที่เราอยากได้นั้นใช่ผลบุญที่ได้รับจริงหรือไม่? "เราคงไม่อาจหาฟังก์ชั่นไหนใช้ Validate สิ่งที่ Callback กลับมาได้" มันก็เหมือนกับเราขยันอ่านหนังสือสอบ เราก็จะสอบได้เกรดดีๆ ตามที่เราหวังไว้ นี่ก็คืออีกหนึ่งการสร้างบุญของวัยเรียน มันคือสิ่งดีๆที่เราทำให้ตัวเอง และพ่อแม่ได้ชื่นใจ ดั...

รวบรวมข้อมูลสำหรับสร้าง เครื่องผสมเมนูเครื่องดื่มอัตโนมัติ - ชงกาแฟอัตโนมัติ

แนวคิดจากคลิปวิดีโอ เครื่องกดน้ำอัดลม DIY ไอเดียสำหรับต่อยอด สร้างวงจรควบคุมระยะเวลาปั๊มด้วยการจ่ายไฟผ่านระบบ ไมโครคอนโทรลเลอร์ (Micro Controller) เพื่อเลือกเมนูแต่ละเมนู ที่กำหนดระยะเวลาของการจ่ายไฟให้ปั๊มแต่ละตัวต่างกัน และกำหนดระดับความหวานได้หลายระดับ ซึ่งแต่ละระดับก็จะมีระยะเวลาการจ่ายไฟที่ต่างกัน ตัวอย่าง ขา 1 = ปั๊มจ่ายน้ำเชื่อม ขา 2 = ปัมจ่ายนมสด ขา 3 = ปั๊มจ่ายนมข้นหวาน ขา 4 = บลูฮาวาย ขา 5 = แคนตาลูป หวานระดับ 1 ขา 1 จ่ายไฟออกหน่วงเวลา 3 วินาที หวานระดับ 2 ขา 1 จ่ายไฟออกหน่วงเวลา 5 วินาที หวานระดับ 3   ขา 1 จ่ายไฟออกหน่วงเวลา 7 วินาที หวานระดับ 4   ขา 1 จ่ายไฟออกหน่วงเวลา 9 วินาที หวานระดับ 5   ขา 1 จ่ายไฟออกหน่วงเวลา 12 วินาที เมื่อเราจ่ายไฟไปยังปั๊มที่การหน่วงเวลาต่างกัน ระยะเวลาที่ปั๊มทำงานก็จะต่างกัน ซึ่งปริมาณน้ำเชื่อมที่ได้ของแต่ละระดับก็จะต่างกันไป และเมื่อเลือกเมนูอะไรไว้ ปั๊มที่เลือกไว้ก็จะทำงานตามระยะเวลาที่กำหนด และเมื่อครบตามจำนวนปั๊ม ก็จ่ายไฟเลี้ยงไปยังเครื่องผสมเครื่องดื่ม Self Stirring Mug ...

PHP MOD การหารเอาเศษ การคิดราคาสินค้าแบบแพ็ก แบบชิ้น

การคิดราคาสินค้าแบบแพ็ก    หลักการเบื้องต้นก็คือ 1. คิดราคาแบบเป็นแพ็ก $pack_buy = floor($customer_buy / $product_xx_pack_qty); //ปัดเศษทิ้ง $total_pack_buy_price = $pack_buy * $product_xx_pack_price;//คิดราคาแบบ pack ใน PHP เราจะใช้ฟังก์ชั่น floor() เพื่อปัดเศษทิ้ง เอาเฉพาะที่ครบจำนวนแพ็กเพื่อไปคูณกับราคาต่อแพ็ก แต่ถ้าไม่ครบก็จะนำไปคำนวณราคาต่อแพ็กแล้วได้ 0 2. หาราคาต่อชิ้น ที่เหลือจากการหารเพื่อหาแบบแพ็ก $piece_buy = $customer_buy % $product_xx_pack_qty;//หารแบบเอาเศษ $piece_price = $piece_buy * $product_xx_price;// ราคาของส่วนที่เหลือจากแพ็ก     แน่นอนว่าถ้าซื้อไม่ถึงแพ็ก ก็จะเป็นจำนวนชิ้นทั้งหมด  แต่ถ้าซื้อครบแพ็กพอดี จำนวนชิ้น ก็จะเป็น 0 เพราะคิดราคาแบบแพ็กเท่านั้น แต่ถ้าซื้อเกินแพ็กเศษเท่าไหร่ก็เอาไปคูณกับราคาต่อชิ้น

PHP เปรียบเทียบวันที่ หาผลต่างระหว่างวันที่ 2 วัน ด้วยฟังก์ชั่น DateTime

ในตัวอย่างนี้ เราจะหาผลต่างระหว่างวันที่ 2 วันด้วยฟังก์ชั่น PHP DateTime Class ซึ่งจะมีให้เรียกใช้ตั้งแต่ PHP เวอร์ชั่น  5.2.0 ขึ้นไป กำหนดให้ตัวแปร PHP ชื่อ $date1 และ $date2 รับค่าจากการส่งค่าแบบฟอร์มแบบ POST โดยจะใช้ isset() ตรวจสอบค่าก่อนว่าได้ส่งมาหรือไม่ ถ้ายังไม่ได้ส่งค่าจากแบบฟอร์มมา จะเซ็ตให้เป็นค่าว่าง เพราะกรณีเปิดหน้าเว็บขึ้นมา จะยังไม่ได้ส่งค่าใดๆ เมื่อได้ค่าจากแบบฟอร์มเราจะเรียกคลาส DateTime() ใน PHP คำนวณค่าให้ด้วยเมธอด/ฟังก์ชั่น diff() จากนั้นก็เซ็ต format() ให้อยู่ในรูปแบบที่ต้องการ ซึ่งอ่านเพิ่มเติมเกี่ยวกับรูปแบบได้ที่ Supported Date and Time Formats http://php.net/manual/en/datetime.formats.php สำหรับซอร์สโค้ด PHP ที่ใช้ทั้งหมดมีดังตัวอย่างต่อไปนี้ [ PHP Code ] <?php $date1 = isset($_POST['date1']) ? $_POST['date1'] : ''; $date2 = isset($_POST['date2']) ? $_POST['date2'] : ''; $datetime1 = new DateTime($date1); $datetime2 = new DateTime($date2); $interval = $datetime1->diff($dateti...

ค้นหาในเว็บไซต์

เนื้อเพลงที่ได้รับความนิยม ในรอบสัปดาห์

ค้นหาบล็อกนี้