Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ขอความช่ว่ยเหลือหน่อ่ยครับ เรื่องการดึงข้อมูลจาก database มาโชว์ครับ



 

ขอความช่ว่ยเหลือหน่อ่ยครับ เรื่องการดึงข้อมูลจาก database มาโชว์ครับ

 



Topic : 136984



โพสกระทู้ ( 6 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



ขอความช่วยเหลือการเขียนโค้ดดึงข้อมูลจากdatabase มาโชว์หน่อยครับ
คือในตารางมีทั้งหมด 40 record ต้องการดึงข้อมูลมาโชว์ทีละ 10 record ครับ แล้วให้มันรันแบบออโต้ไปเลยทีละ 10 record ครับ เช่น เมื่อเวลาผ่านไป 10 วินาที ให้มันโชว์ 1-10 record แรกครับ แล้วเมื่อครบ 10 วินาทีก็ให้มันโชว์ 11-20 record ครับ โดยถึงข้อมูลจาก mysql ครับ จะใช้หลักการเขียนยังไงครับผมไม่เข้าใจ



Tag : PHP, MySQL, HTML, Laravel Framework







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2023-03-31 00:43:34 By : wattana2812 View : 396 Reply : 8
 

 

No. 1



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


เขียนโปรแกรมให้แสดง 10 รายการได้หรือยัง เขียนเสร็จแล้ว เอามาแสดง แล้วจะบอกต่อให้ว่า จะแก้ไขตรงไหน

ถ้าทำให้ทั้งหมด บอกตรงๆ ขี้เกียจเหมือนกัน






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-03-31 10:18:36 By : Chaidhanan
 


 

No. 2



โพสกระทู้ ( 6 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ผมทำได้แต่ ดึงข้อมูลมาโชว์ทั้ง 40 รายการเลยอะครับ ยังแบ่งไม่เป็นเลยครับ ผมต้องใช้ คีย์เวิดอะไรในการไปเซริทหาวิธี แบ่งทีละ 10 รายการครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-04-08 00:32:13 By : wattana2812
 

 
Code (JavaScript)
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
var batch = 0; // Current batch number

// Function to fetch and display the next batch of records
function fetchNextBatch() {
    $.getJSON('get_records.php', {batch: batch}, function(data) {
        if (data.length > 0) {
            // Append the records to your HTML element
            // For example, assuming you have a <div> element with id "records"
            var recordsDiv = $('#records');
            $.each(data, function(index, record) {
                recordsDiv.append('<p>Record ' + record.id + ': ' + record.data + '</p>');
            });
            
            // Increment the batch number for the next fetch
            batch++;
        }
    });
}

// Fetch the first batch of records
fetchNextBatch();

// Call the fetchNextBatch() function every 10 seconds
setInterval(fetchNextBatch, 10000);
</script>




get_records.php
<?php
// Connect to the database
$mysqli = new mysqli("localhost", "username", "password", "my_database");

// Check connection
if ($mysqli->connect_error) {
    die("Connection failed: " . $mysqli->connect_error);
}

// Get the current batch number from the request
$batch = isset($_GET['batch']) ? intval($_GET['batch']) : 0;

// Calculate the offset for the LIMIT clause
$offset = $batch * 10;

// Fetch 10 records from the database
$query = "SELECT * FROM my_table LIMIT $offset, 10";
$result = $mysqli->query($query);

// Fetch the records as an array
$rows = array();
while ($row = $result->fetch_assoc()) {
    $rows[] = $row;
}

// Close the database connection
$mysqli->close();

// Return the records as JSON data
header('Content-Type: application/json');
echo json_encode($rows);
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-04-08 10:23:14 By : 009
 


 

No. 4



โพสกระทู้ ( 6 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 3 เขียนโดย : 009 เมื่อวันที่ 2023-04-08 10:23:14
รายละเอียดของการตอบ ::
... ใส่ความคิดเห็นตรงนี้.......อันนี้ผมไม่เข้าใจครับ ช่วยขยายได้ไหมครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-04-10 00:25:50 By : wattana2812
 


 

No. 5



โพสกระทู้ ( 6 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 1 เขียนโดย : Chaidhanan เมื่อวันที่ 2023-03-31 10:18:36
รายละเอียดของการตอบ ::
ผมใช้ limit ในการกำหนดครับ แต่จะทำยังไงให้มัน โชว์สลับกันครับ


Code (PHP)
<?php
    include "student_db.php";
    ?>
<html>
    <head>
    <title> หน้าแสดงข้อมูล user</title>
    </head>
    <body>
    <table bordercolor=red border="1">
            <tr>
                
                <th>ชื่อ-นามสกุล</th>
                <th>เบอร์โทร</th>
                <th>ที่อยู่</th>
            </tr>

            <?php
             $sql = "SELECT * FROM user_tb LIMIT 8";
             $result=$conn->query($sql);
             if(mysqli_num_rows($result)>0){
                $i=1;
                while($row=mysqli_fetch_array($result)){
                    ?>
                    <tr>
                   
                    <td>  <?=$row['name_stu'];?> </td>
                    <td>  <?=$row['tel_stu'];?> </td>
                    <td>  <?=$row['add_stu'];?> </td>
                    </tr>

                    <?php
                    $i++;
                }
             }
             
            ?>
       
        
           
            <?php
             $sql = "SELECT * FROM user_tb LIMIT 8,8";
             $result=$conn->query($sql);
             if(mysqli_num_rows($result)>0){
                $i=1;
                while($row=mysqli_fetch_array($result)){
                    ?>
                    <tr>
                    
                    <td>  <?=$row['name_stu'];?> </td>
                    <td>  <?=$row['tel_stu'];?> </td>
                    <td>  <?=$row['add_stu'];?> </td>
                    </tr>

                    <?php
                    $i++;
                }
             }
             
            ?>
       
        
           

            <?php
             $sql = "SELECT * FROM user_tb LIMIT 16,8";
             $result=$conn->query($sql);
             if(mysqli_num_rows($result)>0){
                $i=1;
                while($row=mysqli_fetch_array($result)){
                    ?>
                    <tr>
                   
                    <td>  <?=$row['name_stu'];?> </td>
                    <td>  <?=$row['tel_stu'];?> </td>
                    <td>  <?=$row['add_stu'];?> </td>
                    </tr>

                    <?php
                    $i++;
                }
             }
             
            ?>
       
        </table> 
        
       
    </body>
</html>



ประวัติการแก้ไข
2023-04-10 00:32:26
2023-04-10 00:34:53
2023-04-10 00:47:42
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-04-10 00:30:20 By : wattana2812
 


 
ตอบความคิดเห็นที่ : 4 เขียนโดย : wattana2812 เมื่อวันที่ 2023-04-10 00:25:50
รายละเอียดของการตอบ ::
ผมแยกให้แล้ว client/server scripts
คือคุณต้องการให้แสดงข้อมูลชุดละ 10 วิ นั่นแหละตัวอย่าง

การจะปรับแก้อะไรที่เกิดขึ้นกับ user โดยตรง...ทำที่ client-side
ซึ่งก็คือ JS และการสั่งให้โปรแกรมทำงานอัตโนมัติทุกๆ ช่วงระยะเวลาที่เรากำหนด

ใช้
1. setTimeout();
https://www.w3schools.com/jsref/met_win_settimeout.asp

หรือ

2. setInterval();
https://www.w3schools.com/jsref/met_win_setinterval.asp

แต่ถ้าอยากทำใน PHP อย่างเดียว (ฝืนธรรมชาติ) มีทางเลือก คือ ทำ event loop
หรือไป websocket ซึ่งอันหลังแม้จะดีสุด แต่ก็ไกลตัว

นี่คือที่มาทำไมผมให้ตัวอย่างนี้

ไม่เข้าใจตรงไหนให้ถามเป็นจุดๆ
ไม่เข้าใจทั้งหมด ศึกษาพื้นฐาน HTML/JS ประกอบเพิ่มเติม
(จริงๆ บรรทัดไหนทำอะไร มีคอมเมนต์อธิบายไว้แล้ว แปลไม่ออก ใช้ google translate)

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-04-10 07:46:34 By : 009
 


 

No. 7



โพสกระทู้ ( 6 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 6 เขียนโดย : 009 เมื่อวันที่ 2023-04-10 07:46:34
รายละเอียดของการตอบ ::
... ใส่ความคิดเห็นตรงนี้......ทำไมผมรันแล้วมันออกเเบบนี้หรอครับ ทำไมผมรันแล้วมันออกแบบนี้ครับ



ประวัติการแก้ไข
2023-04-15 01:49:19
2023-04-15 01:49:25
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-04-15 01:46:56 By : wattana2812
 


 

No. 8



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



สถานะออฟไลน์


web server มันไม่ส่ง content type text/html หรือยังไงนั่นน่ะ
อย่างกับมันส่งเป็น text/plain เฉยๆเลย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-04-18 15:47:01 By : mr.v
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอความช่ว่ยเหลือหน่อ่ยครับ เรื่องการดึงข้อมูลจาก database มาโชว์ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่