Viewing file: clsDistrict.php (4.03 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
//--Class base_District--------------------------
//--PK of base_District ::
// 1. districtId
class District extends clsDB{
var $result;
var $status;
var $districtId;
var $districtName;
var $districtNameEng;
var $amphurId;
var $provinceId;
function District(&$c){
$this->c=$c->c;
$this->DB=$c->db;
}
function AddNew(){
//--ใช้เมธอดนี้เมื่อต้องการเพิ่มข้อมูลใหม่
//--โดยจะกำหนดสถานะของข้อมูลของอ๊อบเจ๊กให้เป็น 1
$this->status = 1;
}
function Edit(){
//--ใช้เมธอดนี้เมื่อต้องการปรับปรุงข้อมูล
//--โดยจะกำหนดสถานะของข้อมูลของอ๊อบเจ๊กให้เป็น 2
$this->status = 2;
}
function Save(){
//--ใช้เมธอดนี้เมื่อต้องการบันทึกข้อมูลในอ๊อบเจ๊กเข้าสู่ฐานข้อมูล
//--โดยจะตรวจสอบสถานะของข้อมูลว่าข้อมูลในอ๊อบเจ๊กเป็นข้อมูลใหม่หรือข้อมูลเดิม
//--1 เป็นข้อมูลใหม่ 2 เป็นข้อมูลเดิม
if ($this->status==1){
$this->districtId=$this->GetNextCode();
$sql = "insert into District values('$this->districtId', '$this->districtName', '$this->districtNameEng', '$this->amphurId', '$this->provinceId')";
}else {
$sql = "update District set districtName='$this->districtName', districtNameEng='$this->districtNameEng', amphurId='$this->amphurId', provinceId='$this->provinceId' where districtId='$this->districtId'";
}
$this->SetQuery($sql);
}
function Delete(){
//--ใช้เมธอดนี้เพื่อลบข้อมูลเดิมในอ๊อบเจ๊ก
//--เป็นการลบข้อมูลทีละ 1 เรคอร์ด
//--ต้องเรียกเมธอดตามลำดับดังนี้ SearchByKey()-->GetRecord()-->Delete()
$this->SetQuery("delete from District where districtId='$this->districtId'");
}
function GetNextCode(){
//--ใช้เมธอดนี้เพื่อหาค่าสูงสุดของฟิลด์ที่ใช้เป็นคีย์ของตาราง ในลักษณะ auto increment
//--ต้องเป็นฟิลด์ที่ไม่ได้กำหนดรหัสเองทางจอภาพ
$this->SetQuery("select max(districtId) as num from District");
if ($result=$this->GetResult()) {
return $result['num']+1;
}
}
function RSDistrict(){
//--เมธอดที่ขึ้นต้นด้วย RS (Result Set) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--ปกติเมื่อเรียกใช้เมธอด RSxxxx จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
$this->SetQuery("select * from District order by districtId");
}
function GetRecord(){
//--เป็นเมธอดที่นำข้อมูลจาก ResultSet มากำหนดให้กับแอตทริบิวต์ของอ๊อบเจ็ก
//--เรียก GetRecord() หนึ่งครั้ง จะเลื่อนตัวชี้เรคอร์ดไปอีกหนึ่งเรคอร์ด
if ($this->result = $this->GetResult()) {
$this->districtId = $this->result['districtId'];
$this->districtName = $this->result['districtName'];
$this->districtNameEng = $this->result['districtNameEng'];
$this->amphurId = $this->result['amphurId'];
$this->provinceId = $this->result['provinceId'];
return 1;
}else {
return 0;
}
}
function SearchByKey($xKey){
//--ใช้เมธอดนี้เพื่อค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย
//--และต้องตามด้วยเมธอด GetRecord() เสมอ
if ($this->SetQuery("select * from District where districtId= '$xKey'")){
return 1;
}else {
return 0;
}
}
function NumRow(){
//--เป็นเมธอดที่คืนค่าจำนวนข้อมูลจากการ select โดยเมธอด RSxxxx
return $this->GetRowSelected();
}
function Destroy(){
//--เป็นเมธอดสำหรับปิดการติดต่อจากฐานข้อมูล
//return $this->DestroyDb();
}
//****************** You can add new functions below **********************//
function RSDistrictByPvNameAndApNameAndDtName($pvName, $apName, $dtName){
$this->SetQuery("select * from Province p, Amphur a, District d
where p.provinceName like '%$pvName%' and p.provinceId=a.provinceId
and a.amphurName like '%$apName%' and a.amphurId=d.amphurId
and d.districtName like '%$dtName%' order by p.provinceName, a.amphurName, d.districtName");
}
function RSDistrictByPvNameAndApNameAndDtNameLimit($pvName, $apName, $dtName, $start, $pageSize){
$this->SetQuery("select * from Province p, Amphur a, District d
where p.provinceName like '%$pvName%' and p.provinceId=a.provinceId
and a.amphurName like '%$apName%' and a.amphurId=d.amphurId
and d.districtName like '%$dtName%' order by p.provinceName, a.amphurName, d.districtName
limit $start, $pageSize");
}
} //--End class base_District--
?>
|