Q อยากทราบวิธีการบันทึกข้อมูลลงฐานข้อมูล ตามแถบเมนูฟอร์มที่กรอก

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

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

User avatar
birdkritsna
PHP Super Member
PHP Super Member
Posts: 225
Joined: 16/09/2019 9:57 am

Q อยากทราบวิธีการบันทึกข้อมูลลงฐานข้อมูล ตามแถบเมนูฟอร์มที่กรอก

Post by birdkritsna » 02/10/2019 11:42 am

คือผมมีแถบเมนูฟอร์ม อยู่ 3 อัน ซึ่งแต่ละอัน จะมีการบันทึกให้ลงฐานข้อมูล ซึ่งปัญหาคือ บันทึกได้แค่ฟอร์มเดียว จะทำอย่างไรให้ form แต่ละอัน สามารถบันทึกเข้าฐานข้อมูลได้ โดยให้มีปุ่ม submit แค่ปุ่มเดียว

1.jpg
1.jpg (27.95 KiB) Viewed 189 times
อันนี้โค๊ด insert ลงฐาน ของ แถบตัวเมนูฟอร์มตัวแรก

Code: Select all

<?php
                                                require_once 'connect.php';
                                                $sql = "INSERT INTO $table_con (name, use_date, ip)"
                                                . "VALUES ('$name' , '$date', '$ip')";
                                                mysqli_query($con, $sql) or die('Save Error');
                                                $last_id = mysqli_insert_id($con);
                                              }
                                              }
                                               ?>
อยากทราบว่า จะสามารถกำหนดแต่ละฟอร์มให้บันทึกลงฐานข้อมูล ได้ไหมครับ (แต่ละฟอร์ม บันทึกลงฐานคนละตาราง)


โค๊ดของแถบ html และ image ผมทำฟอร์มและปุ่ม submit แยกกันแต่ละฟอร์มอยู่

Code: Select all

<form class="form-horizontal" name="frm" method="post" id="form1" action="">
                        <br>
                        <div class="col-md-12">
                                    <div class="form-group">
                                        <label for="inputname" class="col-sm-2 control-label"><?php echo $lang_name; ?> : </label>
                                        <div class="col-sm-10">
                                        <input required name="name" type="text" class="form-control"  placeholder="<?php echo $lang_pleaseyourname ?>"  value="">
                                        </div>
                                    </div>
                            <br>
                            <ul class="nav nav-tabs" role="tablist">
                                <li role="presentation" class="active"><a href="#html" aria-controls="html" role="tab" data-toggle="tab"><?php echo $lang_htmllist; ?></a></li>
                                <li role="presentation"><a href="#image" aria-controls="image" role="tab" data-toggle="tab"><?php echo $lang_imagelist; ?></a></li>
                                <li role="presentation"><a href="#form" aria-controls="form" role="tab" data-toggle="tab"><?php echo $lang_formlist; ?></a></li>
                            </ul>
                            <!--------------แถบเมนู code html------------------>
                            <div class="tab-content">
                                <div role="tabpanel" class="tab-pane active" id="html"><br>
                                  <div class="col-md-12">
                                        <div class="form-group">
                                            <label for="inputarea-value" class="col-sm-2 control-label"><?php echo $lang_html; ?> :</label>
                                            <div class="col-sm-10">
                                        <div >
                                            <textarea name="html2" id="html2" ></textarea>
                                            <script>
                                                CKEDITOR.replace('html2');
                                                function CKupdate() {
                                                    for (instance in CKEDITOR.instances)
                                                        CKEDITOR.instances[instance].updateElement();
                                                }
                                            </script>
                                          </div>
                                        </div>
                                            <div class="col-md-12">
                                              <div align="center" class="g-recaptcha" required data-sitekey="<?php echo $keyrecaptcha; ?>"></div><br>
                                            </div><br>
                                              <div  class="col-md-12">
                                                <center>
                                                      <input class=" btn btn-success" type="submit" name="submit" id="submit1" value="<?php echo $lang_converter; ?>" /> &nbsp;
                                                      <input type="reset" name="reset" class="btn btn-warning" onclick="window.location = 'index2.php?lang=<?php echo $lang; ?>';">
                                                  </center>
                                              </div>    
                                        </div>
                                    </div> 
                                </div>
                    </form>
                <!--------------แถบเมนู image------------------>
                             <div role="tabpanel" class="tab-pane" id="image"><br>
                                <form class="form-horizontal" name="frm" method="post" id="form2" action="">
                               <div class="col-md-12">
                                    <div class="form-group">
                                        <label for="inputarea-value" class="col-sm-2 control-label"><?php echo $lang_image; ?> :</label>
                                        <div class="col-sm-10">
                                            <input type="file" name="picture" id="picture"><br/>  
                                        </div>
                                    </div>
                              <div class="col-md-12">
                                <div align="center" class="g-recaptcha" required data-sitekey="<?php echo $keyrecaptcha; ?>"></div><br>
                             </div><br>
                                <div  class="col-md-12">
                                  <center>
                                        <input class=" btn btn-success" type="submit" name="submit2" id="submit2" value="<?php echo $lang_converter; ?>" /> &nbsp;
                                        <input type="reset" name="reset" class="btn btn-warning" onclick="window.location = 'index2.php?lang=<?php echo $lang; ?>';">
                                    </center>
                                </div> 
                               </div>
                                </form>
                              </div>
Last edited by birdkritsna on 02/10/2019 8:09 pm, edited 2 times in total.

User avatar
tsukasaz
PHP VIP Members
PHP VIP Members
Posts: 10457
Joined: 18/04/2012 9:39 am

Re: Q อยากทราบวิธีการบันทึกข้อมูลลงฐานข้อมูล ตามแถบเมนูฟอร์มที่กรอก

Post by tsukasaz » 02/10/2019 1:47 pm

ส่วนที่ insert ข้อมูลที่แปะมา มันใช้สำหรับตารางเดียวหรือเปล่า ถ้าจะ insert 3 ตาราง ที่แต่ละตารางโครงสร้างไม่เหมือนกัน

ก็น่าจะต้องมี insert 3 ชุด โดยอาจจะตั้ง if มาสำหรับเช็คว่า ข้อมูลที่ submit มา ต้อง insert เข้าตารางไหน
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)

User avatar
birdkritsna
PHP Super Member
PHP Super Member
Posts: 225
Joined: 16/09/2019 9:57 am

Re: Q อยากทราบวิธีการบันทึกข้อมูลลงฐานข้อมูล ตามแถบเมนูฟอร์มที่กรอก

Post by birdkritsna » 02/10/2019 2:09 pm

tsukasaz wrote:ส่วนที่ insert ข้อมูลที่แปะมา มันใช้สำหรับตารางเดียวหรือเปล่า ถ้าจะ insert 3 ตาราง ที่แต่ละตารางโครงสร้างไม่เหมือนกัน

ก็น่าจะต้องมี insert 3 ชุด โดยอาจจะตั้ง if มาสำหรับเช็คว่า ข้อมูลที่ submit มา ต้อง insert เข้าตารางไหน
ครับผม แล้วถ้าจะกำหนดเงื่อนไข เพื่อเช็คข้อมูลที่ submit มา ต้องกำหนด id ที่ตัวแปรไหนครับ พอดีผมไม่ได้กำหนด form action ไว้

User avatar
birdkritsna
PHP Super Member
PHP Super Member
Posts: 225
Joined: 16/09/2019 9:57 am

Re: Q อยากทราบวิธีการบันทึกข้อมูลลงฐานข้อมูล ตามแถบเมนูฟอร์มที่กรอก

Post by birdkritsna » 02/10/2019 8:20 pm

birdkritsna wrote:
tsukasaz wrote:ส่วนที่ insert ข้อมูลที่แปะมา มันใช้สำหรับตารางเดียวหรือเปล่า ถ้าจะ insert 3 ตาราง ที่แต่ละตารางโครงสร้างไม่เหมือนกัน

ก็น่าจะต้องมี insert 3 ชุด โดยอาจจะตั้ง if มาสำหรับเช็คว่า ข้อมูลที่ submit มา ต้อง insert เข้าตารางไหน
ครับผม แล้วถ้าจะกำหนดเงื่อนไข เพื่อเช็คข้อมูลที่ submit มา ต้องกำหนด id ที่ตัวแปรไหนครับ พอดีผมไม่ได้กำหนด form action ไว้
ตอนนี้ผมลอง กำหนด id ทั้ง 3 ฟอร์มไว้แล้ว เลยกำหนดเงื่อนไขตอน insert แต่เวลา กด submit insert ยังได้แค่ตารางแรกอยู่

Code: Select all

 if (isset($_POST['submit']) && $response['success'] == true) {
                                $submit1 = @$_POST['submit1'];
                                $html2 = $_POST['html2'];
                                $name = $_POST['name'];
                                
                                file_put_contents('./file/'. $name. ".html", $html2);
                                   
                                date_default_timezone_set("Asia/Bangkok");
                                $datetime = time();
                                $date = date("Y-m-d  H:i:s", time());
                                $ip = $_SERVER["REMOTE_ADDR"];
                                ?>
                              
                            <br>
                            <br>
                                <div align="center">
                                    <h3><?php echo $lang_userinformation;?></h3>
                                    <table class="table">                
                                        <tbody>
                                    <!--  ชื่อ ผู้ใช้้งาน   -->
                                            <tr class="active">
                                                <td align="right" width="50%">
                                                    <?php echo "ชื่อ : "; ?>
                                                </td>
                                                <td>
                                                <?php echo $name ?>
                                                </td>   
                                            </tr>
                                              <tr class="active">
                                            <td align="right" width="50%">
                                                <?php echo $lang_recordtime . " :" ?>
                                            </td>
                                            <td>
                                                <?php echo date("m-d-Y  H:i:s", time()); ?>
                                            </td>
                                        </tr>
                                        <tr class="warning">
                                            <td align="right" width="50%">
                                                <?php echo $lang_ipaddress . "  : "; ?>
                                            </td>
                                            <td>
                                                <?php echo $ip; ?>
                                            </td>
                                        </tr>
                                    </tbody>
                                </table>
                                                <?php
                                                require_once 'connect.php';
                                                $sql = "INSERT INTO $table_con (name, filename,use_date, ip)"
                                                . "VALUES ('$name'  ,'$html2', '$date', '$ip')";
                                                mysqli_query($con, $sql) or die('Save Error');
                                                $last_id = mysqli_insert_id($con);
                                              }
                                              
                                    else if (isset($_POST['submit2']) && $response['success'] == true) {
                                    $submit2 = @$_POST['submit2'];
                                    $name = $_POST['name'];
                                    $datetime = time();
                                    $date = date("Y-m-d  H:i:s", time());
                                    $ip = $_SERVER["REMOTE_ADDR"];
                                    $picture = (isset($_POST['picture']) ? $_POST['picture'] : '');
                                    $numrand = (mt_rand());
                                    $upload=$_FILES['picture'];

                                            if($upload <> '') { 

                                            //โฟลเดอร์ที่เก็บไฟล์
                                            $path="./images/";
                                            //ตัวขื่อกับนามสกุลภาพออกจากกัน
                                            $type = strrchr($_FILES['picture']['names'],".");
                                            //ตั้งชื่อไฟล์ใหม่เป็น สุ่มตัวเลข+วันที่
                                            $newname ='picture1'.$numrand.$date;

                                            $path_copy=$path.$newname;
                                            $path_link="./images/".$newname;
                                            //คัดลอกไฟล์ไปยังโฟลเดอร์
                                            move_uploaded_file($_FILES['picture']['tmp_name'],$path_copy);  

                                            }
                                  

thatsawan
PHP VIP Members
PHP VIP Members
Posts: 19364
Joined: 31/03/2014 10:02 am
Contact:

Re: Q อยากทราบวิธีการบันทึกข้อมูลลงฐานข้อมูล ตามแถบเมนูฟอร์มที่กรอก

Post by thatsawan » 03/10/2019 4:18 pm

ส่วนนี้ทำได้หรือยัง ยังติดปัญหายุมั้ย

User avatar
birdkritsna
PHP Super Member
PHP Super Member
Posts: 225
Joined: 16/09/2019 9:57 am

Re: Q อยากทราบวิธีการบันทึกข้อมูลลงฐานข้อมูล ตามแถบเมนูฟอร์มที่กรอก

Post by birdkritsna » 03/10/2019 4:30 pm

thatsawan wrote:ส่วนนี้ทำได้หรือยัง ยังติดปัญหายุมั้ย
ผมลืมไปว่าปัญหาคล้ายๆกัน ครับ
viewtopic.php?f=6&t=60987&p=166836#p166836

Post Reply

Return to “Programming - PHP”

Who is online

Users browsing this forum: No registered users and 19 guests