สอบถามการเขียน phpBB เรื่อง Event เมื่อเขียนแล้วสามารถแสดงได้ทุกหน้า

กฎการใช้บอร์ด
คำถามหมวดนี้ ควรระบุ รายละเอียดของ Server OS, เวอร์ชั่น ของ PHP, CMS ที่ท่านใช้
รวมถึง Hosting หรือ Control Panel Hosting

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: สอบถามการเขียน phpBB เรื่อง Event เมื่อเขียนแล้วสามารถแสดงได้ทุกหน้า

Re: สอบถามการเขียน phpBB เรื่อง Event เมื่อเขียนแล้วสามารถแสดงได้ทุกหน้า

โดย AePongsak » 08/02/2018 5:22 pm

/ext/projectname/extensionname/event/listner.php

1. ผมใช้ PHP Event >>>> core.page_header แล้วแปลงเป็น >> page_header

2. ตั้ง public function page_header($event)

3. ส่งค่าเพื่อจะไปแสดงใน Template

$this->template->assign_vars(array(
'A_TOPIC_POSTS' => $user_count,
));


4. ค่าที่ Query มาถูกส่งไป Template ด้วย >>>> A_TOPIC_POSTS

โค้ด: เลือกทั้งหมด

 static public function getSubscribedEvents() {
      return array(
          'core.page_header' => 'page_header',      
      );
     }

โค้ด: เลือกทั้งหมด

     public function page_header($event) {
      global $db, $phpbb_root_path, $phpEx;

       $sql = 'SELECT COUNT(post_id) AS id FROM '.TOPICS_TABLE;
      $result = $db->sql_query($sql);
      $user_count = (int) $db->sql_fetchfield('id');
      $db->sql_freeresult($result);


      $this->template->assign_vars(array(
          'A_TOPIC_POSTS' => $user_count,
      ));
      print_r($user_count);
     }

สอบถามการเขียน phpBB เรื่อง Event เมื่อเขียนแล้วสามารถแสดงได้ทุกหน้า

โดย AePongsak » 08/02/2018 4:47 pm

:baa:
ต้องการหา Event ของ phpBB ที่ Query ข้อมูลมาแล้วสามารถไปแสดงที่ Template ได้ทุกหน้า

ข้างบน