แสดงบทความที่มีป้ายกำกับ PHP แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ PHP แสดงบทความทั้งหมด

7/1/59

PHP Check browser

PHP Check browser การเช็ค บราวเซอร์ใน PHP

เรามาดูตัวอย่างโค้ดง่าย ๆ ในการเช็คบราวเซอร์ใน PHP กันครับ ซึ่งในที่นี้จะทำเป็น Class ออกมา แล้วทำฟังก์ชันไว้สำหรับเช็ค browser
class Browser{
 public $browsers = array("Firefox", "Chrome", "Opera", "MSIE 10", "MSIE 9", "MSIE 8" , "MSIE 7" , "MSIE 6" , "Safari", "Mozilla", 
      "Seamonkey", "Konqueror", "Netscape", "Gecko", "Navigator", "Mosaic", "Lynx", 
      "Amaya", "Omniweb", "Avant", "Camino", "Flock", "Aol");
 
 public function __construct(){
 }
 
 public function checkBrowser($nameBrowser){
  return preg_match("/".$nameBrowser."/", $_SERVER['HTTP_USER_AGENT']);
 }
 
 public function nowBrowser(){
  for($i = 0; $i < sizeof($this->browsers); $i++){
   if($this->checkBrowser($this->browsers[$i]) == 1) return $this->browsers[$i];
  }
  return "Other Browser ".$_SERVER['HTTP_USER_AGENT'];
 }
}
จากโค้ดจะเห็นว่มีฟังก์ชันอยู่ 2 อันคือ - checkBrowser ไว้สำหรับเช็คว่าเป็นบราวเซอร์ที่เราสนใจหรือเปล่า - nowBrowser ไว้สำหรับเช็คว่าปัจจุบันใช้บราวเซอร์อะไร สิ่งสำคัญที่น่าสนใจก็คือ $_SERVER['HTTP_USER_AGENT'] เอาไว้สำหรับแสดงชื่อบราวเซอร์ออกมา

28/12/58

การเปลี่ยน Version ของ PHP ใน Bluehost

การเปลี่ยน Version ของ PHP ใน Bluehost

บทความนี้เรามาดูวิธีการเปลี่ยน Version ของ PHP ใน Bluehost กันครับ ซึ่งใครใช้ Bluehost อยู่อาจจะอยากเปลี่ยน Version ของ PHP ที่ต้องการ เรามาดูกันดีกว่าว่าเปลี่ยนยังไง

เริ่มด้วยเข้าสู่ระบบก่อน จากนั้นไปที่แถบ hosting แล้วไปที่ cpanel ตามรูปด้านล่าง


จากนั้นให้มองในส่วนของ programming จะมีส่วนของ PHP Config อยู่ ให้กดเข้าไป ดังรูปด้านล่าง


เมื่อกดเข้าไปจะพบกับหน้าต่าง Bluehost PHP Configuration ตามรูปด้านล่าง


ให้ทำการเลือก Version ที่ต้องการ จากนั้นก็กด Save เพียงแค่นี้เราก็ได้ PHP version ที่เราต้องการแล้ว

หมายเหตุ*** อย่าลืมคำเตือน
If you are not familiar with these options, do NOT change them.
This can cause all PHP scripts on your site to stop functioning if misconfigured.

2/12/58

Design Patterns: PHP Singleton

Design Patterns: PHP Singleton

บทความนี้เรามาดูตัวอย่างการใช้ Design Patterns มาใช้ในภาษา PHP โดยตัวอย่างนี้จะเป็นเรื่องของ Singleton

ในการออกแบบ web application นั้น ก็มักจะมีแนวทางในการออกแบบที่หลากหลายรูปแบบกันไป และมักจะมีการออกแบบให้มีการเข้าถึง instance ใน Class ไม่น้อยเช่นกัน เช่น เราต้องการจะเข้าถึง Object ที่เกี่ยวกับการติดต่อฐานข้อมูลหนึ่ง ๆ เราไม่จำเป็นจะต้องสร้าง Object ชนิดนี้ออกมามากมาย เพียงแค่ Object เดียวแล้วเวลาจะใช้ก็ทำการเรียก getInstance เอา Object นั้นออกมาใช้งานเพียงแค่นี้ก็พอแล้ว และก็มีอีกอย่างนั่นก็คือเราไม่จำเป็นต้องแก้ไขหรือไม่ให้ใครมาแก้ไข Object นี้ เราจะออกแบบยังไง The singleton pattern สามารถช่วยคุณได้ มาดูตัวอย่างง่าย ๆ กัน

<?php
class Singleton
{
    /**
     * @var Singleton The reference to *Singleton* instance of this class
     */
    private static $instance;
    
    /**
     * Returns the *Singleton* instance of this class.
     *
     * @return Singleton The *Singleton* instance.
     */
    public static function getInstance()
    {
        if (null === static::$instance) {
            static::$instance = new static();
        }
        
        return static::$instance;
    }

    /**
     * Protected constructor to prevent creating a new instance of the
     * *Singleton* via the `new` operator from outside of this class.
     */
    protected function __construct()
    {
    }

    /**
     * Private clone method to prevent cloning of the instance of the
     * *Singleton* instance.
     *
     * @return void
     */
    private function __clone()
    {
    }

    /**
     * Private unserialize method to prevent unserializing of the *Singleton*
     * instance.
     *
     * @return void
     */
    private function __wakeup()
    {
    }
}

class SingletonChild extends Singleton
{
}
?>

จากโค้ดจะเห็นว่าตัวแปรที่ต้องการจะ return นั้นจะต้องเป็น static เวลาจะใช้งานเราก็เรียก getInstance() เช่น Singleton::getInstance(); ในฟังก์ชันเราก็ทำการเช็คตัวแปรก่อนว่ามีค่าแล้วหรือเปล่า หรือมีคนเรียกแล้วหรือยัง ถ้ายังเราก็ทำการสร้างขึ้นมาแล้วเก็บไว้ในตัวแปรประจำ Class จากนั้นเมื่อทำการเรียกครั้งต่อไป เราจะทำการ return ตัวแปรเดิมที่เคยเรียกไปแล้ว

ดูเพิ่มเติมได้ที่
http://www.phptherightway.com/pages/Design-Patterns.html
https://en.wikipedia.org/wiki/Singleton_pattern

10/10/58

PHP ดึง url รูปแล้วนำมาแสดง เปลี่ยน url ของรูป

PHP ดึง url รูปแล้วนำมาแสดง เปลี่ยน url ของรูป


ไม่รู้จะเขียนหัวข้อบทความว่าอะไร เอาเป็นว่า PHP ดึง url ของรูป แล้วนำรูปมาแสดง หรือจะบอกว่าเปลี่ยน url ของรูปก็ได้มั้ง

ความเป็นมา

เนื่องจาก ต้องการจะนำรูปภาพ ซึ่งมี Url อยู่ใน Google Photo ดังตัวอย่าง url ของรูปคือ https://lh3.googleusercontent.com/cAWsvkUoH0-wRyuWqvJf9tg0btLtsHN_Uo_T6FgeBG2gYSXMTw มาแสดง แต่ว่า ก็มีหลายเหตุผลที่ไม่อยากแสดง Url ตรง ๆ เช่น ไม่อยากให้ใครรู้ Url รูปภาพที่แท้จริง หรือต้องการจะให้รูปภาพเป็น Url ที่มีความหมาย หรือเหตุผลอื่น ๆ

ตัวอย่างวิธีการแก้ปัญหา ก็คือให้ใช้ mod_rewrite เพื่อเปลี่ยน Url ที่ต้องการ จากนั้นก็ใช้ PHP ดึงค่า Url ของรูปภาพ แล้วก็ส่งรูปภาพนั้นกลับไปใน Url ที่ต้องการ

ในการใช้ PHP นั้น ใช้คำสั่ง

echo file_get_contents($decode);

เพียงแค่นี้เราก็ดึง Url ของรูปจากนั้นก็ส่งกลับไปได้เลย

4/8/58

การเซตค่า PDO ใน PHP ติดต่อฐานข้อมูล MySQL ภาษาไทย

การเซตค่า PDO ใน PHP ติดต่อฐานข้อมูลภาษาไทย

สวัสดีครับ บทความนี้เรามาดูวิธีการเขียน PHP เป็นการติดต่อฐานข้อมูลโดยใช้ PDO กันครับ ซึ่งหลาย ๆ คนอาจจะเกิดปัญหาว่า เวลาดึงข้อมูลมาจากฐานข้อมูลแล้ว ภาษาไทยอ่านไม่ออก เป็นเครื่องหมายคำถาม ?? หรืออ่านไม่รู้เรื่อง

ตัวอย่างวิธีการติดต่อก็คือ

<?php
 class PDOConnect{
  private $host;
  private $userhost;
  private $passhost;
  private $database;
  private $pdo;

  public function __construct(){
   $this->host = "localhost";
   $this->userhost = "root";
   $this->passhost = "doesysteminfo";
   $this->database = "doesysteminfo";
  }

  public function getConnect(){
   try {
    $this->pdo = new PDO("mysql:host={$this->host};dbname={$this->database};charset=UTF8", $this->userhost, $this->passhost);
    $this->pdo->exec("set names utf8");
   } catch (Exception $e) {
    echo $e;
   }
   return $this->pdo;
  }
 }
?>
แค่นี้เราก็สามารถติดต่อฐานข้อมูลเป็นภาษาไทยได้แล้ว