Showing posts with label it. Show all posts

โหลดฟอต์นใน Google Fonts ดึงมาใช้ในเว็บไซต์ฟรีๆไม่ต้องกลัวละเมิดลิขสิทธิ์


ไม่ค่อยว่างนะครับ แต่ก็อยากบันทึกบทความเวลาทำงานแล้วเจออะไรเด็ดๆ ก็ไม่ลืมจะนำมาฝากพี่ๆน้องๆกันอีกเช่นเคยครับ เพื่อจะได้ต่อยอดไอเดียแนวคิดการออกแบบเว็บไซต์ ผมกำลังออกแบบเว็บโปรแกรมโดยใช้ Google Apps Script นะครับ โดยใช้ Blogger เป็น hostting (ใครจะรู้บ้างว่า hostting ที่ดีที่สุดอยู่ตรงนี้แล้ว อิอิ)  ถ้ามีโอกาสจะมาแนะนำวิธีใช้ Blogger เป็นเว็บโฮสติ้งกันต่อๆไปนะครับ

กำลังเล็งหาฟอต์นดีๆ สวยๆ ฟรีๆ ไม่ต้องกลัวละเมิดลิขสิทธิ์ ก็เลยถามพี่Goo ก็ได้ความล่ะ พี่เขาให้ฟรีอีกเช่นเคย (นึกหวั่นๆเหมือนกันว่าพี่Gooนิจะครองโลกอะเป่าในอนาคต แต่นึกๆไปหวั่นไปก็เท่านั้นใช้ฟรีมาหลายปีล่ะไม่เห็นพี่เขาว่ากระไรอะนะ)

ใครที่ต้องการแบบผมก็ลุยเลยครับ
1. เข้าเว็บ นี้เลย (คลิก) เว็บ fonts.google.com แล้วเลือกภาษาไทย




 2. จะมีรายการฟอต์นภาษาไทยฟรีๆ ให้เยอะนะ เลือกตามต้องการเลย เมื่อเห็นแล้วว่าฟอต์นนี้เราถูกใจ วิธีการดึงสคริปมาแปะใช้ในเว็บเราก็ง่ายๆแสนง่าย พี่Goo เขาเจนสคริปมาให้แล้วแค่เราคลิกที่เครื่องหมาย + ตรงฟอต์นที่เราต้องการเท่านั้นครับ


3. แล้วมองด้านล่างหน้าจอคลิกที่ Family Selected จะฝุดหน้าจอขึ้นมาดังภาพด้านล่างครับ 

4. ดำเนินการคัดลอกสคริปที่หน้าจอนำไปใช้งานดีไซน์เว็บไซต์ได้เลยตามสบายครับพี่น้องครับ เช่นผม ก็นำมาใช้ใน google apps script ดังรูปด้านล่างครับ




หลังจากได้เว็บสวยๆแล้วก็อย่าลืมมาอวดกันหน่อยนะครับ หวังเป็นอย่างยิ่งว่าหลายๆท่านจะได้แนวทางนำไปพัฒนาต่อยอดความรู้ ความคิด ไอเดีย ตลอดจนพัฒนางานด้านต่างๆกันต่อๆไปนะครับ  

จบแล้วครับ อย่าลืมส่งกำลังใจให้ผมด้วย โดยการโพสต์ทักทายกันบ้างครับผม

โชคดีคร๊าฟ..พี่น้องคร๊าฟ..






การ Resize รูปภาพบน Google Drive โดยใช้ Google Script

clip_image001

        ก่อนอื่นต้องกราบสวัสดีเพื่อนๆ พี่ๆ น้องๆ ที่เข้ามาอ่านบทความนี้นะครับ พยายามหาเวลาและโอกาสเข้ามาแนะนำการเขียนบทความเกี่ยวกับ Google script เพื่อเป็นแนวทางการพัฒนาต่อยอดทางโปรแกรม ซึ่งผมเป็นสาวกพวกชอบของฟรี และพี่Goo ก็ดันใจดีซะมากมายก่ายกอง ต้องขอบพระคุณพี่ Goo อย่างมากๆเลยนะครับ ที่ทำให้ชาวโลกได้เห็นว่าของฟรีเขาก็มีในโลกนะจ๊ะ

         มาเข้าเรื่องเลยนะครับ ต้องติดตามบทความอื่นๆที่เขียนผ่านมาเพื่อเป็นพื้นฐานการเขียน Google Script ผมจะพยายามแนะนำวิธีการทำตั้งแต่พื้นฐานให้เข้าใจได้ง่ายที่สุดนะครับ

         กรณีนี้หากเราต้องการบังคับ หรืออัพโหลดรูปเก็บไว้ใน Google Drive โดยจะอยากให้รูปภาพได้ตามขนาดตามที่ตนเองต้องการ เรียกว่า Resize image ประมาณนั้นสมมุติว่าผมอัพภาพขึ้นไปบน Google Drive แล้วต้องการเขียนโปรแกรมเพื่อลดขนาดของภาพที่ผมอัพ โดยใช้ Google script จะต้องทำตามขั้นตอนดังนี้ครับ

1) เข้าสู่ระบบ  Google     

image

2) กดที่ปุ่ม เก้าจุดมหัศจรรย์   

image

3) เลือก Google Drive    แล้วเข้าไป Folder ที่ต้องการสร้าง โปรแกรม Resize รู้ปภาพซึ่งเป็นโฟลเดอร์เดียวกับภาพที่เราอัพโหลดมาเก็บไว้เพื่อต้องการลดขนาด  เริ่มจากตามภาพ คือ ตอนนี้เราอยู่ที่ Google Drive อย่าลืมนะครับ คลิกที่ New  เลือก Folder แล้วสร้างชื่อโฟลเดอร์ ในที่นี้ ผมตั้งชื่อว่า Resize Image by GoogleScript -2018

image

4) คลิกที่ New   (ต้องอยู่ที่โฟลเดอร์ที่สร้างใหม่นะครับ) คลิกเลือก Google Script

image

5) ดำเนินการตั้งชื่อโปรแกรม หรือชื่อไฟล์   


image

6) กลับมาที่โฟลเดอร์ Google Drive   เรา ให้เราดำเนินการสร้างไฟล์ Google Docs เพื่อใช้ Application นี้ จัดการ Risize ให้ดำเนินการตามรูปภาพด้านล่างนี้ คือ คลิก New แล้วเลือก Google Docs จะได้ไฟล์ใหม่ดังภาพถัดมา

imageimage

อย่าลืม Copy id key ของไฟล์นี้ไปใช้งานด้วยครับ

image

7) จากนั้น ให้สลับมาที่ตัวสคริป เริ่ม เขียนโปรแกรมดังนี้ครับ  

function ResizeImage2018() {
 
   // กำหนดการเปิดใช้งาน google Docs โดยก็อปปี้ idKey จากไฟล์ Google Docs ของเรา
      var doc1 = DocumentApp.openById(" ????  ");
   // ดึง Id Key ของไฟล์รูปภาพที่เราอัพโหลดไปไว้ในโฟลเดอร์
      var image1  = "
https://drive.google.com/uc?export=view&id=?????"; 
   // สร้างตัวแปรเก็บไฟล์รูปภาพในรูปแบบของ blob
      var blob    = UrlFetchApp.fetch(image1).getBlob() ;
   // ตั้งค่าโฟลเดอร์ไว้สำหรับรองรับจัดเก็บไฟล์ใหม่ที่เราต้องการสร้าง 
      var folder = DriveApp.getFolderById("???????");

  // ทำการเช็คด้วยว่าในไฟล์มีภาพกี่ภาพ แล้วเราจะแทรกภาพไว้ภาพต่อจากสุดท้าย
      var lenImage = doc1.getBody().getImages().length;
   // ทำการแทรกภาพไปที่ตำแหน่ง 0 ของไฟล์ Google Docs และทำการ Resize ให้ได้ขนาดภาพตามที่เราต้องการ
      var insertImage =  insertImage = doc1.getBody().insertImage(lenImage,blob).setWidth("300").setHeight("300");
  
   // เมื่อดำเนินการแทรกภาพแล้ว รูปภาพที่เราอัพก็จะไปอยู่ที่ไฟล์ Google docs เรา สามารถเปิดดูได้
      lenImage = doc1.getBody().getImages().length-1 ; //เก็บค่าลำดับภาพที่สุดท้าย
   var imageResize = doc1.getBody().getImages()[lenImage]; // จากนั้น เรา ก็สร้างตัวแปร เก็บรูปภาพสุดท้าย
  
// ทำการสร้างภาพที่ดำเนินการ Resize ใหม่แล้วเป็นไฟล์ใหม่ ในโฟลเดอร์ที่เราเตรียมไว้
// สร้างเป็นไฟล์นามสกุลใดก็ได้ ตามฟังชั่น MimeType. (gif png jpg อื่นๆ )
// และสร้างชื่อไฟล์ตามด้วยชื่อเก่า
var name = "NewImage_"+blob.getName(); //ตามด้วยชื่อเก่าของไฟล์รูปภาพครับ
       var NewImage  =  folder.createFile(imageResize.getBlob().getAs(MimeType.JPEG)).setName(name) ;
  
   // จบ เราจะได้ไฟล์ที่ชื่อตามที่เราต้องการในโฟลเดอร์
}


Copy โค้ดด้านบน แล้ว วางบนพื้นที่  Script  จากนั้น    นำ ID Key ของไฟล์ Google Docs  ของไฟล์รูปภาพ  และโฟลเดอร์ วางแทน เครื่อง ?  สีแดง  จากนั้น ก็กดรันที่ปุ่ม สามเหลี่ยมสีดำ ดังภาพด้านล่างนี้ครับ จะเกิดกระบวนการ Autorization เพื่อให้ Acount หรือบัญชีของท่านเปิดการใช้งาน Script นี้

image

ดูที่ภาพด้านล่างครั้งแรกที่ดำเนินการ รันสคริป จะเกิด การไม่สามารถ verified หรือทำการตรวจสอบได้ให้คลิกที่ Advanced เพื่อแสดงว่าท่านคือ ผู้พัฒนาตัวจริง  คลิกที่ ALLOW นะครับ จากนั้น ก็กด รันอีกครั้ง

image

เมื่อกดรันอีกครั้ง สคริปก็จะทำงาน เราก็จะไดไฟล์พร้อมกับขนาดของไฟล์ใหม่ตามที่เราตั้งค่าไว้ครับ ดังภาพ  เป็นการแสดงไฟล์ใหม่ที่สคริปสร้างขึ้นใหม่

image

และสามารถตรวจสอบรูปภาพที่ไฟล์ Google Docs จะมีภาพล่าสุดที่เราทำการ ตามรูปภาพด้านล่างครับผม

image


สุดท้ายหวังว่าบทความนี้จะมีประโยชน์ สามารถนำไปต่อยอดกับท่านได้ในอนาคต  หากจะเป็นการดีก็ส่งคำทักทายสั้นๆเป็นกำลังใจกันมาตรงโพสต์ด้านล่าง
ขอบคุณครับผม มีเวลาจะเขียนบทความอีกนะครับผม






ับ

New Google Site วันนี้ ที่รอคอย รูปแบบ material design

และแล้ววันนี้ก็มาถึง กูลเกิลไซต์รูปแบบใหม่  material design  ซึ่งเป็นรูปแบบที่Google เป็นผู้พัฒนาขึ้นมา หลังจากให้รุ่นน้อง Google Form นำไปก่อน  ส่วนลูกพี่อย่าง Site ก็ตามมาติดๆ 
ผมได้มีโอกาสเข้าไปทดสอบดู ติดใจ รักเลยนะ 

มาทดสอบกันดูดีกว่าว่าของใหม่จะแล่มกว่ายังไง

เข้าเว็บhttps://sites.google.com/new/
เมื่อเข้าสู่ระบบด้วย gmail หรือ อีเมล์ขององค์กรการศึกษา ที่กูลเกิลให้มาใช้ฟรีๆกันก็จะได้ตามภาพนะครับ

ตามภาพคลิกที่ Create แล้วเลือก in new Sites นะครับ จะได้หน้าตาการใช้งานเปลี่ยนไปจากเดิมเยอะเลย ใครที่ไม่ถนัดก็เลือกแบบเดิมๆได้ที่ in classic Sites นะครับ แต่ในทัศนคติผมแล้วชอบ Meterial Dign เอามากๆเลยครับ ว่างๆจะรีวิวเทมเพลตของ Meterial ลงใน Google Script .ให้ดู แต่ใช้ตัวนี้ เขียน Google Script ก็น่าจะ Work เลยครับผม

เมื่อเลือก in new Sites แล้วหน้าตาก็จะได้ตามภาพด้านล่างนะครับผม

เป็นไงบ้างครับ มีตัวนำทางการใช้งานให้ดูคร่าว ถ้าสนใจก็คลิก Next ไป ลองเล่นดูน่าใช้มาเพราะเทมเพลตสไตนี้ เหมาะกับแท็บเล็ตหรือโมบาย มากๆเลยนะครับ

ตามภาพด้านบน มาลองผิดลองถูกดูครับ ก็เวิร์กเลยนะ มีเครื่องมือที่ใช้ง่ายๆ เหมาะมือสะดวกมือ สบายตา เปลี่ยนไปเยอะมากเลยครับ

ตามภาพข้างบน ลองดับเบิลคลิกดูนะครับจะมีวงกลมขึ้นมาให้เราเลือก ใช้ตามตำแหน่งที่เราคลิก พอได้ตามที่เราพอใจแล้วก็ลอง PUBLISH ดูนะครับ 

ข้อดีของ Google Site คือเราสามารถจดเป็น Domain Name เฉพาะตัวได้เลยนะ
ขอให้ทุกท่านใช้ Google Sites ได้อย่างสบายๆ บานฤทัย ไม่ต้องห่วงกับอะไรทั้งนั้น




ขอบคุณที่ติดตามครับผม














วิธีแก้เวลาเปลี่ยนภาษาไทย อังกฤษ ต้องกดปุ่มตัวหนอน สองครั้ง บน Windows10


ในกรณีเวลาสลับภาษาไทย อังกฤษ มันต้องกดปุ่มตัวหนอนหลายครั้ง เสียอารมณ์จริงๆ

เพราะว่ามีการติดตั้งคีบอร์ดภาษา สองคีบอร์ดไว้ด้วยกัน ซึ่ง คีบอร์ดไทย มันมีภาษาอังกฤษมาให้ด้วยแล้ว ดังนั้นจึงต้องไปปลด หรือลบคีบอร์ดอังกฤษออกซะ แต่ว่าปัญหาคือลบออกไม่ได้ เพราะอะไรมาดูกัน



คลิกที่ภาษาตรงมุมด้านขวาล่าง ที่เป็น ENG TH  จะขึ้นตามภาพด้านบน เลือก Language preferences จะได้ดังภาพด้านล่าง   แล้วคลิกที่ English  จะขึ้นดังภาพ สังเกตว่า Remove จะไม่ทำงาน 

วิธีการทำให้ปุ่ม Remove ทำงานคือ คลิกเลือกแป้นพิมพ์ ไทยก่อน แล้วเซ็ตให้เป็น Default ที่ปุ่ม Set Default ครับ จากนั้น ก็สลับมาที่ Enlish แล้วปุ่ม Remove จะทำงานได้ จากนั้น ก็ให้ทำการคลิกที่ Remove แล้วมันก็จะหายไป ให้เลือกไว้ที่ ไทย อย่างเดียวก็พอนะครับผม



หวังว่าจะเป็นประโยชน์สำหรับหลายๆคนที่เข้ามาแวะอ่านจนจบนะครับ....

โชคดีครับผม
...









แจก Script Google Form ที่สามารถอัพโหลดไฟล์ขึ้น Drive ได้

หากท่านใช้ Google Form ทำฟอร์มที่ใช้ในการส่งงาน แต่ไม่สามารถ
อัพโหลดไฟล์ได้ มาแล้วครับ Google Apps Script  สามารถทำ
สิ่งที่เราต้องการนี้ได้ ผมทำไว้แล้ว แค่ท่านนำไปดัดแปลงเล็กๆน้อยๆ
ตาม Scritp ที่แจงไว้ในเนื้อหาของ Script แล้วนะครับ 
ท่านสามารถนำไปใช้งานจริงๆได้เลยนะครับ

มีอยู่ 3 ไฟล์ คือ ไฟล์ ที่เป็น Google apps scritp 
ไฟล์ที่เป็น Google sheet ที่เป็น Response ไฟล์ 
และไฟล์ Sheet ที่สร้างขึ้นมาเพื่อดึงจาก Response มาให้นักเรียนดูอีกที

ลอง Mack Copy ไปทั้งโฟลเดอร์เลยนะครับ จากนั้น ก็เข้าไฟล์
Google Apps script   แล้ว Publish ดูนะครับ




โชคดีครับ อิกๆ..







การปรับแต่ง Widgets บน blogger ให้แสดงเฉพาะหน้าแรก

imageคุณจะสั่งให้ Widgets โชว์แค่หน้าแรกใช่ไหม?


<b:if cond='data:blog.url == data:blog.homepageUrl'>
        โค้ดของ Widgets
</b:if>

ซึ่งความหมายของโค้ดด้านบนนี้ คือ สั่งให้ Widgets แสดงเฉพาะหน้าแรก data:blog.homepageUrl
ในการปรับ Widgets นั้นเราต้องค้นหา Widgets ที่เราสร้างขึ้นไว้ หากเราสร้าง Widgets ด้วย

"HTML/JavaScript widget" ใส่ข้อมูลหรือสิ่งที่ต้องการให้แสดงใน widget
ลงไปแต่อย่างลืมตั้งชื่อ title ของวิดเก็ตด้วยเพื่อง่ายต่อการค้นหาโค้ด
วิธีค้นหาโค้ด Widgets ที่เราสร้างขึ้นเพื่อปรับแต่ง
1. ไปที่ blogger >> การออกแบบ >> แก้ไข HTML
2. ติ้กถูกที่ "ขยายเทมเพลตวิดเจ็ต" เพื่อป้องกันเราทำโค้ดเสีย
3. Ctrl + F ค้นหาโค้ดชื่อ title ของ Widgets ที่เรากำหนดขึ้นตอนสร้าง Widgets
ตัวอย่างชื่อ title Widgets ที่ผมสร้างขึ้นมีชื่อว่า "Widgets in blogger" ลักษณะของโค้ด Widgets ที่เจอจะประมาณนี้


<b:widget id='HTML11' locked='false' title='ตราโรงเรียน' type='HTML'>
    <b:includable id='main'>

  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>    <h2 class='title'><data:title/></h2>
  </b:if> 


4. การแทรกโค้ดเพื่อให้ Widgets แสดงเฉพาะหน้าแรกของบล็อก
5. ตรวจสอบโค้ดและผลลัพธ์ที่ได้
เทคนิคการซ่อนและแสดง Widgets บน blogger เราสามารถนำไปประยุกต์ใช้กับบล็อกของเราได้ เพิ่มความน่าสนใจให้กับบล็อกมากขึ้น


Convert Excel file to Google Sheets ภาค 2 แบบง่าย



หลังจากปล่อย ภาค 1 ออกไปแล้ว ตัวนั้น มีข้อจำกัดของไฟล์ที่ Uplaoad ดังตารางโควต้าของ Google ที่ให้ใช้ฟรีๆมา ดังนั้น วันนี้ ผมมีของดี และง่ายกว่าหลายเท่าตัวมาให้ครับ
ดูตามโค้ดเลย


function convert() {
var xlsxBlob = DriveApp.getFileById("ปปปปปปปปปปป");                  // ไฟล์ object ของ XLSX
var FolderID = DriveApp.getFolderById("ปปปปปปปปป").getId();    // Id Key โฟลเดอร์ที่เราต้องการเก็บไฟล์ Google Sheet ไว้ เวลาเราแปลงไฟล์

var FileName = "TestCika";
    var file = {
      title: FileName,
      "parents": [{
        "kind": "drive#parentReference",
        "id": FolderID        
      }]
    };
   
    file = Drive.Files.insert(file, xlsxBlob, {
      convert: true
    });
  
  }


ลองไปสร้่าง ไฟล์ที่ Google Apps Script กันดูนะครับ
จากนั้น ก็ Run script นี้ดูว่ามีอะไรเกินขึ้น 

ว่างๆ จะทำ Script อื่นๆ ให้ดูอีกนะคร๊าฟ...







Convert Excel file to Google Sheets ภาค 1


สำหรับคนที่กำลังฝึกเขียนโปรแกรมบน Google Apps Script นะครับ

เข้าไปที่ Apps script ที่ Google Drive จากนั้นก็ copy วาง จากนั้น ก็ Run ฟังก์ชันนี้ดูครับ
แต่ต้องลอง Upload ไฟล์ Excel หรือ Office ต่างลงไปดูนะครับ 

ลองศึกษาเขียนดูนะครับ  เพิ่มประสบการณ์ แหล่งทรงพลังของ Google กัน








// By Google Docs, we mean the native Google Docs format
// ไฟล์ ไม่โครซอฟ ออฟฟิศ ใช้ได้ทุกตัวครับ.......

function convertToGoogleDocs(fileName) {

var officeFile = DriveApp.getFileById("0BxzE9Mdx0o8MdldobnE0NUVfVWs");

// Use the Advanced Drive API to upload the Excel file to Drive
// convert = true will convert the file to the corresponding Google Docs format
var uploadFile = JSON.parse(UrlFetchApp.fetch(
"https://www.googleapis.com/upload/drive/v2/files?uploadType=media&convert=true",
{
method: "POST",
contentType: officeFile.getMimeType(),
payload: officeFile.getBlob().getBytes(),
headers: {
"Authorization" : "Bearer " + ScriptApp.getOAuthToken()
},
muteHttpExceptions: true
}
).getContentText());
// Remove the file extension from the original file name
var googleFileName = "testExcel";

// Update the name of the Google Sheet created from the Excel sheet
DriveApp.getFileById(uploadFile.id).setName(googleFileName);
}





อย่าลืมทำตามภาพด้วย เดี๋ยว Run ไม่ผ่านนะคร๊าฟ...




สูตรหาตำแหน่ง หรือหาชื่อของ Cell หรือ RangName อะไรประมาณนั้น

               

                   สูตรนี้บางท่านก็จำเป็นในการใช้พัฒนาระบบของ Excel แต่ในที่นี้ผมใช้ของ Google SpreadSheet เพื่อพัฒนาระบบ บนภาษาจาวาสคริป โดยใช้ Google Apps Script เป็นเครื่องมือพัฒนาควบคู่กับ Google SpreadSheet ซึ่งเป็นแหล่ง Server อันทรงพลังและมีประสิทธิภาพที่สุดในโลก ที่ให้มาใช้งานกันฟรีๆ  


                     เอาล่ะครับ เข้าสู่เนื้อหากันเลยครับ สูตรก็ไม่ได้ง่ายนักเข้าไปค้นหาก็เป็น ชั่วโมงกว่าจะได้มา ยากลำบากเหลือแสน อิกๆ..

ตัวนี้เลยครับ พระเอกของเรา 

               =cell("address",index(A6:DC6,1,match("/",A6:DC6,0)))



อ่านดูตามนี้เลยนะครับผม.. 
ไม่เข้าใจยังไงก็ทิ้งข้อความไว้นะครับ จะเข้ามาตอบให้ครับ

AngularJS บน Google App Script ภาค 1

วันนี้มาลุย AngularJS 
บน Google App Script
by CikaPOUNG
AngularJS-large.png     Google-apps-script-superman.pngGoogleAppsScript.jpg

------------------------- ----------

วันนี้ ขอบคุณ OpenShift ฟรี Cloud Computing ดีๆในระดับโลก... (ภาคที่ 1)

เกรินนำสักนิ๊ด…….              
ที่ ผ่านมาผมมีโอกาสได้ศึกษา PHP โด้ดตัวนึงของ สพฐ.ชื่อ SMSS มีประเด็นที่น่าสนใจอยู่ว่าระบบ Server แม่ข่ายภายในโรงเรียนผมก็มีเยอะหลายเครื่องเลยทีเดียว แต่ปัญหาคือ ไฟฟ้าดับ ตกบ่อยมาก ซึ่งหมายถึงความมีประสิทธิภาพ ความมีเสถียรภาพของระบบน้อยขึ้น ทำให้ผมมามองฟา ฟรีโฮสต์ จึงได้ค้นหาได้เจอโฮสติงฟรีค่ายนึงซึ่งให้พืิ้นที่ฟรีมา 2G นั้นถือว่าเยอะเข้าขั้นเลยทีเดียว ได้การล่ะ..ลุย  ใช้เวลาศึกษาเซ็ตระบบอยู่แค่ 1-2 วัน ก็ได้ระบบ SMSS มาให้พี่น้องครูในโรงเรียนได้ใช้กัน แถมอบรมกันแบบด่วนๆ แต่ปรากฏว่าระบบล่มไม่เป็นท่า ใช้งานได้แบบกระท่อนกระแท่น ใช้มาได้ 1 สัปดาห์ เจอเข้าแล้วไง ระบบไม่เสถียรเข้าขั้นมากเลยทีเดียว ก็ของฟรีเนาะ!!!
imageมอง เห็นเลยว่า ระบบเว็บโฮตติงดีๆจะต้องเป้นระบบ Cloud Computing ซะแล้วล่ะครับ  เริ่มคิดได้แล้วเรา ต่อจากนั้นจึงหันมาค้นคำว่า Cloud ฟรี PHP ได้เจอหลายเว็บมาก ใช้เวลาตัดสินใจอยู่ หลายวันที่จะเลือกเจ้า OpenShift ซึ่งมีคุณสมบัติ ความน่าเชื่อถือสูง (Reliability)
  จากนั้นใช้เวลา เกือบ 2 สัปดาห์ ในการศึกษาระบบ ร้องโอดโอยกันเลยทีเดียว เพราะต้องศึกษาการ Deploy โปรแกรมอีกซะงั้น  แต่ก็ได้ความรู้มามากเลยไม่ว่าจะเป็นการติดตั้งทรัพยากรของระบบ การใช้ ระบบ GitHup เข้ามาช่วยโดยลีกเลี่ยงไม่ได้เลยจำเป็นต้องศึกษา githup อย่างท่องแท้ (แต่ก็ได้แบบงูๆปลาๆ) แต่ก็ขอบคุณท่านผู้บริหารที่เลือกใช้ระบบ SMSS ที่เป็นภาษา PHP ทำให้ผมได้รับความรู้จากตรงนี้เต็มๆ
                จากวันนั้นเอง ทำให้ผมได้เรียนรู้ว่า ระบบ Cloud Server เป็น ไง แต่เราไม่ง้อเครือง Server อีกต่อไปแล้วล่ะ เฮ้อๆโลกนี้เป็นสีขาวกันเลย จากการศึกษาระบบของ OPenShift ก็ได้ความคิดรวบยอดคร่าวดังนี้ครับ 
คุณสมบัติพิเศษเท่าที่หามาได้ครับ…
  1. OpenShift : เป็น  PaaS ของ RedHat ที่นักพัฒนาสามารถจะเลือกพัฒนา Application โดยใช้ภาษาได้หลายภาษา เช่น PHP เป็นต้น (อยากรู้ค้นหาเพิ่มเองเด้อ)
  2. OpenShift : ไม่จํากัดเวลา Build Project
  3. OpenShift : มี Reliability ระบบ  Server  ซึ่งจำเป็นจะต้องมีความน่าเชื่อถือสูง และสามารถรองรับ  SLA ทีเหมาะสมได้ การทำ  Web App โดยหลักการ ถ้าไม่คำนึงถึง  Hosting  ที่เหมาะสม ก็ไม่ใช่การทำ Cloud App ที่ถูกต้องแล้วล่ะครับพี่น้องคร๊าฟ
  4. OpenShift : ที่สำคัญ OpenShift เป็น Cloud Hosting ครับผม
  5. OpenShift : ไม่งอแงเลยครับ รองรับการเข้าเยี่ยมชมเพจวันล่ะไม่เกิน 15 View  รองรับการเข้าเยี่ยมชมเว็บประมาณ 50,000 ครั้งต่อเดือน นั่นเพียงพอต่อความต้องการ แต่หากมากกว่านี้สามารถติดต่อเพิ่มได้ครับ
  6. OpenShift : ให้ Starage มาถึง 1G 3 gears นั่นหมายถึงว่าเยอะเลยทีเดียว ใช้เก็บข้อมูลเกี่ยวกับ Web App และ DataBase ได้เพียงพอ ใช้ได้เป็นชาติครับไม่เต็มหรอกครับผมว่านะ..
  7. OpenShift :  ทำงานบนทรัพยากรของ Amazon Cloud Computing บน EC2
  8. OpenShift : พัฒนาโดย RedHat หลายๆคนคงรู้นะ
  9. OpenShift : สร้าง domain name จาก namespace ที่กำหนดให้โดยผู้ใช้ให้อีกด้วย เช่น  http://smssanc.anc.ac.th
  10. OpenShift : ใช้ github เป็นหลัก โดยเราจะต้อง clone git repository หลังจากที่เราสร้าง application บน openshift เพื่อที่จะนำมาทำการแก้ไขให้เป็น app ของเราต่อไป
  11. OpenShift :
  12. OpenShift :

ศึกษา OpenShift เพิ่มเติม ผมขอขอบคุณหลายๆเว็บ เช่น

อธิบาย Pass กะ Laas เพิ่มเติมครับ
  • การพัฒนาบน PaaS นักพัฒนาซอฟต์แวร์จะสามารถที่จะมุ่งเป้าไปที่การพัฒนาและติดตั้ง Application ได้อย่างเดียว โดยการทำงานและบริหารระบบอื่นๆทาง  Cloud Provider  จะเป็นผู้ดำเนินการให้
  • การพัฒนาบน IaaS  ผู้พัฒนาจะต้องบริหารจัดการหลายๆอย่างเองหมด อาทิเช่น การติดตั้ง  Web Server  และ Database Server, การทำ Load Balance, การบริหารจัดการ  VMware  หรือ DBMS และ การพัฒนา Application
อะไรประมาณนี้…เอิกๆ….

แนะนำหนังสือ
image
สามารถดาวน์โหลดได้ ที่เว็บ OpenShift ครับ
ปฏิบัติการ ระบบ Openshift 
1. เข้าเว็บ  https://www.openshift.com/
image
2. ลงทะเบียนที่ SIGN UP FOR FREE  สมัครเองนะครับ…ง่ายๆครับ..เอิกๆ…
image
3. เป็น Cloud Hosting ฟรีครับ เสร็จลองทำดู หน้าตาได้อย่างนี้เปล่าครับผม..
image
มันให้มา 3 Gears หมายความตามนี้ครับ  คือให้มา 3 App เท่านั้นครับ..
4. เครื่องมือที่เกี่ยวข้องก็มี             
ว่างๆจะมาทำภาค2…
  ส่งข้อความพูดคุยทักทาย หรือแสดงความคิดเห็น หรือให้กำลังใจกันหน่อยนะครับผม… 

วิธีการนำ SMSS ขึ้น Github เพื่อทำระบบ SMSS บน OpenShift (ภาค2)

1. เปิดโปรแกรมเว็บบราวเซอร์ในที่นี้ใช้ Google Chrome นะครับผม…
    ดูวิธีลงทะเบียนในบทความ ภาคที่ 1 นะครับ..ส่วนบทความนี้คลิก LogIn ได้เลยครับ
image

2. หลังจากท่านให้สร้างระบบ OpenShift คลิกที่ Add Application เพื่อสร้างรายการใหม่ขึ้นมา
ซึ่งทาง OpenShift มีให้สร้างได้ฟรีถึง 3 Gears นะครับ..ของผมเลือกอีก 1 Gears
สังเกตในรูปภาพที่ 2 ผมสร้างมาแล้ว 2 Gears

image
image
ถ้าสร้าง Application ครั้งแรก ให้เลือก Create your first application now
image
ถ้าสร้าง Application ครั้งแรก ระบบจะถามดังภาพด้านบน คลิกเลือก Not now,continueจากนั้นก็ได้ปรากฏภาพดังรูปภาพที่ 1 ด้านบน
3. จากนั้นจะเข้าการเลือกรายการที่ต้องการจัดการ ซึ่งในที่นี้ให้เลือก PHP4 ในระบบ SMSS
ใช้ภาษา PHP ในการพัฒนาระบบครับ…ดูตามรูปภาพที่ 3 ครับผม
image
4.  จากนั้นระบบจะให้กรอกชื่อ Public URL ให้เราคิดชื่อให้ตรงตามรายการที่เราจะทำซึ่งใน
ที่นี้ผมใช้ SMSS1 ดูตามรูปภาพที่ 5    อย่าลืม ตรง Scaling  ไม่ต้องเลือก ให้เป้น
No Scaling เหมือนเดิม จากนั้นคลิกที่ด้านล่างปุ่ม Creat Application
image

5. จากนั้นก็จะแสดง Gears ทั้งหมดในหน้านี้ตามรูปภาพที่ 5
image
6. ต่อไปก็ให้คลิกที่เมนู Applications จะได้ดังรูปภาพที่ 6
image

7. คลิกที่รายการ SMSS1 จะได้ตามรูปภาพที่ 7 จากนั้นก็ให้เพิ่มฐานข้อมูลในที่นี้ผมใช้
    MySQL 5.5 ให้คลิกที่ Add MySQL 5.5 ที่เมนูด้านล่าง
image
8. จะได้หน้าตามตามรูปภาพที่ 8  ให้คลิกที่ Add Catridge และจากนั้นก็ ให้เพิ่ม
     PHP MyAddMin ด้วยทำเหมือนกันกับ Add MySQL
image
9. จะได้หน้าตามตามรูปภาพที่ 9 ซึ่งมีรายการที่เราเพิ่มอยู่ 3 รายการคือ PHP,MySQL,
    PHP MYADDMIN หน้าที่ ของ PHP MyAdMin จะเป็นตัวจัดการฐานข้อมูล MySQL
    ได้ง่ายซึ่งเป็นตัวจัดการบนเว็บไซต์
image
10. จากนั้นติดตั้ง โปรแกรมเสริมเพื่อที่จะใช้ในการสร้าง Key และ Deploy รายการที่เราจะอัพ
     ขึ้นไปที่ Open Shift นั่นคือ อันแรกคือโปรแกรม PuTTy  และ โปรแกรม Tortoisegit
     วิธีการติดตั้งและดาวน์โหลดให้กลับไปดูที่ ภาคที่ 1 นะครับ
    การ Install PuTTy คลิกดูวิธีการติดตั้งที่นี่ครับ..คลิก
     หลังจากลงเสร็จเปิดโปรแกรม PuTTygen เพื่อจัดการ Public Key
image
11. จากนั้นให้เลื่อนเมาส์ไปมาในขณะที่กำลังทำการ Generate Key อยู่นั้น
image
12. จะได้ Public key แล้วให้ใส่ตรงนี้จะให้กรอกว่า รหัสผ่านสำหรับเปิดใช้ไฟล์ key นี้ คืออะไร
      ซึ่งจะเป็นคนละตัวกับรหัสผ่านของ user จากนั้นให้คลิกปุ่ม Save private key ไว้ใน Folder
      ที่สร้างไว้เก็บ Public key นี้ไว้
image
13. ต่อจากนั้น ให้ไฮไลต์ในช่อง Public key ทั้งหมดทำการก็อปปี้ไปเก็บไว้ที่ไฟล์ทีใช้เก็บ
      ตัวอักษรในที่นี้ใช้โปรแกรม NotePad เก็บไว้ใน Folder เดียวกันกับ Public key ในข้อ
      ที่ 12 เก็นเป็นไฟล์ *.txt เอาเก็บไว้ใช้ต่อไป ดังในรูปภาพที่ 13
image
image
14.  คลิกที่เมนู Application ดูด้านข้างจะพบข้อความดังรูปภาพด้านล่าง จากนั้นคลิกที่
       Requires a public key ตามภาพที่ 14
image
image
กรอกชื่อในช่อง Key name ตั้งให้สัมพันธ์กับ Application นี้ จากนั้นก็อปปี้ Public key ที่
บันทึกไว้ในไฟล์ text ในโฟลเดอร์ที่สร้างเก็บไว้เก็บ Public Key จากนั้นคลิก Create จะได้ดัง
ภาพด้านล่างนี้
image
สุดท้ายดูที่ Application ที่เราสร้าง ตรง Public Key  ก็จะมี Key ขึ้นมาแล้วครับผม..
image
15. เจอกันต่อในภาคที่ 3 ครับผม….โชคดีคร๊าฟ….