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

บทความ

กำลังแสดงโพสต์จาก มีนาคม, 2016

Daily Report ตอนที่ 5 : ดาวน์โหลด CodeIgniter และทดสอบใช้งานหน้า Welcome

ระบบบันทึกการปฏิบัติงานประจำวัน ตอนที่ 5 1. ดาวน์โหลด CodeIgniter Framework 2. คลายซิปไฟล์ แล้วนำไปวางใน Document Root (เว็บเซิร์ฟเวอร์แต่ละตัวจะไม่เหมือนกัน) 3. ทดลองเข้าใช้งานผ่านหน้าเว็บ http://localhost/ชื่อโฟลเดอร์ของเรา 4. อ่านคู่มือการใช้งานได้ที่ http://localhost/ชื่อโฟลเดอร์ของเรา/user_guide     Model - http://www.codeigniter.com/user_guide/general/models.html     View - http://www.codeigniter.com/user_guide/general/views.html     Controller - http://www.codeigniter.com/user_guide/general/controllers.html ที่เหลือก็คือลองอ่านและทำความเข้าใจกับส่วนอื่นๆ ในคู่มือ เช่น Database Reference Helpers   Input Class   URI Class   Session Library  

Daily Report ตอนที่ 4 : ออกแบบฐานข้อมูล PostgreSQL [4/4]

คอร์สระบบบันทึกการปฏิบัติงานประจำวันออกแบบฐานข้อมูล 4/4 : สร้างฐานข้อมูล ตารางต่างๆด้วย  phpPgAdmin ติดตามคอร์สได้ที่ : ระบบบันทึกการปฏิบัติงานประจำวัน ด้วย PHP + CodeIgniter Framework

ติดตั้ง PHP 7.0 แล้วใช้ phpMyAdmin เวอร์ชั่นล่าสุดไม่ได้ ขึ้นข้อความเตือน The mbstring extension is missing

 เครื่องที่ใช้ Ubuntu 14.04, PHP 7.0.3, MySQL 5.5 UBUNTU แก้ด้วยการติดตั้ง mbstring เพิ่มเข้าไป sudo apt-get install php7.0-mbstringsudo service apache2 restart หากติดตั้งแล้วปรากฏข้อความใน Terminal ว่าไม่พบแพ็กเกจ ให้ติดตั้ง repository เพิ่มเข้าไป sudo add-apt-repository ppa:ondrej/php sudo apt-get install -y language-pack-en-base sudo LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php หลังจากนั้นก็อัพเดตแพ็กเกจ sudo apt-get update แล้วก็ติดตั้ง mbstring อีกครั้ง sudo apt-get install php7.0-mbstring รีสตาร์ทเซอร์วิสแล้วทดสอบเข้าใช้งาน phpMyAdmin อีกครั้ง sudo service apache2 restart ผลลัพธ์ที่ได้

Daily Report ตอนที่ 3 : ออกแบบฐานข้อมูล PostgreSQL [3/4]

คอร์สระบบบันทึกการปฏิบัติงานประจำวันตอนที่ 3/4 เพิ่มรายชื่อตารางที่จะต้องใช้พร้อมทั้งชื่อฟิลด์ให้ครบ สารบัญ : ระบบบันทึกการปฏิบัติงานประจำวัน ด้วย PHP + CodeIgniter Framework

Daily Report ตอนที่ 2 : ออกแบบฐานข้อมูล PostgreSQL [2/4]

การกำหนดฟิลด์ที่ใช้เก็บข้อมูลต่างๆ ในแต่ละตาราง สร้างฟิลด์ที่จำเป็นต้องใช้ของแต่ละตาราง ตรวจสอบอีกครั้งว่าขาดฟิลด์อะไรบ้าง ทบทวนรายชื่อตารางที่ใช้ ต้องแยกข้อมูล หรือรวมข้อมูลตารางไหนบ้าง สารบัญ : ระบบบันทึกการปฏิบัติงานประจำวัน ด้วย PHP + CodeIgniter Framework

การติดตั้งฐานข้อมูล PostgreSQL และ pgAdmin บน Ubuntu 15.10

การติดตั้งฐานข้อมูล PostgreSQL และโปรแกรมแกรมจัดการฐานข้อมูล pgAdmin 3 เพื่อใช้สร้างฐานข้อมูลบนเครื่องตัวเอง ในระบบปฏิบัติการ Ubuntu 15.10

JavaScript Template Engine : ลดภาระฝั่งเซิร์ฟเวอร์ โดยการใช้ จาวาสคริปต์แสดงผลแทน

หลังจากที่ใช้ CodeIgniter ก็เกิดชื่นชอบใน " Template Parser Class " ก็เลยทดลองใช้งาน แล้วก็พบว่า PHP + Array เป็นอะไรที่เข้ากันจริงๆ และช่วงนั้นก็อยากจะเขียนสคริปต์ที่ลดภาระของเซิร์ฟเวอร์ให้เบาลงบ้าง โดยอาศัยหลักการใช้ JavaScript ช่วยแสดงผลแทนคำสั่งของ PHP ซึ่งตอนนี้ก็มีจะมี AngularJS ที่ตอบโจทย์ข้อนี้อย่างมาก เพียงแต่ว่าผมไม่ได้ต้องการความสามารถทั้งหมดแค่ต้องการแค่ส่วนของ Template เท่านั้น ก็เลยเขียนมันขึ้นมาเองแบบบ้านๆซะเลย ^O^  

ติดตั้ง PostgreSQL และ phpPgAdmin เพื่อใช้งานฐานข้อมูล

คำที่ใช้ค้นหาวิธีติดตั้ง PostgreSQL บนเว็บ Koding.com คือ "koding.com install postgresql" จะพบกับลิงค์ไปยังหน้าเพจ http://www.koding.com/docs/installing-postgresql (ซึ่งลิงค์อาจจะมีการเปลี่ยนแปลงได้) สำหรับ phpPgAdmin จะเป็นระบบที่เขียนขึ้นมาเพื่อจัดการฐานข้อมูลทำงานคล้ายกับ phpMyAdmin ที่เราใช้งานกับ MySQL เข้าไปดาวน์โหลดได้ที่ http://phppgadmin.sourceforge.net/doku.php?id=download ให้ดาวน์โหลดเป็นนามสกุลหรือส่วนขยายเป็น .zip เพื่อใช้กับ Koding.Com

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

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

แจกโค้ด PHP : รวมลิงค์ แจกฟรี!! ตัวอย่างโปรเจ็กต์ ที่พัฒนาด้วย PHP

       สำหรับหลายท่านที่ขอโค้ดเข้ามาทาง Inbox ของเฟซบุ๊กแฟนเพจ หรือถามถึงระบบต่างๆหลังไมค์มานั้น ส่วนใหญ่ก็มีแจกอยู่แล้วในเว็บบอร์ด ThaiCreate.Com นะครับ  และด้านล่างนี้ก็เป็น Source Code PHP ระบบต่างๆ ที่มีเหล่าผู้ใจดีแจกฟรี!! ให้นำไปลองใช้ลองศึกษากันครับ แจกฟรี  !! ตัวอย่างการ  PHP  Booking # จองห้องประชุม  ผ่านเว็บครับ http://www.thaicreate.com/php/forum/090558.html ระบบแบบสอบถาม https://www.thaicreate.com/php/forum/099342.html แจก code!! การทำประเมินออนไลน์มี ไว้สำหรับพัฒนาต่อยอด https://www.thaicreate.com/php/forum/102203.html แจกฟรี PHP CodeIgniter CMS ให้ทุกท่านได้ลอง (รองรับ Responsive) http://www.thaicreate.com/php/forum/122929.html โดย : https://www.cszcms.com/ แจก PHP : ระบบยืม-คืนเอกสาร (จากตัวอย่าง เอกสารข้อมูลวัตถุดิบสินค้า) http://www.thaicreate.com/php/forum/103428.html แจกระบบ PHP Shopping Cart ระบบตะกร้าสินค้า ระบบสั่งซื้อ มีระบบตัดสต๊อก, สั่งซื้อวัตถุดิบคงเหลือ ht...

ระบบบันทึกการปฏิบัติงานประจำวัน ด้วย PHP + CodeIgniter Framework

สิ่งที่จะได้เรียนรู้ 1. การใช้งาน CodeIgniter Framework การสร้าง Model, View, Controller การสร้างตัวแบ่งหน้าด้วย Pagination ที่มีให้แล้ว การสร้าง Method/Function เพื่อลดความซ้ำซ้อนของโค้ด  2. การออกแบบฐานข้อมูล หลักการ Normalization หรือ การแยกข้อมูลในกระดาษ ให้มีโครงสร้างเป็นระเบียบอยู่ในฐานข้อมูล เพื่อลดความซ้ำซ้อนของข้อมูล (ข้อมูลซ้ำกันมากๆอย่างไม่จำเป็นขนาดก็ใหญ่ตามไปด้วย) การสร้างฐานข้อมูลด้วย PostgreSQL และจัดการข้อมูลด้วย PgAdmin 3 การเชื่อมโยงตารางที่เกี่ยวข้องกันด้วยคำสั่ง JOIN เพื่อแสดงชื่อหรือข้อมูลต่างๆของหลายๆตารางมาแสดงผลรวมกัน 3. การพิมพ์รายงานในรูปแบบ PDF  การเรียกใช้ Libraries จากที่อื่นเข้ามาใน CodeIgniter การใช้งาน TCPDF สร้างเอกสาร PDF จาก HTML 4. อื่นๆ การใช้งาน jQuery การใช้งาน Bootstrap การเขียน JavaScript แบบ OOP

จัดระเบียบโค้ด ใน Notepad++ (Auto indentation plugin)

เวลาเขียนโค้ด แล้วไม่ได้จัดรูปแบบ หรือเอาโค้ดจาก Text Editor หนึ่งมาใช้ในอีกตัวหนึ่งก็มีโอกาสที่ Tab หรือ Space bar จะต่างกัน แล้วเราจะมานั่ง TAB เองก็คงไม่ไหว จึงจำเป็นต้องหา Plugin เข้ามาช่วย ลองค้นดูก็เจอกับกระทู้นี้ >> แม้หน้าตาจะไม่ตรงกันแต่หลักๆก็คือเพิ่ม Plugins เข้าไปชื่อ Indent By fold อ่านเต็มๆได้ที่นี่ https://softwarerecs.stackexchange.com/questions/1496/auto-indentation-plugin-for-notepad

MySQL คำสั่ง SQL จัดเรียงคำตามตัวอักษร ภาษาไทย ในฟิลด์ที่กำหนด Collation เป็น utf-8

การจัดเรียงข้อมูลตามลำดับตัวอักษรไทย   CONVERT( name USING tis620 ) ASC การเรียงลำดับตัวอักษรแบบ tis-620 ในการเขียนโปรแกรม PHP เพื่อแสดงข้อมูลจากฐานข้อมูล MySQL การเขียนคำสั่ง SQL ให้จัดเรียงลำดับนั้น เราจะใช้ ORDER BY  และกำหนดฟิลด์ที่ต้องการจัดเรียงลำดับ เช่น ในตัวอย่างนี้จะเป็นการจัดเรียงตามลำดับตัวอักษรของชื่อเมนู นั่นก็คือฟิลด์ name นั่นเอง แต่ในขั้นตอนการสร้างฐานข้อมูลนั้น เราได้กำหนด Charset ของตารางและฟิลด์เป็นการจัดเรียง Collation แบบ utf-8 เอาไว้เพื่อให้รองรับภาษาแบบมาตรฐาน ดังนั้นเมื่อเขียนโปรแกรมสั่ง ORDER BY name ASC ก็จะมีการจัดเรียงที่จะให้คำที่มีสระนำหน้าอยู่หลัง ฮ. นกฮุก ไปเสียหมด จะเห็นว่าชื่อเมนูหรือสินค้าที่มี ข นำหน้าจะมาเป็นลำดับแรก ทั้งที่จริงๆแล้ว มีสินค้าที่เป็น ก อยู่หลายรายการ เพียงแต่ว่ามีสระนำหน้าอยู่เท่านั้นเอง จากรูปด้านบน จะมีรายการที่เป็น ก อยู่ 3 รายการ คือเมนู โกโก้ ต่างๆ แต่เพราะมีสระโอ นำหน้า จึงทำให้การจัดเรียงแบบ utf-8 ให้อยู่ในลำดับท้าย เพื่อแก้ไขปัญหานี้ การเขียนโปรแกรมเพื่อ ORDER BY จะต้...

PHP เบื้องต้น | รวมวิดีโอสอนเขียนโปรแกรม PHP & MySQL

1. พื้นฐาน PHP     1.1  โครงสร้างการเขียน PHP ร่วมกับ HTML     1 .2  Selection Structure : การเขียนโปรแกรมแบบทางเลือก     1. 3  ตัวแปร (Variable) และ ค่าคงที่ (Constant)     1.4  ตัวดำเนินการ (Operator)     1.5  เครื่องหมาย Single Quote / Double Quote และ Escape Sequence     1.6  Repetition Structure (การเขียนโปรแกรมวนซ้ำ)          1.7  การแทรกโค้ PHP ส่วนต่างๆของ HTML     1.8  PHP Function 2. PHP MySQLi CRUD : การจัดการฐานข้อมูล MySQL เบื้องต้น      2.1 : การบันทึกข้อมูลด้วย MySQLi Function      2.2 การค้นหาและแสดงข้อมูลในรูปแบบตาราง 1/2     2.3  การค้นหาและแสดงข้อมูลในรูปแบบตาราง 2/2      2. 4 การแก้ไขข้อมูลด้วยคำสั่ง UPDATE     2. 5 การลบข้อมูลจากฐานข้อมูล     2. 6 การป้องกัน SQL Injection ด้วยการใช้ prepare และ bindparam           2.7 กา...

PHP + Fullcalendar กับ MySQL

หลักการทำงาน เรียกข้อมูลจากตาราง tb_event ด้วยฟังก์ชั่นของ MySQLi ข้อมูลจากฐานข้อมูลจะถูกวนลูปเก็บไว้ใน $data และจะถูกส่งไปที่ Fullcalendar ด้วยการแปลงข้อมูลจาก PHP ให้อยู่ในรูปแบบ JSON อาร์เรย์ด้วยฟังก์ชั่น json_encode()

PHP CI MANIA : ตอนที่ 16 วิธีสร้างเว็บเพจที่มีแบบฟอร์มคำนวณผลรวมอัตโนมัติ เมื่อป้อนข้อมูลในช่อง INPUT

การคำนวณผลรวม เมื่อเปลี่ยนแปลงตัวเลขใน Textbox หากเขียนโค้ดเองก็เพียงไม่กี่บรรทัด แต่ถ้าหากใช้ PHP CI MANIA เราสามารถเพิ่มการตั้งค่าได้ดังนี้ 1. ในแท็ป " ตั้งค่า " เลื่อนไปส่วนที่ 5 ด้านล่างสุด " ข้อมูลตารางรายการ ( Detail ) " 2. เพิ่ม INPUT สำหรับแสดงราคารวม โดยคลิกที่ปุ่มสีเขียว ในตัวอย่างนี้จะสร้างไว้ต่อจาก ฟิลด์ ราคา  โดยกำหนดค่าในช่องคอลัมน์ Name เป็น total_price=>ราคารวม สังเกตุว่าจะมี => คั่นกลาง        ด้านซ้าย total_price ใช้เป็นไอดีอ้างอิงเพื่อนำราคารวมไปแสดงผล        ด้านขวา ราคารวม ใช้เป็นป้ายชื่อหน้าช่องแสดงผลรวม 3. กำหนด Action ให้กับฟิลด์ที่เมื่อเปลี่ยนค่าแล้วจะให้คำนวณผลรวมอัตโนมัติ ในที่นี้คือ ฟิลด์จำนวน 4. กำหนดค่าต่างๆให้กับ Action ของฟิลด์ที่เลือก     4.1  กำหนด Events จะเลือก onkeyup เพื่อจับเหตุการณ์เมื่อพิมพ์ตัวเลขระบุจำนวนสั่งซื้อ ให้คำนวณค่าราคารวมทันที     4.2  INPUT 1  ให้ระบุฟิลด์ที่ใช้ในการคำนวณตัวที่ 1 ที่นี้คือ ฟิลด์จำ...

PHP ระบบบริหารจัดการ พล็อตนิยาย - ตอนที่ 1

PHP Fiction Management System   โปรเจ็กต์นี้จะสร้างเป็น "ระบบบริหารจัดการพล็อตนิยาย" แบบง่ายๆ มาเล่าสู่กันฟังครับ มีอยู่ช่วงหนึ่งที่ผมสนใจการเขียนนิยาย และค้นหาข้อมูลเพิ่มเติมเกี่ยวกับการเขียนนิยาย และได้พบกับโปรแกรมหนึ่งที่ช่วยงานด้านการเขียนนิยายให้เป็นเรื่องที่ง่ายขึ้น แต่จากที่ได้อ่านรีวิวแล้วดูเหมือนว่า โปรแกรมช่วยเขียนนิยายนี้ ไม่จะไม่ค่อยรองรับภาษาไทย แต่ผมก็ยังไม่ได้ลองมาดาวน์โหลดมาลองใช้งานดูนะครับ แต่รู้สึกชอบเครื่องมือนี้ เลยอยากลองพัฒนาโดยถอดคุณสมบัติพื้นฐานมาใช้งานดู ว่าจะใช้กับงานเขียนนิยายได้จริงรึเปล่า ตัวอย่างระบบจัดการพล็อตเรื่อง เพื่อช่วยงานเขียนนิยาย หลังจากที่ได้นั่งคิดนอนคิด และหลับไปฝันไป จนในที่สุดก็ได้ฐานข้อมูลระบบบริหารจัดการพล็อตนิยายมาคร่าวๆ มาจนได้ โครงสร้างฐานข้อมูลตอนนี้อาจจะขี้เหร่ไปบ้าง แต่ในอนาคตก็คงจะพัฒนากันต่อไป   ตารางที่จะต้องสร้าง มีทั้งหมด ดังนี้ 1. รายชื่อนิยายทั้งหมด 2. แนวนิยายที่เขียน 3. พล็อตของแต่ละเรื่อง 4. ฉากเหตุการณ์ในแต่ละพล็อต 5. เนื้อเรื่องในแต่ละฉาก 6. รายชื่อตัวละครในนิยา...

PHP CI MANIA สร้างฟังก์ชั่นค้นหาข้อมูลจากตารางอื่น และทำการตรวจสอบเพื่อแสดงสถานะในรูปแบบปุ่มสีต่างๆ

เขียนโปรแกรมเว็บแอพพลิเคชั่นด้วยภาษา PHP ตรวจสอบชื่อตัวแปรที่ใช้ใน list_view.php ตัวอย่างนี้คือ {status} สร้างตัวแปรอาร์เรย์รับค่าจากฟังก์ชั่น $this->getStatus() ที่ไปค้นหาข้อมูลจากตารางอื่น            private function setDataListFormat ($lists_data, $start_row=0) { $data = $lists_data; $count = count($lists_data); for($i=0;$i<$count;$i++){ $start_row++; $data[$i]['record_number'] = $start_row; $pk1 = $data[$i]['id']; $data[$i]['url_encrypt_id'] = urlencode(encrypt($pk1)); if($pk1 != ''){ $pk1 = encrypt($pk1); } $data[$i]['encrypt_id'] = $pk1; $data[$i]['preview_ref_province_id'] = $this->setRefProvinceIdSubject($data[$i]['ref_province_id']); $data[$i]['preview_ref_amphur_id'] = $this->setRefAmphurIdSubject($data[$i]['ref_amphur_id']); $data[$i]['preview_ref_district_id'] = $this->setRefDistrictIdSubject($data[$i]['ref_district_id...

วิธีตั้งเวลา Backup MySQL อัตโนมัติ เพื่อสำรองข้อมูลไว้ใช้เมื่อต้องการเรียกคืนภายหลัง

ทดสอบแล้วใช้ได้ แต่ใช้จริงต้องปรับตำแหน่งเรียก mysqldump ที่ต่างกัน OS : Windows Server เช่นถ้าใช้ wamp เป็นตัวติดตั้งก็จะอยู่ที่ C:\wamp \bin\mysql\mysql5.5.24\bin\mysqldump ถ้าติดตั้ง MySQL เพียวๆ ก็คงต้องหาตำแหน่งที่ถูกต้องของเซิร์ฟเวอร์แต่ละเวอร์ชั่น เช่น C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump การจะกำหนดเวลาแบ็กอัพนั้น Schedule ของ Windows Server ให้เรียกไฟล์ xxxxx.bat เพื่อทำงานตามเวลาที่กำหนด  (หากใช้ลีนุกซ์ก็คงจะใช้ cronjob และจะสะดวกกว่าหากจัดการด้วย webmin ) @echo off echo Running dump... set MYDATABASE=xxxxxxx set MYSQLUSER=root set MYSQLPASS=xxxxxxx set BACKUPFILE="F:\Backup\MySQL\%MYDATABASE%_%date:~10,4%-%date:~4,2%-%date:~7,2%_TIME.%time:~0,2%.%time:~3,2%.sql" C:\wamp\bin\mysql\mysql5.5.24\bin\mysqldump -u%MYSQLUSER% -p%MYSQLPASS% --result-file=%BACKUPFILE% %MYDATABASE% echo Done! %BACKUPFILE% หลังจากทดสอบแบ็กอัพฐานข้อมูลขนาด 1GB ใช้เวลาประมาณแค่ 1 นาทีเท่านั้น ส่วนผลข้างเคียงหรือปัญหาอื่นๆยังไม่ทราบ เพราะเป็นการทำงนผ่าน mysqldump ก็ไ...

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