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

ย้ายของในกล่อง 4 ใบ ในแต่ละวันที่กำหนด

โจทย์ข้อนี้จะเป็นการแนะนำเรื่องการใช้ตัวแปร และฟังก์ชั่นสำหรับแก้โจทย์ปัญหาที่ให้มานี้ ถ้าดูจากรูป จะเห็น วันที่, กล่อง สี่ใบ ซึ่งจะเป็ฯคนละสี และของสี่อย่างที่อยู่ในกล่องแต่ละใบ



การประกาศตัวแปร 

จะประกอบด้วยตัวแปรที่ใช้แทนวันที่ปัจจุบัน และตัวแปรที่ใช้แทนกล่องแต่ละใบ


<?php
      $today = '';

      $redBox = '';
      $yellowBox = '';
      $greenBox = '';
      $blueBox = '';
?>

การเขียนโค๊ด PHP แบบที่ 1 
       ตรวจสอบเงื่อนไขวันที่ด้วย if...else
ในแต่ละวันจะต้องย้ายของในกล่อง ให้ตรงกับสี ซึ่งกำหนดไว้สี่วันด้วยกัน คือ 


วันที่ 10 มี.ค. 2556 
  • นำ Cat ใส่ลงในกล่องสีแดง 
  • นำ Rat ใส่กล่องสีเหลือง
  • นำ Bat ใส่กล่องสีเขียว 
  • นำ Hat ใส่กล่องสีฟ้า


<?php
   if( $today == '2013-03-10'){
      $redBox = 'Cat';
      $yellowBox = 'Rat';
      $greenBox = 'Bat';
      $blueBox = 'Hat';
   }
?>


วันที่ 11 มี.ค. 2556 
      ให้เลื่อนของแต่ละชิ้นไปยังกล่องถัดไป ซึ่ง Cat จะไปอยู่ในกล่องสีเหลือง



<?php
  if( $today == '2013-03-10'){ 
      //................

  } else if( $today == '2013-03-11'){
      $redBox = 'Hat';
      $yellowBox = 'Cat';
      $greenBox = 'Rat';
      $blueBox = 'Bat';
   }
?>


 วันที่ 12 มี.ค. 2556
      ให้เลื่อนของแต่ละชิ้นไปยังกล่องถัดไป ซึ่ง Cat จะไปอยู่ในกล่องสีเขียว





<?php
  if( $today == '2013-03-10'){ 
      //................

  } else if( $today == '2013-03-11'){
      //................

   } else if( $today == '2013-03-12'){
      $redBox = 'Bat';
      $yellowBox = 'Hat';
      $greenBox = 'Cat';
      $blueBox = 'Rat';
   }
?>


วันที่ 13 มี.ค. 2556
      ให้เลื่อนของแต่ละชิ้นไปยังกล่องถัดไป ซึ่ง Cat จะไปอยู่ในกล่องสีฟ้า




<?php
  if( $today == '2013-03-10'){ 
      //................

  } else if( $today == '2013-03-11'){
      //................

   } else if( $today == '2013-03-12'){
      //................

   } else if( $today == '2013-03-13'){
      $redBox = 'Rat';
      $yellowBox = 'Bat';
      $greenBox = 'Hat';
      $blueBox = 'Cat';
   }
?>





เราสามารถเรียกดูผลลัพธ์โดยการกำหนด $today ให้เป็นวันทึ่ต่างๆ
แล้วลองใช้คำสั่ง echo ดูผลลัพธ์ที่ได้

<?php

   $today = '2013-03-12';//กำหนดวันที่

  if( $today == '2013-03-10'){
      $redBox = 'Cat';
      $yellowBox = 'Rat';
      $greenBox = 'Bat';
      $blueBox = 'Hat';

  } else if( $today == '2013-03-11'){
      $redBox = 'Hat';
      $yellowBox = 'Cat';
      $greenBox = 'Rat';
      $blueBox = 'Bat';

   } else if( $today == '2013-03-12'){
      $redBox = 'Bat';
      $yellowBox = 'Hat';
      $greenBox = 'Cat';
      $blueBox = 'Rat';

   } else if( $today == '2013-03-13'){ 
      $redBox = 'Rat';
      $yellowBox = 'Bat';
      $greenBox = 'Hat';
      $blueBox = 'Cat';
   }

   echo '
';
   echo 'กล่องสีแดง => '. $redBox ."\n";
   echo 'กล่องสีเหลือง => '. $yellowBox ."\n";
   echo 'กล่องสีเขียว => '. $greenBox ."\n";
   echo 'กล่องสีฟ้า => '. $blueBox ."\n"; 
   echo '
'; ?>
จากโค๊ด เมื่อเปลี่ยนค่าของตัวแปร $today ให้ตรงกับวันที่ในเงื่อนไข if else ก็จะเห็นค่าที่อยู่ในกล่องแต่ละกล่องเปลี่ยนไปตามวันที่ทีเราต้องการ หากวันที่ไม่ตรงกับเงื่อนไขที่กำหนด ก็จะไม่มีการขนย้ายสิ่งของใส่กล่อง ภายในกล่องก็จะว่างเปล่า



______________________ การเขียนโค๊ด PHP แบบที่ 2 _____________________________

ตรวจสอบเงื่อนไขวันที่ด้วย switch_case  (อย่าลืมติด break; ด้วยนะครับ)

<?php

  $today = '2013-03-12';//กำหนดวันที่  

  switch( $today ){       
      case '2013-03-10':
         $redBox = 'Cat';
         $yellowBox = 'Rat';
         $greenBox = 'Bat';
         $blueBox = 'Hat';
         break;
      case '2013-03-11':
         $redBox = 'Hat';
         $yellowBox = 'Cat';
         $greenBox = 'Rat';
         $blueBox = 'Bat';
         break;
      case '2013-03-12':
         $redBox = 'Bat';
         $yellowBox = 'Hat';
         $greenBox = 'Cat';
         $blueBox = 'Rat';
         break;
      case '2013-03-13':
         $redBox = 'Rat';
         $yellowBox = 'Bat';
         $greenBox = 'Hat';
         $blueBox = 'Cat';
         break;
   }    

         echo '
';    
         echo 'กล่องสีแดง => '. $redBox ."\n";    
         echo 'กล่องสีเหลือง => '. $yellowBox ."\n";   
         echo 'กล่องสีเขียว => '. $greenBox ."\n";   
         echo 'กล่องสีฟ้า => '. $blueBox ."\n";    
         echo '
'; ?>


 แบบที่ 2 นี้จะเขียนโค๊ด PHP ได้สบายตา ดูเป็นระเบียบดีกว่าแบบแรก



______________________ การเขียนโค๊ด PHP แบบที่ 3 _____________________________

ประกาศตัวแปร Array ตามวันที่และเรียกใช้ตามชื่อกล่อง

<?php

    $arrayBox = array();
    $arrayBox['2013-03-10'] = array( 'red'=>'Cat', 'yellow'=>'Rat', 'green'=>'Bat', 'blue'=>'Hat' );
     $arrayBox['2013-03-11'] = array( 'red'=>'Hat', 'yellow'=>'Cat', 'green'=>'Rat', 'blue'=>'Bat' );
     $arrayBox['2013-03-12'] = array( 'red'=>'Bat', 'yellow'=>'Hat', 'green'=>'Cat', 'blue'=>'Rat' );
     $arrayBox['2013-03-13'] = array( 'red'=>'Rat', 'yellow'=>'Bat', 'green'=>'Hat', 'blue'=>'Cat' ); 


    $today = '2013-03-12';//กำหนดวันที่


   echo '
';
   echo 'กล่องสีแดง => '. $arrayBox[$today]['red'] ."\n";
   echo 'กล่องสีเหลือง => '. $arrayBox[$today]['yellow'] ."\n";
   echo 'กล่องสีเขียว => '. $arrayBox[$today]['green'] ."\n";
   echo 'กล่องสีฟ้า => '. $arrayBox[$today]['blue'] ."\n"; 
   echo '
'; ?>
บางท่านที่ได้อ่านบทความนี้แล้ว อาจจะมองเห็นวิธีที่ดีกว่านี้ ก็อย่าลืมนำมาแบ่งปันกันนะครับ

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

แจกฟรี!! ระบบต่างๆที่พัฒนาด้วย PHP สำหรับนำไปใช้ในงานต่างๆ

       สำหรับหลายท่านที่ขอโค้ดเข้ามาทาง Inbox ของเฟซบุ๊กแฟนเพจ หรือถามถึงระบบต่างๆหลังไมค์มานั้น ส่วนใหญ่ก็มีแจกอยู่แล้วในเว็บบอร์ด ThaiCreate.Com นะครับ และด้านล่างนี้ก็เป็นระบบต่างๆที่แจกให้นำไปลองใช้ลองศึกษากันครับ

สร้างแบบฟอร์มล็อกอิน HTML + PHP

       ผมจะสร้างระบบตัวอย่างเพื่อแสดงให้เห็นการทำงานของสคริปต์ PHP ที่ใช้ในการล็อกอินอย่างง่ายๆ นะครับ โดยที่ผมจะสร้างโฟลเดอร์ใหม่ขึ้นในไดร์ฟที่เราได้กำหนดให้เป็น Directory Root สำหรับรันสคริปต์ PHP ซึ่งผมกำหนดเอาไว้ที่ D:\www ดังนั้นผมจะสร้างโฟลเดอร์ teacher_assistant ขึ้นมาใหม่จะได้พาธเป็น D:\www\teacher_assistant สำหรับการเข้าถึง จะใช้ URL ดังนี้ http://localhost/teacher_assistant หลังจากสร้างโฟลเดอร์เสร็จเรียบร้อยก็จะเริ่มกระบวนการเตรียมโครงสร้างโปรเจ็กต์ด้วยเครื่องมือช่วยเขียนโปรแกรมชื่อว่า eclipse ซึ่งดูวิธีการสร้างโปรเจ็กต์ได้จากบทความ เริ่มต้นสร้างโปรเจ็กต์ ด้วยโปรแกรม eclipse เครื่องมือเขียนโปรแกรม php ในบทความเป็นการสร้างโปรเจ็กต์ที่มีพาธเป็นโฟลเดอร์ login แต่ในที่นี้ต้องเป็นพาธให้ตรงกับโฟลเดอร์ใหม่ที่เราได้สร้างขึ้นด้วยนะครับ

การดึงข้อมูล MySQL มาแสดงในปฏิทิน Fullcalendar ด้วย PHP

หลักการทำงาน เรียกข้อมูลจากตาราง tb_event ด้วยฟังก์ชั่นของ MySQLi ข้อมูลจากฐานข้อมูลจะถูกวนลูปเก็บไว้ใน $data และจะถูกส่งไปที่ Fullcalendar ด้วยการแปลงข้อมูลจาก PHP ให้อยู่ในรูปแบบ JSON อาร์เรย์ด้วยฟังก์ชั่น json_encode() PHP Code <?php //Database $data = array(); $link = mysqli_connect("127.0.0.1", "tobedev", "1234", "tobedev_example"); mysqli_set_charset($link, 'utf8'); if (!$link) {     echo "Error: Unable to connect to MySQL." . PHP_EOL;     echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;     echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;     exit; } $query = "SELECT * FROM tb_event"; if ($result = $link->query($query)) {     /* fetch object array */     while ($obj = $result->fetch_object()) {        $data[] = array(                     'id' => $obj->id,                     'title'=> $obj->titl