ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

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

Moderator: mindphp

Forum rules
คำถามหมวดนี้ ควรระบุ รายละเอียดของ Server OS, เวอร์ชั่น ของ PHP, CMS ที่ท่านใช้
รวมถึง Hosting หรือ Control Panel Hosting
User avatar
pnut
PHP Super Member
PHP Super Member
Posts: 488
Joined: 08/08/2016 10:48 am

ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

Post by pnut »

ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

ผมจะบันทึกข้อมูลตามแบบฟอร์มนี้
Capture.JPG
Capture.JPG (23.59 KiB) Viewed 254 times
โดยปกติเมื่อทำการกด Submit ระบบก็จะบันทึกลงตารางข้อมูลที่ชื่อ ตารางสาเหตุของโรค
โดยตารางข้อมูลดังนี้
223.JPG
223.JPG (14.74 KiB) Viewed 254 times
โดยผมอยากให้สามารถบันทึกข้อมูลอีกตารางหนึ่งด้วยที่มือว่า TTT ด้วยโดยนำค่าของ ID สาเหตุและ ID ของโรคของมาบันทึกลงตามตารางข้อมูลดังต่อไปนี้
Capture.JPG
Capture.JPG (9.86 KiB) Viewed 254 times
โค้ด INSERT

Code: Select all

 $sql = ' INSERT ' . $table_prefix . 'm_topic_portal' . $db->sql_build_array('INSERT', $sql_ary);
                            $db->sql_query($sql);
                            meta_refresh(2, $this->u_action);
                            trigger_error($user->lang['SHOW_INSERT'] . adm_back_link($this->u_action));
User avatar
thatsawan
PHP VIP Members
PHP VIP Members
Posts: 28523
Joined: 31/03/2014 10:02 am
Contact:

Re: ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

Post by thatsawan »

ถ้าเราบันทึกตารางแรกได้ แล้ว ต้องการเอา ID ที่บึนทึกได้ไปใส่อีกตาราง ได้โดยใช้
$db->sql_nextid();

ตัวอย่าง

Code: Select all

  $sql = 'INSERT INTO ' . USERS_TABLE . ' ' . $db->sql_build_array('INSERT', $user_ary);
$db->sql_query($sql);

$user_id = $db->sql_nextid();  
User avatar
pnut
PHP Super Member
PHP Super Member
Posts: 488
Joined: 08/08/2016 10:48 am

Re: ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

Post by pnut »

USERS_TABLE คือชื่อตารางที่สองเหรอครับ
User avatar
pnut
PHP Super Member
PHP Super Member
Posts: 488
Joined: 08/08/2016 10:48 am

Re: ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

Post by pnut »

' ' ต้องใส่อะไรลงไปครับ
User avatar
thatsawan
PHP VIP Members
PHP VIP Members
Posts: 28523
Joined: 31/03/2014 10:02 am
Contact:

Re: ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

Post by thatsawan »

อันนี้เเค่ตัวอย่าง
pnut wrote:USERS_TABLE คือชื่อตารางที่สองเหรอครับ
ถ้าอยากได้ ID ของตารางที่ เพิ่ง insert เข้าไป ให้ใช้

Code: Select all

$a = $db->sql_nextid(); 
ต่อท้ายยย ก็จะได้ เอามาใส่ในตารางที่ 2 ต่อไป..
User avatar
pnut
PHP Super Member
PHP Super Member
Posts: 488
Joined: 08/08/2016 10:48 am

Re: ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

Post by pnut »

แบบนี้เหรอครับ

Code: Select all

 $user_ary = array(
                              
                        'id_diagseat' => $id,
                                );

Code: Select all

$sql = ' INSERT ' . $table_prefix . 'm_causative ' . $db->sql_build_array('INSERT', $sql_ary);                           
                            $db->sql_query($sql);
                            $id = $db->sql_nextid();
                            $sql = 'INSERT INTO ' . $table_prefix . 'm_map_diagseat ' . $db->sql_build_array('INSERT', $user_ary);
                            $db->sql_query($sql);
User avatar
pnut
PHP Super Member
PHP Super Member
Posts: 488
Joined: 08/08/2016 10:48 am

Re: ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

Post by pnut »

หรือแบบนี้ครับ
$sql = ' INSERT INTO ' . $table_prefix . 'm_causative ' . $db->sql_build_array('INSERT', $sql_ary);
$db->sql_query($sql);
$id = $db->sql_nextid();
ต้องมีโค้ด INSERT อีกบรรทัดไหมครับ
User avatar
pnut
PHP Super Member
PHP Super Member
Posts: 488
Joined: 08/08/2016 10:48 am

Re: ผมเขียน extension phpBB อยากทราบวิธีการบันทึกข้อมูลลงมากกว่า 2 ตาราง

Post by pnut »

case 'insert' :
$id = $row['id'];
$user_ary = array(
'id_diagseat' => $id,
);
$sql = ' INSERT INTO ' . $table_prefix . 'm_causative ' . $db->sql_build_array('INSERT', $sql_ary);
$db->sql_query($sql);
$id = $db->sql_nextid();
$sql = ' INSERT INTO ' . $table_prefix . 'm_map_diagseat ' . $db->sql_build_array('INSERT', $user_ary);
$db->sql_query($sql);


เขียนแบบนี้ถูกไหมครับ
Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM”

Who is online

Users browsing this forum: No registered users and 5 guests