วันอาทิตย์ที่ 30 มีนาคม พ.ศ. 2557

การส่งค่าตัวแปรข้ามไฟล์ ระหว่าง Javascript และไฟล์ php

โดยปกติการอ้างอิงไฟล์ภายนอกของ Javascript จะเรียกใช้ไฟล์ นามสกุล .js แต่น้อยคนที่จะทราบว่า Javascript สามารถเรียกใช้งาน และรับค่ามาจากไฟล์ php ได้

นี่เป็นการเปิดโลกทางเลือกใหม่ที่ทำให้ Javascript ซึ่งเป็น Client-side สามารถสื่อสารกับ PHP ซึ่งเป็น Server-side ได้ ทำให้เพิ่มศักยภาพของ Javascript ได้อย่างมหาศาล

รูปแบบ การอ้างอิงถึง(เรียกใช้งาน)ไฟล์ myscript.php ของ Javascript (ในไฟล์ HTML)

          <script type="text/javascript" src="myscript.php"></script>

ถ้าต้องการส่งค่าไปยังไฟล์ PHP ก็สามารถทำได้ ผ่านทาง Query string ดังนี้

          <script type="text/javascript" src="myscript.php?id=3&name=george"></script>

ไฟล์ PHP จะรับค่าที่ส่งเข้ามา ผ่านทาง global variable $HTTP_GET_VARS[] ประเด็นหลัก ก็คือว่า เนื่องจากเราใช้ Javascript เรียก PHP ดังนั้น ผลลัพธ์ที่ออกมาก จะต้องอยู่ในรูปแบบของ Javascript หรือเป็นไปตาม syntax ของ Javascript เท่านั้น

ข้างล่างนี้ คือตัวอย่างไฟล์ ip.php ที่อ่านค่า IP และนำมาแสดงผ่านทาง Javascript

          <?
          //   "ip.php" example- display user IP address on any page
          Header("content-type: application/x-javascript");
          $serverIP=$_SERVER['REMOTE_ADDR'];
          echo "document.write(\"หมายเลข IP address ของท่าน คือ: <b>" . $serverIP . "</b>\")";
          ?>

เรียกใช้งานไฟล์ ip.php ด้วย Javascript ในไฟล์ HTML ดังนี้

         <script type="text/javascript" src="ip.php"></script>


เมื่อเรียกใช้งานไฟล์ HTML จะแสดงค่า IP ตามที่ระบุ



คำอธิบายไฟล์ PHP

  • ในไฟล์ PHP ต้องระบุใน Header เพื่อบอกให้ทราบว่า ผลที่จะให้แสดงจะเป็นไปตามรูปแบบของ Javascript 
  • สิ่งที่จะให้ PHP แสดง หรือ Echo ออกมา จะต้องอยู่ในรูปของ Javascript จะต้องเป็นไปตามกฎ หรือ Syntax ของ Javascript เท่านั้น ดังนั้น เมื่อสั่งให้ PHP แสดงผลด้วยคำสั่ง echo จึงต้องใช้ Syntax ของ Javascript โดยใช้ Document.write() เพื่อให้ Javascript แสดงข้อความที่ส่งมาจากไฟล์ PHP

รายละเอียดและตัวอย่าง ดูได้จากแหล่งอ้างอิงข้างล่าง

ตัวอย่างการใช้ PHP อ่านไฟล์ภาพ และส่งต่อให้ Javascript แสดงในไฟล์ HTML

ไฟล์ PHP (getimages.php)


ไฟล์ HTML (ตั้งชื่ออะไรก็ได้ เช่น slideShow.html)


อ้างอิง/แหล่งที่มา
http://www.javascriptkit.com/javatutors/externalphp.shtml
http://www.javascriptkit.com/javatutors/externalphp2.shtml

วันจันทร์ที่ 17 มีนาคม พ.ศ. 2557

การใช้ Art Brush และ Scatter Brush สร้างต้นไม้หลากสี

เราใช้ Art Brush และ Scatter Brush สร้าง ต้นไม้หลากสี ดังภาพข้างล่างนี้


ใช้ Art Brush สร้างลำต้นและกิ่ง
ใช้ Scatter Brush สร้างใบ

การสร้างลำต้นและกิ่ง

  1. กำหนด Fill เป็น สีดำ กำหนด Stroke เป็น None 
  2. ใช้ Star Tool วาดรูปดาว และขณะยังไม่ปล่อยเมาส์ ให้กดปุ่มลูกศรลง เพื่อลดมุมให้เหลือเป็นรูปสามเหลี่ยม
  3. เปิดหน้าต่าง Brush (ไปที่ Window > Brush) ใช้ Black Arrow Tool ลากไปไว้ในแถบหน้าต่าง Brush
  4. กำหนด Brush เป็นชนิด Art Brush
  5. กำหนดทิศทางลูกศรชี้ขึ้น และ Method เป็น Tint แล้วคลิก OK
  6. จะได้แปรงใหม่ รูปสามเหลี่ยม
  7. ลบรูปสามเหลี่ยมที่สร้างขึ้น
  8. กำหนด Fill เป็น None และ Stroke เป็น สีดำ 1 pixel
  9. ใช้ Pen Tool วาดรูปเส้นโค้ง เพื่อเป็นรูปต้นไม้ โดยวาดจากลากขึ้นบน
  10. ในขณะที่เส้นกำลังถูกเลือก ให้คลิกแปรงสามเหลี่ยมที่เพิ่งสร้าง จะได้เส้นเป็นรูปต้นไ้ม้
  11. ในหน้าต่างแปรง ให้คลิกปุ่ม Option บริเวณด้านล่าง
  12. กำหนดค่า คลิก Proportional เพื่อให้ได้สัดส่วน และ เลื่อนสเกล เพื่อให้ได้รูปต้นไม้ที่ต้องการ แล้วกดปุ่ม OK
  13. เมื่อต้องการวาดกิ่งใหม่ ให่้กดปุ่ม OK เพื่อเริ่มต้นใหม่ 
  14. วาดจนได้ภาพข้างล่างนี้

  15. เลือกภาพทั้งหมด โดยกด Ctrl + A แล้วไปที่ Object > Expand Appearance

  16. จะได้รูปต้นไม้และกิ่งไม้ี่ที่เป็นภาพเดียวกัน สามารถเปลี่ยนสีใหม่ได้ถ้าต้องการ
การสร้างใบด้วย Scatter Brush
  1. กำหนด Fill เป็นสีดำ และ Stroke เป็น None
  2. ใช้ Ellipse Tool สร้างวงกลม และกำหนด Transparency เป็น 50%

  3. ใช้ Black Arrow Tool ลากวงกลมไปไว้ในแถบหน้าต่างแปรง และกำหนดเป็น Scatter Brush
  4. กำหนด Method เป็น Tint เพื่อให้เปลี่ยนสีได้ และ Rotation Relative to Path แล้วคลิก OK

  5. ลบรูปวงกลมที่สร้างขึ้น เพราะใช้สร้างเป็นแปรงแล้ว
  6. กำหนด Fill เป็น None และ Stroke เป็น สีดำ
  7. ใช้ดินสอ ลาดเส้น ในบริเวณที่ต้องการให้เป็นใบไม้

  8. ใช้ Black Arrow Tool เลือกเส้นที่ใช้ดินสอวาด
  9. คลิกที่แปรง Scatter Brush ที่สร้าง

  10. จะได้ดังภาพ
  11. ต้องการเปลี่ยนขนาดของใบ ให้คลิกที่ปุ่ม Options ด้านล่างของหน้าต่างแปรง ตั้งค่้า Size เป็น Random และเลื่อนตำแหน่งที่ สเกล กำหนด Spacing เป็น Random และเลื่อน สเกล ตามต้องการ คลิก Preview จะเห็นการเปลี่ยนแปลงในขณะที่ทำงาน

  12. เปลี่ยนสี โดยเปลี่ยนที่สีของ Stroke เช่น ต้องการเปลี่ยเป็นสีเขียว
  13. ถ้าต้องการปรับตำแหน่งของใบแต่ละใบ หรือเปลี่ยนสีของใบแต่ละใบ ให้ ไปที่ Object > Expand Appearance แล้ว ใช้ White Arrow Tool คลิก (Alt + คลิก เพื่อเลือกทั้งใบ) ใบที่ต้องการ สามารถเปลี่ยนตำแหน่ง หรือ เปลี่ยนสีก็ได้

  14. ถ้าต้องการหลาย ๆ สี Copy ทั้งชุด มาเปลี่ยนสี เปลี่ยน ขนาด และ Spacing ใน Brush Option

วันเสาร์ที่ 8 มีนาคม พ.ศ. 2557

การแสดงข้อความบนแถบสถานะ (Statusbar) ของ Excel

การแสดงข้อความบนแถบสถานะ หรือ Statusbar ของ Excel มีขั้นตอน ดังนี้

  1. กำหนดให้แสดงแถบสถานะ ด้วยคำสั่ง Application.DisplayStatusBar = True
  2. เพิ่มข้อความลงบนแถบสถานะ ด้วยคำสั่ง Application.StatusBar = "ข้อความที่ต้องการให้แสดง" เช่น
              Application.StatusBar = "กำลังคำนวณค่าร้อยละ ..."
  3. เมื่อการคำนวณสิ้นสุดลง และต้องการให้ Statusbar แสดงค่าตามปกติ ให้คืนค่า ด้วยคำสัง     Application.StatusBar = False
  4. ถ้าไม่คืนค่า Statusbar จะแสดงข้อความ ตามที่สั่ง 
  5. ไม่ควรสั่งให้  Application.DisplayStatusBar = False เพราะจะทำให้ Excel ไม่แสดงข้อความ เมื่อมีการคำนวณใหม่อีกครั้ง เช่น
  6. ตัวอย่าง Code
Application.DisplayStatusBar = True
Application.StatusBar = "กำลังคำนวณค่าร้อยละ ..."
findPercent
Application.StatusBar = "กำลังคำนวณค่ามัฌิมเลขคณิต (Mean) ..."   
meanCalculation
Application.StatusBar = False

' Application.DisplayStatusBar = False