A-AA+then

การ Query ข้อมูลมาแสดงใน javascripts เป็นช่วง ๆ

1,705
<script type="text/javascript">
var value1=new Array()

value1[0]='ข้อความที่ 1'

</script>


ตรง value1[0] ผมต้องการให้ออมาถึงแค่ value1[2]

โดยผมใช้ for loop ครับ ตรงนี้ไม่มีปัญหาอะไรครับ
แต่ติดตรงที่ถ้า ใน value1[0]='ข้อความที่ 1'

ไอ้ตรง 'ข้อความที่ 1' นั้นผมไป query ข้อมูลจาก db มาครับ และสมมติว่า query มาได้ 10 เรคคอร์ด แต่ผมต้องการให้แสดงแทนตรง 'ข้อความที่1' เพียงแค่ 3 เรคคอร์ดครับ และเรคคอร์ดที่ 4-6 นั้นไปแสดงใน 'ข้อความที่ 2' ของ value1[1] ตลอดจนเรคคอร์ดที่ 7-9 นั้นไปแสดงใน 'ข้อความที่ 3' ของ value1[2] ครับ

มีวิธีการเขียนอย่างไรครับ

4 ความคิดเห็น

<?php
 $j=0;
 for($x=0; $x<3; $x++){  
?>

 value1[<?php echo $j++;?>]='<?php $i=1;while($row = $result->fetch_array()){echo $row['n_id']."<br>";if($i%3==0)break;$i++;}?>'

<?php
 }
?>


ถ้าผมเขียนแบบนี้แล้วมันจะแสดงออกมาไม่หมดครับคือถ้ามี 10 เรคคอร์ดเนี่ยมันจะแสดงแบบนนี้ครับ

10
9
8

7
6
5

4
3
2


แค่นี้ครับ  แต่ 1 ไม่แสดง
 

1

ไม่รู้ว่าใครสอนให้เขียนโค้ดแบบนี้ ผมดูไม่รู้เรื่องเลย ใครดูออกช่วยตอบที

บางครั้ง การเขียนโค้ดให้อ่านได้ง่ายๆก็ช่วยได้นะ มันทำให้เรามองปัญหาควงามผิดพลาดอันเกิดจากการอ่านออก

<?php
$a = 0;
while($row = $result->fetch_array()) {
    if ($a < 3) {
        echo "value1[$a] = '$row[n_id]';";// สำหรับ record ที่ 0 - 2
    } else {
        echo "value1[$a] = 'ข้อความที่ 3';"; // record อื่นๆ
    }
    $a++;
}
?>

2

 if ($a < 3) {
        echo "value1[$a] = '$row[n_id]';"; 
   }

ถ้าตรง $row[n_id]  ผมต้องการให้มันออก 3 เรคคอร์ดละครับ  ผมหมายถึงว่า

รันแล้วออกในรูปแบบนี้ครับ

<script type="text/javascript">

var value1=new Array()

value[0] = 'ข้อความที่1<br>ข้อความที่2<br>ข้อความที่3'
value[1] = 'ข้อความที่4<br>ข้อความที่5<br>ข้อความที่6'
value[2] = 'ข้อความที่7<br>ข้อความที่8<br>ข้อความที่9'

</script>

โดยที่ value[] นั้นออกมาแค่ 0-2
และใน value[] แต่ละอันนั้นไป query ข้อมูลจาก db มาแสดง value[] ละ 3 เรคคอร์ด และ
เรคคอร์ดที่ 4-6 ไปแสดงใน value[] ถัดไป นะครับ

3

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

หรือไม่ก็ลองทำความเข้าใจกับคำตอบที่ให้ไปแล้ว และลองประยุกต์ดู
4
^