phpbb3 ติดปัญหาการซ้อนลูป

พูดคุย phpBB3, SMF ปัญหา การติดตั้ง ปัญหา การลง Mod การแก้ไข หน้าตาบอร์ด การใช้งาน Joomla 1.5, 1.6, 1.7, 2.5 ,3.x รวมถึง Joomla 4 การใช้งาน wordpress และ CMS อื่นๆ
การตั้งคำถาม ควรระบุรุ่นที่ใช้ ในการตั้งคำตามด้วย นะ เช่น SMF 1.1.4 หรือ SMF2.0, OpenERP, Odoo และ รายละเอียดของ server OS, php เวอร์ชั่นไหน ฐานข้อมูลอะไร

Moderator: mindphp

กฎการใช้บอร์ด
คำถามหมวดนี้ ควรระบุ รายละเอียดของ Server OS, เวอร์ชั่น ของ PHP, CMS ที่ท่านใช้
รวมถึง Hosting หรือ Control Panel Hosting
ภาพประจำตัวสมาชิก
M004
PHP VIP Members
PHP VIP Members
โพสต์: 1323
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

phpbb3 ติดปัญหาการซ้อนลูป

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

สมมุตินะครับถ้าผมซ้อนลูป แบบตัวอย่าง

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

while ($topic = $db->sql_fetchrow($result))
{
    $template->assign_block_vars('topic', array(
        'TOPIC_ID' => $topic['topic_id']
    ));

    while ($post = $db->sql_fetchrow($result))
    {
        $template->assign_block_vars('topic.post', array(
            'POST_ID' => $post['post_id']
        ));
    }
} 
เวลาผมจะดึงไปใช้ในหน้า HTML ผมจะต้องคำสั่งแบบไหนครับ เพราะปกติจะใช้

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

<!-- BEGIN topic -->
 <!-- END topic -->
พอผมลองใช้

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

<!-- BEGIN topic.post -->
 <!-- END topic.post -->
ก็ error ครับ
ภาพประจำตัวสมาชิก
M004
PHP VIP Members
PHP VIP Members
โพสต์: 1323
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

Re: phpbb3 ติดปัญหาการซ้อนลูป

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

ตอนนี้ สามารถ รัน ออก ได้ผลตามที่ต้องการแล้วครับ แต่ ไม่รู้ว่าผิด หรือ ถูก โครงสร้าง

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

  <!-- BEGIN topic -->
              markup
                  <!-- BEGIN post -->
                        markup
                  <!-- END post -->    
           <!-- END topic -->
คือเรา สามารถใช้ คำสั่ง BEGIN post แทรกใน BEGIN topic
ซึ่ง BEGIN post เป็น ลูปลูกของ BEGIN topic ได้เลย
แต่ถ้าเราไม่สร้างลูปให้เป็น topic.post เราจะไม่สามารถแทรก BEGIN ได้
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41232
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: phpbb3 ติดปัญหาการซ้อนลูป

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

ผิดที่
loop นอก

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

 while ($post = $db->sql_fetchrow($result)) 
loop ใน

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

while ($post = $db->sql_fetchrow($result)) 
$result ที่เอามา ทำ loop ต้อง query มาก่อน และ ตั้งชื่อ loop นอก กับ ในต้อง ไม่ซ้ำกัน
ตอนนี้ ทั้งสอง Loop $result ชื่อซ้ำกันอยู่ครับ
ติดตาม 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
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

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

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