โค้ด แสดงข่าว MySQL

โค้ดแสดงข่าว คล้ายๆ หน้าเว็บผม โดยการอ่านข่าวจาก MySQL ต้องเขียนข่าวลงฐานข้อมูลเอาเองนะครับ อาจดัดแปลงดึงมาจากบอร์ดก็ได้

<style type="text/css">
#newsdiv {
  height: 104px;
}

#wait2 {
  position: relative;
  top: 40%;
  left: 40%;
}
</style>


<div id=newsdiv><div id=wait2><img src=../images/wait2.gif align=absmiddle> กำลังโหลด...</div></div>

<script language=Javascript>
var images=new Array();
var dats=new Array();
<?
  //ค่ากำหนดของ ฐานข้อมูล
  $host="localhost";
  $username="root";
  $password="";
  $dbname="mydb";
  $table="news";
  
  $new_count=3;

  //เชื่อมต่อกับ MySQL
  $connect= mysql_connect($host, $username, $password) or die("ไม่สามารถเชื่อมต่อฐานข้อมูลได้");
  $db=mysql_select_db($dbname) or die("ฐานข้อมูลไม่ถูกต้อง");
  //คำสั่ง SQL ให้อ่านฐานข้อมูล
  $sql="SELECT * FROM $table ORDER BY id DESC Limit 0, $new_count";
  //Query ฐานข้อมูล
  $query=mysql_query($sql) or die("ไม่สามารถอ่านฐานข้อมูลได้");
  //จำนวนข้อมูลทั้งหมดที่อ่านได้
  $num_rows=mysql_num_rows($query);

  for ($i=0; $i<$num_rows; $i++) {
    $result=mysql_fetch_array($query);
    echo "images[$i]=new Image(); ";
    $pic=$result[picture];
    echo "dats[$i]='<table><tr><td>$result[image]</td><td valign=top>$result[message]</td></tr></table>'; ";
  }
  
  //ยกเลิกการติดต่อกับฐานข้อมูล
  mysql_close($connect);
?>
var id=0;
function displayimage() {
  switch (Math.floor(Math.random()*7)) {
  case 6: filterstring="progid:DXImageTransform.Microsoft.Checkerboard(squaresX=12, squaresY=8, direction='right', duration=1)"; break
  case 5: filterstring="progid:DXImageTransform.Microsoft.Pixelate(duration=3)"; break
  case 4: filterstring="progid:DXImageTransform.Microsoft.Fade(duration=3,overlap=1.0)"; break
  case 3: filterstring="progid:DXImageTransform.Microsoft.GradientWipe(GradientSize=1.0, Duration=3, Motion=reverse, wipeStyle=1)"; break
  case 2: filterstring="progid:DXImageTransform.Microsoft.GradientWipe(GradientSize=1.0, Duration=3, wipeStyle=1)"; break
  case 1: filterstring="progid:DXImageTransform.Microsoft.GradientWipe(GradientSize=1.0, Duration=3, Motion=reverse)"; break
  default: filterstring="progid:DXImageTransform.Microsoft.GradientWipe(GradientSize=1.0, Duration=3)"; break
  }

  if (document.getElementById) {
    var imgobj=document.getElementById("newsdiv");
    
    if (imgobj.filters && window.createPopup) {
      imgobj.style.filter=filterstring;
      imgobj.filters[0].Apply();
    }
    imgobj.innerHTML=dats[id];
    if (imgobj.filters && window.createPopup) imgobj.filters[0].Play();
    
    id++;
    if (id==dats.length) id=0;
  }
}
window.setInterval("displayimage()", 5000);
</script>


ฐานข้อมูล mydb - ตาราง news ทำงานอยู่บน localhost

# phpMyAdmin SQL Dump
# version 2.5.7-pl1
# http://www.phpmyadmin.net
#
# โฮสต์: localhost
# เวลาในการสร้าง: 23 ต.ค. 2006 น.
# รุ่นของเซิร์ฟเวอร์: 5.0.16
# รุ่นของ PHP: 4.4.1
#
# ฐานข้อมูล : `mydb`
#

# --------------------------------------------------------

#
# โครงสร้างตาราง `news`
#

CREATE TABLE `news` (
  `id` int(11) NOT NULL auto_increment,
  `message` text,
  `picture` text,
  `image` text,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

#
# dump ตาราง `news`
#

INSERT INTO `news` VALUES (1, 'AJAX Chat room เวอร์ชั่นสมบูรณ์<br />(cool) เสร็จแล้ว ครับ<br />ดูรายละเอียดได้ <a href=https://www.goragod.com/view.php?module=howto&category=ajax&wb_id=1 target=blank>ที่นี่</a>', '../news/chat1.jpg', '<a href=https://www.goragod.com/chat2/index.php target=blank title=สนทนา (cool)><img src=../news/chat1.jpg border=0 align=absmiddle></a>');
INSERT INTO `news` VALUES (2, 'ดาวน์โหลด AJAX Chat room<br />(beta) ได้ <a href=https://www.goragod.com/view.php?module=howto&category=ajax&wb_id=1 target=blank>ที่นี่</a>', '../news/chat2.jpg', '<a href=https://www.goragod.com/chat3/index.php target=blank title="สนทนา (beta)"><img src=../news/chat2.jpg border=0 align=absmiddle></a>');
    

ผู้เขียน goragod โพสต์เมื่อ 31 มี.ค. 2551 เปิดดู 20,511 ป้ายกำกับ PHPJavascript
^