Viewing file: clsTable.php (5.74 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?
class clsTable{
var $strTable=""; //สตริงของทั้งตาราง
var $strTableHeader=""; //สตริงส่วนนหัวตาราง
var $strTableRow=""; //สตริง 1 แถว
var $strTableRows=""; //สตริงรวมหลายๆแถว
var $strTableFooter=""; //สตริงส่วนท้ายตาราง
var $bgColor="#dddddd"; //สีพื้นของทั้งตาราง
var $borderColor="#ffffff"; //สีของกรอบตาราง
var $align=""; //การจัดตำแหน่งของตาราง left right center
var $width=""; //ความกว้างของตาราง
var $cellSpacing="1"; //
var $cellPadding="2"; //
var $border="0"; //ความหนาของเส้นกรอบตาราง
var $bgImg=""; //ชื่อรูปภาพพื้นหลังของตาราง
var $class=""; //ชื่อ style sheet class ที่กำหนดไว้สำหรับตาราง
var $headerClass=""; //ชื่อ style sheet class ที่กำหนดไว้สำหรับหัวตาราง
var $headerImg=""; //ชื่อรูปภาพพื้นหลังของหัวตาราง
var $headerBgColor="#ffeedd"; //สีพี้นของหัวตาราง
var $headerAlign=""; //การจัดตำแหน่งของหัวคอลัมน์ทุกคอลัมน์จะเหมือนกันหมด
var $rowClass=""; //ชื่อ style sheet class ที่กำหนดไว้สำหรับแถวของตาราง
var $rowImg=""; //ชื่อรูปภาพพื้นหลังของแถว
var $rowOddBgColor="#ffffff"; //สีของแถวคี่
var $rowEvenBgColor="#fbfbfb"; //สีของแถวคู่
var $rowAlign=""; //การจัดตำแหน่งของข้อมูลในแถวทุกคอลัมน์จะเหมือนกันหมด
var $footerClass=""; //ชื่อ style sheet class ที่กำหนดไว้สำหรับท้ายตาราง
var $footerImg=""; //ชื่อรูปภาพพื้นหลังของท้ายตาราง
var $footerBgColor="#eeeeee"; //สีพี้นของท้ายตาราง
var $footerAlign=""; //การจัดตำแหน่งของข้อมูลท้ายตาราง ทุกคอลัมน์จะเหมือนกันหมด
var $aHeader; //อะเรย์ของข้อความหัวตาราง
var $aRow; //อะเรย์ของแถว
function clsTable($aContentsHeader=array()){
$this->aHeader=$aContentsHeader;
}
function clear(){
$this->strTable="";
$this->strTableHeader="";
$this->strTableRow="";
$this->strTableRows="";
$this->strTableFooter="";
}
function tableStart(){
return "<table bgcolor=\"$this->bgColor\" align=\"$this->align\" width=\"$this->width\" cellspacing=\"$this->cellSpacing\" cellpadding=\"$this->cellPadding\" border=\"$this->border\" background=\"$this->bgImg\" bordercolor=\"$this->borderColor\" class=\"$this->class\">\n";
}
function tableEnd(){
return "</table>\n";
}
function rowStart($odd1Even0=1, $bgColor="ffffff"){
//<tr ...>
$this->strTableRow="";
$this->strTableRow="<tr align=\"$this->rowAlign\" ";
if ($bgColor<>"ffffff")
$this->strTableRow.="bgcolor=\"$bgColor\" ";
elseif ($odd1Even0==1)
$this->strTableRow.="bgcolor=\"$this->rowOddBgColor\" ";
elseif ($odd1Even0==0)
$this->strTableRow.="bgcolor=\"$this->rowEvenBgColor\" ";
$this->strTableRow.="background=\"$this->rowImg\" class=\"$this->rowClass\">\n";
}
function addCellH($content, $align="center", $colSpan=1, $rowSpan=1){
//<th ...>xxx</th>
$this->strTableHeader.="<th align=\"$align\" colspan=\"$colSpan\" rowspan=\"$rowSpan\" bgcolor=\"$this->headerBgColor\">$content</th>\n";
}
function addCell($content, $align="left", $bgColor="", $colSpan=1, $rowSpan=1){
//<td ...>xxx</td>
$this->strTableRow.="<td align=\"$align\" colspan=\"$colSpan\" rowspan=\"$rowSpan\" bgcolor=\"$bgColor\" >$content</td>\n";
}
function rowEnd(){
//
$this->strTableRow.="</tr>\n";
$this->strTableRows.=$this->strTableRow;
}
function header(){
$this->strTableHeader="<tr align=\"$this->headerAlign\" bgcolor=\"$this->headerBgColor\" background=\"$this->headerImg\" class=\"$this->headerClass\">\n";
for ($i=0; $i<count($this->aHeader); $i++){
$this->addCellH($this->aHeader[$i], $this->headerAlign);
}
$this->strTableHeader.="</tr>\n";
return $this->strTableHeader;
}
function addRow($aContents, $odd1Even0=1){
$this->strTableRow="";
$this->strTableRow="<tr align=\"$this->rowAlign\" valign=\"middle\" ";
if ($odd1Even0==1)
$this->strTableRow.="bgcolor=\"$this->rowOddBgColor\" ";
else
$this->strTableRow.="bgcolor=\"$this->rowEvenBgColor\" ";
$this->strTableRow.="background=\"$this->rowImg\" class=\"$this->rowClass\">\n";
for ($i=0; $i<count($aContents); $i++){
$this->addCell($aContents[$i], $this->rowAlign);
}
$this->strTableRow.="</tr>\n";
$this->strTableRows.=$this->strTableRow;
}
function rows(){
return $this->strTableRows;
}
function footer(){
return $this->strTableFooter;
}
function output(){
return $this->tableStart().$this->header().$this->rows().$this->footer().$this->tableEnd();
}
}
//
//$oTbl = new clsTable(array("สาระน่ารู้"));
//$oTbl->headerAlign="left";
//$oTbl->width=200;
//$s="<li>สาระน่ารู้ 1
// <li>สาระน่ารู้ 2
// <li>สาระน่ารู้ 3";
//$a = array($s);
//$oTbl->addRow($a);
//echo $oTbl->output();
//unset($oTbl);
//
//$oTbl = new clsTable(array("ข่าวประกาศ"));
//$oTbl->align="center";
//$oTbl->headerAlign="center";
//$oTbl->width=200;
//$s="<li>ข่าวประกาศ 1
// <li>ข่าวประกาศ 2
// <li>ข่าวประกาศ 3";
//$a = array($s);
//$oTbl->addRow($a);
//echo $oTbl->output();
//
//$oTbl = new clsTable(array("กิจกรรม"));
//$oTbl->align="right";
//$oTbl->headerAlign="center";
//$oTbl->width=200;
//$s="<li>กิจกรรม 1
// <li>กิจกรรม 2
// <li>กิจกรรม 3";
//$a = array($s);
//$oTbl->addRow($a);
//$oTbl->rowStart();
//$oTbl->addCell("Test");
//$oTbl->rowEnd();
//echo $oTbl->output();
//=array("Header1", "Header2", "Header3", "Header4");
//$oTbl = new clsTable($aHeader);
//$oTbl->align="center";
//$oTbl->width="75%";
////$oTbl->bgColor="#aabbcc";
////$oTbl->headerBgColor="#ccbbaa";
////$oTbl->cellSpacing=1;
////$oTbl->cellPadding=2;
//$i=0;
//while ($i<5){
// $oTbl->addRow($aHeader,$i%2);
// or
//// $oTbl->rowStart($i%2);
//// $oTbl->addCell($aHeader[0]);
//// $oTbl->addCell($aHeader[1],"","",2);
//// $oTbl->addCell($aHeader[2]);
//// //$oTbl->addCell($aHeader[3]);
//// $oTbl->rowEnd();
//
// $i++;
//}
//echo $oTbl->output();
?>
|