หลักในการส่งค่าจาก PHP ไปใช้ยัง Javascript
นั้นก็ไม่มีอะไรยุ่งยากครับเนื่องจาก PHP นั้นทำงานก่อน Javascript
อยู่แล้ว เราเพียงแค่จัดการให้ PHP echo เอาตัวแปร Javascript
ออกมาเท่านั้น
มาดูแบบที่ 1 Javascript อยู่ในหน้าเดียวกันกับเว็บเพจ
แบบที่ 2 ส่งค่าไปยัง Javascript ภายนอก
จริงๆแล้วเทคนิคด้านบน ก็สามารถส่งผ่านตัวแปรไปยัง Javascript ภายนอกได้เลยครับ สามารถทดสอบได้โดยการใช้ Javascript ภายนอก alert ตัวแปร data มาดูได้เลย ซึ่งเป็นไปตามกฏที่ว่า Javascript ใดๆที่ถูกเรียกใช้ภายในเพจ สามารอ้างอิงตัวแปรซึ่งกันและกันได้
แบบที่ 3 ส่งค่าไปยัง Javascript ภายนอก อีกแบบหนึ่ง
ในการเรียกใช้ Javascript ภายนอกนั้นเราสามารถ include ไฟล์ ในรูปของไฟล์ PHP ก็ได้ครับ ไม่จำเป็นต้องเป็ไฟล์ JS เสมอไป ซึ่งเทคนิคนิึมีประโยชน์หลายอย่างครับ เช่นเราสามารถใช้ PHP เพื่ออ่าน Javascript จาก Database ได้ด้วยครับ
ตัวอย่างการ include ไฟล์ javascript ภายนอกที่เห็นเป็นการ include ไฟล์ javascript ที่เป็น php เข้ามาพร้อมกับเป็นการส่งค่าตัวแปร $data ไปยังไฟล์ Javascript ด้วย และเนื่องจากไฟล์ Javascript ที่เรียกไปเป็นไฟล์ php เราจึงสามารถรับค่าตัวแปรที่เรียกไปผ่าน method $_GET ได้ด้วยครับ
โค้ดด้านล่าง เป็นโค้ดไฟล์ test.js.php ครับ เราสามารถเขียนคำสั่งใดๆที่เป็นของ PHP ได้ครับ โดยให้ผลลัพท์ออกมาเป็น Javascript
มาดูแบบที่ 1 Javascript อยู่ในหน้าเดียวกันกับเว็บเพจ
<?php
$data = 'xxx'; // ตัวแปร PHP
echo '<script type="text/javascript">';
echo "var data = '$data';"; // ส่งค่า $data จาก PHP ไปยังตัวแปร data ของ Javascript
echo '</script>';
?>
<script type="text/javascript">
alert(data); // ทดสอบแสดงตัวแปร
</script>
แบบที่ 2 ส่งค่าไปยัง Javascript ภายนอก
จริงๆแล้วเทคนิคด้านบน ก็สามารถส่งผ่านตัวแปรไปยัง Javascript ภายนอกได้เลยครับ สามารถทดสอบได้โดยการใช้ Javascript ภายนอก alert ตัวแปร data มาดูได้เลย ซึ่งเป็นไปตามกฏที่ว่า Javascript ใดๆที่ถูกเรียกใช้ภายในเพจ สามารอ้างอิงตัวแปรซึ่งกันและกันได้
แบบที่ 3 ส่งค่าไปยัง Javascript ภายนอก อีกแบบหนึ่ง
ในการเรียกใช้ Javascript ภายนอกนั้นเราสามารถ include ไฟล์ ในรูปของไฟล์ PHP ก็ได้ครับ ไม่จำเป็นต้องเป็ไฟล์ JS เสมอไป ซึ่งเทคนิคนิึมีประโยชน์หลายอย่างครับ เช่นเราสามารถใช้ PHP เพื่ออ่าน Javascript จาก Database ได้ด้วยครับ
ตัวอย่างการ include ไฟล์ javascript ภายนอกที่เห็นเป็นการ include ไฟล์ javascript ที่เป็น php เข้ามาพร้อมกับเป็นการส่งค่าตัวแปร $data ไปยังไฟล์ Javascript ด้วย และเนื่องจากไฟล์ Javascript ที่เรียกไปเป็นไฟล์ php เราจึงสามารถรับค่าตัวแปรที่เรียกไปผ่าน method $_GET ได้ด้วยครับ
<?php
$data = 'xxx'; // ตัวแปร PHP
?>
<script type="text/javascript" src="test.js.php?data=<?php echo $data?>"></script>
<script type="text/javascript">
alert(data); // ทดสอบแสดงตัวแปร
</script>
โค้ดด้านล่าง เป็นโค้ดไฟล์ test.js.php ครับ เราสามารถเขียนคำสั่งใดๆที่เป็นของ PHP ได้ครับ โดยให้ผลลัพท์ออกมาเป็น Javascript
<?php
// test.js.php
$data = $_GET[data];
echo "var data = '$data';"; // echo คัวแปรที่ส่งมาจาก php
?>
So Good
ตอบลบ