่javascript โชว์ว่า undefined แก้้ยังไงดีคะ
เป็นการแสดงข้อความให้สไลด์อัตโนมัติค่ะ แต่ติดปัญหาตรงที่ว่าข้อความที่โชว์ออกมามันมีข้อความว่า "undefined" ออกมาด้วยค่ะ เลยไม่รู้ว่าต้องแก้ยังไงค่ะ และข้อความที่โชว์นั้นเป็นแบบ ramdom ค่ะ ถ้าต้องการเปลี่ยนจาก random เป็นแบบเรียงลำดับตาม id ในฐานข้อมูลควรทำไงดีคะ รบกวนผู้รู้หน่อยค่ะ
----code------
<SCRIPT type="text/javascript">
var quotations = new Array()
<?
$strSQL="select * from tb_page where mainpage_id=34 order by page_id DESC";
$strQuery=mysql_query($strSQL);
$i=0;
while($strResult=mysql_fetch_array($strQuery)){
$i=$i+1;
?>
quotations[<?=$i;?>]= "<?=$strResult["page_detail_th"];?> "
<?
}
?>
function display()
{
a=Math.floor(Math.random()*quotations.length)
document.getElementById('quotation').innerHTML=quotations[a]
setTimeout("display()",1000)
}
</SCRIPT>
</head>
<body>
<div id="quotation">
<SCRIPT type="text/javascript">display()</SCRIPT>
</div>
----code------
<SCRIPT type="text/javascript">
var quotations = new Array()
<?
$strSQL="select * from tb_page where mainpage_id=34 order by page_id DESC";
$strQuery=mysql_query($strSQL);
$i=0;
while($strResult=mysql_fetch_array($strQuery)){
$i=$i+1;
?>
quotations[<?=$i;?>]= "<?=$strResult["page_detail_th"];?> "
<?
}
?>
function display()
{
a=Math.floor(Math.random()*quotations.length)
document.getElementById('quotation').innerHTML=quotations[a]
setTimeout("display()",1000)
}
</SCRIPT>
</head>
<body>
<div id="quotation">
<SCRIPT type="text/javascript">display()</SCRIPT>
</div>
// do some thing
}
มีหลายวิธี ขึ้นกับชนิดข้อมูลที่มี ด้านบนเป็นวิธีหนึ่ง การแก้ไขจริงๆอาจต้องดูความต้องการที่ต้องการนะครับ เช่น อาจต้องวนลูปเพื่อสุมใหม่หากไม่มีเป็นต้น
if(a >=0 && a < quotations.length){
// do some thing
}
นี่ก็อีกวิธี