วันพฤหัสบดีที่ 20 พฤศจิกายน พ.ศ. 2557

GIT : เริ่มใช้งาน git

ประสบการณที่ผ่านมา เมื่อมีนักพัฒนาระบบหลายคน ทำงานโครงการเดียวกัน มักมีปัญหาการ update source code ทับกันบ้าง code ไม่ update บ้าง นำ code เก่ามาแก้ไขบ้าง ทำให้ตอนนี้กำลังศึกษา git เพื่อใช้งานกับโครงการที่มีอยู่ อย่างจริงจัง

หากต้องการใช้ git ร่วมกันหลายคน ควรรอ่านบทความนี้ จะสามารถทำให้เข้าใจ workflow ได้เป็นอย่างดี



การใช้ Tools git client ช่วยในการทำงาน นั้นมีแนะนำ source tree ซึ่งลองเล่นแล้ว ไม่อยากครับ


อีก 1 แหล่งข้อมูลที่น่าสนใจ ที่ให้ความรู้เรื่อง git คือ



วันอาทิตย์ที่ 21 กันยายน พ.ศ. 2557

arowana : การเลี่ยงปลามังกร

การเลี่ยงปลามังกร

50 คำถามเบื่องต้นยอดฮิต สำหรับมือใหม่ !!!
http://www.arowanastation.com/main.php?url=view&room=2&id=138

เลี้ยงด้วยกุ้ง
http://www.aro4u.com/forums/index.php?showtopic=2604

ปลามังกรตามหลักมาตรฐาน
http://board.postjung.com/638222.html

วันพฤหัสบดีที่ 18 กันยายน พ.ศ. 2557

PHP : การตรวจสอบค่า null ด้วยการเขียนภาษา php

เมื่อเราเขียนโปรแกรมที่มีคำนวณ บวก ลบ คูณ หาร มักจะมีปัญหากับการคำนวณ เช่น ตัวหาร ห้ามเป็น 0 ห้ามเป็นค่าว่าง ห้ามเป็น null ซึ่งมีปัญหามาก และบางครั้งตรวจสอบได้ยาก ดังนั้นในการเขียน code จะต้องเขียน code ป้องกันไว้ทุกครั้ง จึงขอยกตัวอย่างการเขียน code ตรวจสอบค่า null ซึ่งมีหลายวิธี แตกต่างกันตรงที่ แต่ละวิธีได้ ผลลัพธ์เหมือนกันแต่ความเร็วในการประมวลผลต่างกัน




http://php.net/manual/en/function.is-null.php

วันอังคารที่ 16 กันยายน พ.ศ. 2557

Android : Android Tools Project Site

เจอเครื่องมือ แสดงการ link หน้าจอ ของแต่ละหน้า เพื่อให้เห็นภาพรวมของ Apps มีประโยชน์มากครับสำหรับทำ Prototype เพื่อนำเสนอลูกค้า

http://tools.android.com/navigation-editor

วันเสาร์ที่ 6 กันยายน พ.ศ. 2557

Mobile : เครื่องมือสำหรับออกแบบการพัฒนาแอพพลิเคชันบน Mobile

หาข้อมูลเครื่องมือเพื่อออกแบบการพัฒนาแอพพลิเคชันบน Mobile ไปเจอบทความนี้ เลยเอามาเป็นข้อมูล สามารถช่วยออกแบบได้ทั้ง IOS และ Android

แหล่งข้อมูล
http://www.daydev.com/2011/mobile-app-wireframing-tools.html

วันอาทิตย์ที่ 17 สิงหาคม พ.ศ. 2557

Laravel : การใช้งาน Validation

การใช้งาน Validation เพื่อตรวจสอบข้อมูลก่อนที่จะ insert ลง database ว่าถูกต้องตามที่ต้องการหรือไม่ และป้องกันการผิดพลาดของข้อมูล ซึ่ง Laravel มี Input Validation ที่คอยช่วยให้เขียน code ได้ง่ายขึ้น จะต้องแก้ไข ส่วนของ Model, Controller และ View แต่ขอยกตัวอย่าง การเขียน code Input Validation ใน model ตามนี้
public static function validate($input)
{
$rules = array(
'input_mems_email'=>'Required|email|unique:mems,mems_email|Between:3,100',
'input_mems_fname'=>'Required|Between:1,200',
'input_mems_lname'=>'Required|Between:1,200',
'input_mems_passwd'=>'Required|AlphaNum|Min:4|Confirmed',
'input_mems_passwd_confirmation'=>'Required|AlphaNum|Min:4'
);
  return Validator::make($input,$rules);
}

สามารถอ่านการใช้งานเพิ่มเติมได้ที่
http://laravelbook.com/laravel-input-validation/
http://daylerees.com/codebright/validation

Laravel : การแสดงข้อมูล id ล่าสุด ที่เป็น primary key ของ table มาใช้งาน

หลังจากที่ save หรือ สร้าง ข้อมูลใน table และมีการใช้งาน auto-incrementing IDs แล้ว เราสามารถแสดงข้อมูล ID ที่เราได้ insert ไปล่าสุด ได้โดย เพิ่ม code ใน Controller ดังนี้

$insertedId = $user->id;

Laravel : การ insert date field ลง table

หากต้องการ insert date field ตาม format date ที่ต้องการ ลง  table ที่มี data type เป็น date time หรือ timestamp สามารถทำได้ดังนี้

public function postRegister()
{
$mem = new  Mem;
$mem->mems_username = Input::get('mems_email');
$mem->mems_email = Input::get('mems_email');
$mem->mems_passwd = Hash::make(Input::get('mems_passwd'));
$mem->mems_fname = Input::get('mems_fname');
$mem->mems_lname = Input::get('mems_lname');
$mem->mems_created_by = '1';
$mem->mems_created_at = date("Y-m-d H:i:s");
$mem->mems_updated_by = '1';
$mem->mems_updated_at = date("Y-m-d H:i:s");
$mem->save();
return Redirect::route('account.getRegister');
}


Laravel : วิธี remove the updated_at and created_at columns from the table

ปกติ แล้ว Eloquent ORM ของ  Laravel จะสร้าง field updated_at และ created_at ให้กับ table ผ่าน Model โดยอัตโนมัติ ซึ่งบางครั้งการออกแบบ table ต้องการเปลี่ยนชื่อ field ซึ่งมีวิธีที่สามารถเอา field updated_at และ created_at ออกจาก Table โดย

// app/models/User.php
class User extends Eloquent
{
    public $timestamps = false;
}

ที่มา
http://daylerees.com/codebright/eloquent

วันอังคารที่ 12 สิงหาคม พ.ศ. 2557

Laravel : การสร้าง database บน mysql ผ่าน laravel migrations

เมื่อต้องการสร้าง database บน mysql ผ่าน laravel migrations จะต้องสร้างไฟล์ที่มีคำสั่งสร้าง table ไว้ใน folder /database/migrations/ เช่น ไฟล์ชื่อ 2014_08_12_223400_create_mems_table.php

โดยสามารถ run ด้วยคำสั่ง จะเป็นการ run การทำ  migrations ทุกไฟล์ เช่น
$ php artisan migrate

หรือ หากมีการเปลี่ยนแปลง บางไฟล์ ให้ใช้ คำสั่ง migrate:make เช่น
$ php artisan migrate:make 2014_08_12_223400_create_mems_table.php








อ่านข้อมูลเพิ่มเติมได้ที่ http://laravel.com/docs/migrations และ http://laravelbook.com/laravel-migrations-managing-databases/

Laravel : การ Setting Environment Configuration

บทความแนะนำในการตั้งค่า Environment ของ Laravel ซึ่งสามารถทำให้ Laravel ตั้งค่า Environment ได้หลายแบบ เช่น development, staging, production เป็นต้น เพื่อให้สามารถประยุกต์ใช้งานในสถานการณ์ที่แตกต่างกัน โดย default แล้ว Laravel จะมี Environment เป็น production หากต้องการเปลี่ยนแปลงสามารถดูได้ตาม link


หรืออ่าน doc ของ Laravel

วันอาทิตย์ที่ 10 สิงหาคม พ.ศ. 2557

Laravel php framework ที่น่าสนใจ

หลังจากที่หา php Laravel php framework มาใช้งานในบริษัท  ไปเจอข้อมูลจากเว็บไซต์ sitepoint.com
และอ่าน blog review ของไทยหลายเห่ง จึงเลือก Laravel เพื่อศึกษาและลองเปลี่ยนการพัฒนา php ไปสู่ framework อย่างเต็มรูปแบบ

บทความที่สอน Laravel แบบพื้นฐาน
จาก thaicreate.com สอน Laravel แบบพื้นฐาน

จาก http://laraveltut.com/ สอน Laravel แบบพื้นฐาน ถึงปานกลาง
สอน Laravel  ด้วยวีดีโอ แบบเจาะลึก

ที่มา

การเพิ่มไฟล์ pdf เข้าไปในหน้า pdf ที่สร้างด้วย fpdf


การเพิ่มไฟล์ pdf เข้าไปในหน้า pdf ที่สร้างด้วย fpdf หาข้อมูลในเว็บไซต์ เจอ fpdi เป็นตัวช่วยในการแก้ปัญหาได้ ตัวอย่างตาม link

http://www.setasign.com/products/fpdi/about/
http://stackoverflow.com/questions/12510117/using-fpdf-to-modify-existing-pdf-in-php
http://stackoverflow.com/questions/10721497/edit-existing-pdf-multiple-page-file-using-fpdf-pdfi
http://programmingbulls.com/manipulating-pdf-files-php-using-fpdf