|
|
|
ต้องทำการเรียกไฟล์ใหม่(include) เพื่อต้องการเรียกใช้ฟังชั่น ทุกครั้ง หลังจากใช้ $.get() จริงหรือเปล่าครับ |
|
|
|
|
|
|
|
ฟังชั่น type_news() เขียนไว้ที่ไฟล์ type_news.php
เวลาจะใช้งานใช้ที่ไฟล์ add1.php ก็ต้อง include ที่ไฟล์ add1.php
เพราะ Error มันแสดงแบบนั้น
ไม่น่าจะเกี่ยวกับ $.get() น่ะครับ
|
|
|
|
|
Date :
2015-07-09 17:52:26 |
By :
WiTT |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไฟล์ add1.php
ไม่มี function type_news() อยู่ จึงเกิด error
หากต้องเรียก function type_news() ต้องส่งไปยัง ไฟล์ add1.php ด้วย
ลอง
$.get(link2, {
data: '<?=type_news("' + rel + '")?>',
},
แต่ไม่น่าจะมีใครทำ หรือเปล่า มั้ง?
|
|
|
|
|
Date :
2015-07-09 18:00:58 |
By :
CasanovaKung |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
type_news.php หน้าตาเป็นยังไงครับ
เป็น โค๊ดลอยๆ หรือเป็น function
ถ้าเป็น function ไฟล์ index.php ไม่ได้เรียกใช้ ก็ไม่ต้อง include ก็ได้ครับ
แต่ add1.php มีการเรียกใช้ function ก็ต้อง include ที่ add1.php ด้วย
ปล.ลืมตอบคำถาม
ส่วนที่ include ที่ index.php แล้วใช้ งาน ที่ add1.php ไม่ได้ เพราะ browser เรียกใช้งานคนละไฟล์กัน
เป็นคนละ connection มันไม่ได้ต่อเนื่อง กันครับ index.php ส่วนของ server ทำเสร็จไปแล้ว
ส่งข้อมูลให้ browser เสร็จ ก็จะลบทุกอย่างออกจากหน่วยความจำ หลงเหลือ แค่ session เท่านั้น
พอ browser request มาใหม่ที่ add1.php ส่วนที่เปิดไว้ก่อนนี้มันไม่มีแล้ว ต้องเปิดใหม่ทั้งหมด
|
ประวัติการแก้ไข 2015-07-09 18:09:27
|
|
|
|
Date :
2015-07-09 18:01:25 |
By :
NewbiePHP |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือแบบนี้ครับ
การเรียกใช้งาน add1.php ในไฟล์ index.phpผ่านทาง javascript เราต้องมั่นใจได้ว่าโค้ดของ add1.php
ต้องทำงานด้วยตัวเองได้ 100% นั่นหมายความว่า ต้องรู้จักฟังก์ชั่นทุกตัวในทันทีที่ถูกเรียกครับ แต่อย่าลืมว่า client side จะทำงานหลัง
server side แน่นอน เพราะฉะนั้นไฟล์ที่ถูกโหลดด้วย javascript จะไม่มีทางรู้จักฟังก็ชั่นของ php อย่างแน่นนอน
<?php
print_r($_GET);
echo type_news($_GET['data']); //ค่าเก็ทที่ส่งมา
//ถ้าใส่แค่นี้จะเกิด Error ว่า Fatal Error: Call To Undefined Function Type_news() In
?>
หนีไม่พ้นการกำหนด include ในไฟล์ย่อยเหล่านี้ครับ
|
|
|
|
|
Date :
2015-07-09 18:16:14 |
By :
ศักดินา |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ภายใน type_news.php มีฟังชั่นง่าย ๆ ครับ
ที่อธิบายมา พอเข้าใจการทำงานทั้งหมด ว่าเกิดจากอะไร
แต่ยังมีข้อสงสัยอีกอย่าง
ทำไมตอน include type_news.php ตาม code ตย. เมื่อเราเรียกไฟล์จากเงื่อนไข ให้แสดงตรง include $page ;
'type_news.php'; มันจึงทำงานปกติครับ
ปล.สังเกตุว่าตรงเบราเซอร์หมุน ๆ มันมีการ Refresh เพจเกิดขึ้น หรือเปล่าครับ
หรือว่าเงื่อนไข switch case break มันมีการ Refresh เกิดขึ้นในตัวของมันครับ
<?php
switch ($menu) {
case "add1":
$page = 'add1.php';
break;
case "add2":
$page = 'add2.php';
break;
default:
$page = 'default.php';
}
include 'type_news.php';
?>
<a href="?menu=add1">เพิ่ม1</a>
<a href="?menu=add2">เพิ่ม2</a>
<?php
include $page ;
?>
#ขอบคุณทุกคำตอบครับ
|
ประวัติการแก้ไข 2015-07-09 18:21:24 2015-07-09 18:28:55
|
|
|
|
Date :
2015-07-09 18:20:23 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พิมพ์เสร็จเพิ่งเห็น คำตอบ ที่ 4
ขอบคุณทุกคนครับ
|
|
|
|
|
Date :
2015-07-09 18:29:59 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|