สอบถามเกี่ยวกับการเรียกใช้ oauth facebook ของ phpBB

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderator: mindphp, ผู้ดูแลกระดาน

flook
PHP VIP Members
PHP VIP Members
โพสต์: 3751
ลงทะเบียนเมื่อ: 06/06/2022 9:43 am

สอบถามเกี่ยวกับการเรียกใช้ oauth facebook ของ phpBB

โพสต์ที่ยังไม่ได้อ่าน โดย flook »

Programming - PHP-1.png
Programming - PHP-1.png (29.66 KiB) Viewed 4719 times
วิธีเรียกใช้งาน class oauth ของ phpBB ครับ
เบื้องต้นลองค้นหาแล้วแต่ไม่เจอรูปแบบการเรียกใช้งานที่อยู่นอกไฟล์ เกี่ยวกับ class ที่มีการทำงาน login ครับ

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

       require_once('phpbb/auth/provider/oauth/oauth.php');
        require_once('phpbb/auth/provider/oauth/token_storage.php');

        // สร้างอ็อบเจกต์ OAuth
       
        $oauth = new \phpbb\auth\provider\oauth\oauth(
            $config,
            $db,
            $db_auth,
            $dispatcher,
            $language,
            $request,
            $service_providers,
            $user,
            $oauth_token_table,
            $oauth_state_table,
            $oauth_account_table,
            $users_table,
            $root_path,
            $php_ext
        );


ลองเรียกประมาณนี้ เหมือนจะมีแจ้งเติอนขึั้นครับ

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

[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $config
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $db
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $db_auth
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $dispatcher
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $language
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $request
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $service_providers
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $user
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $oauth_token_table
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $oauth_state_table
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $oauth_account_table
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $users_table
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $root_path
[phpBB Debug] PHP Warning: in file [ROOT]/ext/mindphp/m_register_facebook/controller/form.php on line 122: Undefined variable $php_ext

Fatal error: Uncaught TypeError: phpbb\auth\provider\oauth\oauth::__construct(): Argument #1 ($config) must be of type phpbb\config\config, null given, called in C:\xampp8-1\htdocs\phpBB3_f2\ext\mindphp\m_register_facebook\controller\form.php on line 121 and defined in C:\xampp8-1\htdocs\phpBB3_f2\phpbb\auth\provider\oauth\oauth.php:98 Stack trace: #0 C:\xampp8-1\htdocs\phpBB3_f2\ext\mindphp\m_register_facebook\controller\form.php(121): phpbb\auth\provider\oauth\oauth->__construct(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) #1 C:\xampp8-1\htdocs\phpBB3_f2\vendor\symfony\http-kernel\HttpKernel.php(151): mindphp\m_register_facebook\controller\form->login('login') #2 C:\xampp8-1\htdocs\phpBB3_f2\vendor\symfony\http-kernel\HttpKernel.php(68): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(phpbb\symfony_request), 1) #3 C:\xampp8-1\htdocs\phpBB3_f2\app.php(35): Symfony\Component\HttpKernel\HttpKernel->handle(Object(phpbb\symfony_request)) #4 {main} thrown in C:\xampp8-1\htdocs\phpBB3_f2\phpbb\auth\provider\oauth\oauth.php on line 98


พอมีวิธีใช้งานไหมครับ ต้องการเขียน login facebook แยกจากตัวหลักของ phpBB แต่หา class และวิธีเรียกใช้ไม่เจอครับ
ภาพประจำตัวสมาชิก
eange08
PHP VIP Members
PHP VIP Members
โพสต์: 24270
ลงทะเบียนเมื่อ: 22/12/2020 10:09 am

Re: สอบถามเกี่ยวกับการเรียกใช้ oauth facebook ของ phpBB

โพสต์ที่ยังไม่ได้อ่าน โดย eange08 »

ถ้าเรียกใช้ไฟล์จาก phpBB จะไม่ใช่ require_once นะคะ
รูปแบบการเรียก

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

 /* @var $phpbb_log \phpbb\log\log */
            $phpbb_log = $phpbb_container->get('log');
ลองดูวิธีการเรียกใช้ใน \phpbb\auth\auth.php ตรงฟังกชั่น login ก็ได้ค่ะ
flook
PHP VIP Members
PHP VIP Members
โพสต์: 3751
ลงทะเบียนเมื่อ: 06/06/2022 9:43 am

Re: สอบถามเกี่ยวกับการเรียกใช้ oauth facebook ของ phpBB

โพสต์ที่ยังไม่ได้อ่าน โดย flook »

eange08 เขียน: 13/07/2023 4:17 pm ถ้าเรียกใช้ไฟล์จาก phpBB จะไม่ใช่ require_once นะคะ
รูปแบบการเรียก

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

 /* @var $phpbb_log \phpbb\log\log */
            $phpbb_log = $phpbb_container->get('log');
ลองดูวิธีการเรียกใช้ใน \phpbb\auth\auth.php ตรงฟังกชั่น login ก็ได้ค่ะ
เบื้องต้นผมได้ลองตามวิธีนี้ดูสามารถใช้งานได้ครับ
โดยการเรียกใช้งานผ่านวิธีนี้ $this->phpbb_container->get(''); เราไม่จำเป็นต้องส่งตัวแปรเข้าไปเหมือนกับ
การใช้ require_once

ตัวอย่าง code

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

 require_once('phpbb/auth/provider/oauth/service/facebook.php');
$facebook = new \phpbb\auth\provider\oauth\service\facebook($this->config, $this->request);

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

    /* @var $facebook \phpbb\auth\provider\oauth\service\facebook */
        $facebook = $this->phpbb_container->get('auth.provider.oauth.service.facebook');

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 47815
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: สอบถามเกี่ยวกับการเรียกใช้ oauth facebook ของ phpBB

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ใน container ที่เราประกาศมาเป็นตัวแปลมีทุกอย่างในนั้นให้ใช้
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 17