1111111111111


เว็บใหม่ที่ผมขอใช้ฟรีครับ ภาวนาอยู่ว่าวันดีคืนดีข้อมูลคงไม่หายเหมือนเว็บอื่น

วันพุธที่ 30 มีนาคม พ.ศ. 2554

ตัวอย่างการใช้ pager ครับ

ตัวอย่างการใช้ pager ครับ

 $this->widget('zii.widgets.grid.CGridView', array(
 'id'=>'employee-grid',
 'dataProvider'=>$model->search(),
 'filter'=>$model,
 'columns'=>array(
            .....
            .....
            .....
        ),
 'pager'=>array(
  'class'=>'CLinkPager',
  'header'=>'หน้าที่',  
  'firstPageLabel'=>'หน้าแรก',
  'prevPageLabel'=>'ก่อนหน้า',
  'nextPageLabel'=>'หน้าถัดไป', 
  'lastPageLabel'=>'หน้าสุดท้าย',
 ) 



วันอังคารที่ 29 มีนาคม พ.ศ. 2554

ตัวอย่างการสร้าง widget ครับ




ขั้นตอนที่ 1. สร้างไฟล์ /components/BreadCrumb.php


class BreadCrumb extends CWidget {

public $crumbs = array();
public $delimiter = ' / ';

public function run() {
$this->render('breadCrumb');
}

}


ขั้นตอนที่ 2. สร้างไฟล์ /components/views/breadCrumb.php



วันเสาร์ที่ 26 มีนาคม พ.ศ. 2554

การใช้งาน Xampp เบี้องต้นครับ






พอดีไปเจอมาก็เลยขอนำมาฝาก



กูรู้เพียงว่า บาปมีจริง บุญมีจริง กูก็รู้เพียงแค่นี้


"บัณฑิต...นั้นแปลว่า ผู้รู้...
แต่กูนั้น ไม่ค่อยรู้...
รู้เพียงนิดหน่อย ในทางพระพุทธศาสนา...
กูรู้เพียงว่า บาปมีจริง บุญมีจริง กูก็รู้เพียงแค่นี้
"





หลวงพ่อคุณ


ผมขอคัดลอกมาจาก ท่านพระอาจารย์สุพันธ์ แก้วมงคล




วันพฤหัสบดีที่ 24 มีนาคม พ.ศ. 2554

ใครอยากเป็นตำรวจยกมือขึ้น

ส่วนนี้ผมใช้เป็นหน้าในการรวมข้อมูลการสอบตำรวจ ประจำปี 2554 นะครับ
สำหรับ เรื่อง รับสมัครและสอบแข่งขันบุคคลภายนอกผู้มีวุฒิปริญญาตรีเพื่อบรรจุและแต่งตั้ง เข้ารับราชการเป็นข้าราชการตำรวจชั้นสัญญาบัตร ประจำปี พ.ศ.๒๕๕๔ ของ สำนักงานเทคโนโลยีสารสนเทศและการสื่อสาร



รายละเอียดการสอบดูได้ที่ http://www.itc.police.go.th/

ถ้าผมมีข้อมูลอะไรเดียวจะเอามาฝาก แต่ตอนนี้ขอตั้งประเดินไว้ก่อน



วันจันทร์ที่ 21 มีนาคม พ.ศ. 2554

การแปลงข้อมุลให้เป็นแบบ JSON อย่างง่าย

JSON คือ ?

ตัวอย่างตารางในฐานข้อมูล


CREATE TABLE IF NOT EXISTS `tbl_cars` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`dealer_id` int(11) NOT NULL,
`name` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;



ส่วนของ Class Controller ครับ

public function actionGetCar($id){
header('Content-type: application/json');

$car = Cars::model()->findByPK((int)$id);

echo CJSON::encode($car);

Yii::app()->end();
}

เวลาเรียกดูข้อมูลก็ประมาณ /index.php/cars/getcar?id=3 หรือ /cars/getcar/id/3 (แล้วแต่การตกแต่ง Url manaeger ครับ)
ผลลัพท์ที่ได้ก็จะเป็นเช่นฉะนี้

{"id":"3","dealer_id":"6","name":"honda"}







ผมคิดว่าในอนาคตเดียวเอาไปประยุกต์ใช้กับ Data Grid สวยๆ เช่น flexigrid.info ได้



อ้างอิง : http://learnyii.blogspot.com/2010/12/very-simple-json-api.html



วันจันทร์ที่ 14 มีนาคม พ.ศ. 2554

CButtonColumn หรือ ปุ่มที่เราเห็นกันตาม Grid view ครับ

CButtonColumn หรือ ปุ่มที่เราเห็นกันตาม Grid view



เช่น Delete view ครับ เรามาดูการตกแต่งปุ่มเบื้องต้นกันเถอะ
จาก


'buttonID' => array(
'label'=>'...', // ข้อความที่จะให้ปรากฏบนปุ่ม
'url'=>'...', // ลิ้ง Url
'imageUrl'=>'...', // ภาพที่ต้องการแสดง
'options'=>array(...), // HTML options สำหรับปุ่ม
'click'=>'...', // เมื่อกดจะให้ทำอะไร
'visible'=>'...', // กำหนดการเข้าถึงปุ่ม เช่นเฉพาะผู้ดูแลระบบเท่านั้น
)



(ตัวอย่าง) การใช้ Yii และ Active Record ครับ

(ตัวอย่าง) การใช้ Yii และ Active Record ครับ


โดยมีตารางดังนี้

ตาราง thai_district เก็บข้อมูลอำเภอ
ตาราง thai_province เก็บข้อมูลชื่อจังหวัด
ตาราง thai_slogan เก็บข้อมูลคำขวัญประจำจังหวัด และดอกไม้ประจำจังหวัด
โดยมีเงื่อนไขคือ 1 จังหวัดมี หลาย อำเภอ (ONE TO MANY) และ 1 จังหวัด มี 1 คำขวัญประจำจังหวัด (ONE TO ONE)




ตัวอย่าง :



ตัวอย่างการใช้ CDetailView ครับ

ตัวอย่างการใช้ CDetailView ครับ


$this->widget('zii.widgets.CDetailView', array(
'data'=>$model,
'attributes'=>array(
array(
'name'=>'id', // แสดงเฉพาะผู้ดูแลลระบบเท่านั้น
'visible'=>Yii::app()->user->name=='admin'? true : false,
),
'firstname',
'lastname',
'birthyear',
'email:email',
'webpage:url', // กำหนดโดยใช้รูปแบบ CFormatter
'description:html', // แสดงแบบภาษา HTML เช่น ถ้ามี สวัสดี ก็จะเป็นตัวหนา
array(
'name'=>'travelDate', 'cssClassExpression' =>'gridD', 'type'=>'raw',
'value'=> 'DateThai($data->travelDate)', //เรียกใช้ Function อื่นๆ
),
array( // แสดงแบบลิ้งครับ
'label'=>'City',
'type'=>'raw',
'value'=>CHtml::link(CHtml::encode($model->city->name),
array('city/view','id'=>$model->city->id)),
),
array(
'name'=>'country_id',
'value'=>$model->country->name, // เรียกดูค่าใน Model อื่นๆ
),
array(
'name'=>'eyecolor_code',
'value'=>Lookup::item('eyecolor',$model->eyecolor_code),
),
'registered',
),
));




อ้างอิง : http://www.eha.ee/labs/yiiplay/index.php/en/person/view?id=1
อ้างอิง : http://www.yiiframework.com/doc/api/1.1/CDetailView/
อ้างอิง : http://www.yiiframework.com/doc/api/1.1/CFormatter



วันจันทร์ที่ 7 มีนาคม พ.ศ. 2554

เอี๋ยนหุยใฝ่ศึกษา มีคุณธรรมงดงาม เป็นศิษย์รักของขงจื้อ




    เอี๋ยนหุยใฝ่ศึกษา มีคุณธรรมงดงาม เป็นศิษย์รักของขงจื้อ มีอยู่วันหนึ่ง เอี๋ยนหุยออกไปทำธุระที่ตลาด เห็นผู้คนจำนวนมากห้อมล้อมอยู่ที่หน้าร้านขายผ้า จึงเข้าไปสอบถามดู จึงรู้ว่าเกิดการพิพาทระหว่างคนขายผ้ากับลูกค้า ได้ยินลุกค้าตะโกนเสียงดังโหวกเหวกว่า "3x8ได้ 23 ทำไมท่านถึงให้ข้าจ่าย24เหรียญล่ะ!"
    เอี๋ยนหุยจึงเดินเข้าไปที่ร้าน หลังจากทำความเคารพแล้ว ก็กล่าวว่า "พี่ชาย 3x8 ได้ 24 จะเป็น 23 ได้ยังไง? พี่ชายคิดผิดแล้ว ไม่ต้องทะเลาะกันหรอก"
คนซื้อผ้าไม่พอใจเป็นอย่างยิ่ง ชี้หน้าเอี๋ยนหุยและกล่าวว่า "ใครให้เจ้าเข้ามายุ่ง! เจ้าอายุเท่าไหร่กัน! จะตัดสินก็มีเพียงท่านขงจื้อเท่านั้น ผิดหรือถูกมีท่านผู้เดียวที่ข้าจะยอมรับ ไป ไปหาท่านขงจื้อกัน "
เอี่ยนหุยกล่าวว่า "ก็ดี หากท่านขงจื้อบอกว่าท่านผิด ท่านจะทำอย่างไร?"
คนซื้อผ้ากล่าวว่า"หากท่านวินิจฉัยว่าข้าผิด ข้ายอมให้หัวหลุดจากบ่า! แล้วหากเจ้าผิดล่ะ?"
เอี๋ยนหุยกล่าวว่า "หากท่านวินิจฉัยว่าข้าผิด ข้ายอมถูกปลดหมวก(ตำแหน่ง)"



วันพุธที่ 2 มีนาคม พ.ศ. 2554

ลายตากับ Mouse Over แล้วแถวเปลี่ยนสี ถ้างั้นมากำหนดสีพื้นให้กับ CgridView กันเถอะ

พอดีมี user คนมีอายุบอกผมให้เอาการการเปลี่ยนสีให้กับ CgridView ออก เพราะแกลายตา (ประมาณเอาเมาส์ไปวางใน CgridView ให้พื้นหลังแถวที่มีเมาส์วางอยู่บนแถวเป็นอีกสี Mouse Over) จึงไม่อยากให้เปลี่ยนสี ผมก็ไปปรึกษาโนบิตะได้ผลดังนี้ครับ


จาก


$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'gridLoanID',
'dataProvider'=>$model->searchGrid(),
'filter'=>$model,
'rowCssClassExpression'=>'$data->statusR=="อนุมัติ"?"row-commit":"row-wait"',
'columns'=>array(
.....
.....
'loanName', 'studentName'
.....
.....
), // end of columns
.....
.....
));


สังเกตุบรรทัดที่ 2. ผมใช้ 'id'=>'gridLoanID', ดังนั้นในไฟล์ css (screen.css) เราก็ใช้ #gridLoanID ดังนี้

#gridLoanID table.items tr:hover
{
background: #ECFBD4;
}


และถ้าอีกขั้นเนื่องจากแถวผมมี 2 แบบคือแถวรายชื่อนักเรียนที่ได้รับการอนุมัติทุน (row-commit) กับยังไม่ได้รับการอนุมัติทุน (row-wait) สังเกตุว่าผมกำหนดข้อมูลในส่วน rowCssClassExpression ดังนี้


....
....
'rowCssClassExpression'=>'$data->statusR=="อนุมัติ"?"row-commit":"row-wait"', //ถ้าไม่ใช้ก็เอาออกได้เลยครับ
....
....



วันอังคารที่ 1 มีนาคม พ.ศ. 2554

สำหรับท่านที่ต้องการอยากทดสอบ Yii framework ครับ

สำหรับท่านที่ต้องการอยากทดสอบ Yii framework ครับ
ตัวอย่างอยู่ที่ http://chawdoy.thport.com/thai/
แหล่งโหลดตัวอย่าง http://www.mediafire.com/?djr7u6ilnd6j5rw
ไฟล์ chawdoy.sql อยู่ในแพคแล้วนะครับ

ขั้นตอนติดตั้ง Copy ไปวางใน root ครับ
เช่น ผมติดตั้ง xampp ที่ c:\ ก็หาโฟล์เดอล์ htdocs
C:\xampp\htdocs

แล้วเอา ทั้งใน zip ไฟล์ไปวาง
C:\xampp\htdocs\framework
C:\xampp\htdocs\thai

หลังจาก start apache แล้วเวลาเรียกก็
http://127.0.0.1/thai