แบ่งหน้าที่ยาวๆออกเป็นหลายหน้าด้วย pagination class Codeigniter by

31
Aug
0

pagination คือตัวช่วยที่ทำให้เราสามารถแบ่งหน้าที่มีอยู่ออกเป็นหลายๆหน้าโดยจะทำลิ้งค์ให้อัตโนมัติประมาณนี้

< 1 2 3 4 5 >

ส่วนวิธีการใช้เราสามารถเซ็ทค่าผ่าน controller ได้เลยดังนี้

$this->load->library(‘pagination’);

$config['base_url'] = site_url(“test/index/”);   -   url ของหน้าที่เราจะแบ่ง
$config['total_rows'] = 20;   -   จำนวนอะไรบางอย่างทั้งหมดของเราโดยปกติจะใช้การนับจำนวนใน database เอา
$config['per_page'] = 5   -   จำนวนอะไรบางอย่างของเราต่อหนึ่งหน้า ซึ่งจะได้จำนวนหน้าทั้งหมดเท่ากับ total_rows/per_page
$config['uri_segment'] = 3;   -
$this->pagination->initialize($config);

ซึ่งการ config ทั้งหมดจะถูกเก็บไว้ในไฟล์ config/pagination.php

การนำไปใช้ก็ต้องส่งค่าไปที่ view โดยตั้งชื่อตัวแปรไว้ประมาณนี้

$a_data['s_pagination'] = $this->pagination->create_links();

$this->load->view(‘pages/test’, $a_data);

จากนั้นเราจะสามารถใช้ได้โดยเรียกตัวแปร $s_pagination ในส่วนของ html ได้ทันที โดยจะมีจำนวนหน้าตามที่เราเซ็ทไว้

จากนั้นเมื่อเราคลิกที่หน้าใด้หน้าหนึ่ง จะเป็นการเรียก base_url และใส่พารามิเตอร์เพิ่มไปต่อท้ายซึ่งเป็นเลขหน้า โดยเราสามารถนำพารามิเตอร์นั้นไปใช้

ได้โดยการรับไปใน function นั้นๆ ตามปกติดังเช่นตัวอย่าง

function index($page)

{

$this->load->library(‘pagination’);

$config['base_url'] = site_url(“test/index/”);   -   url ของหน้าที่เราจะแบ่ง
$config['total_rows'] = 20;   -   จำนวนอะไรบางอย่างทั้งหมดของเราโดยปกติจะใช้การนับจำนวนใน database เอา
$config['per_page'] = 5   -   จำนวนอะไรบางอย่างของเราต่อหนึ่งหน้า ซึ่งจะได้จำนวนหน้าทั้งหมดเท่ากับ total_rows/per_page
$config['uri_segment'] = 3;   -
$this->pagination->initialize($config);

$a_data['s_pagination'] = $this->pagination->create_links();

$a_data['page'] = $page;

$this->load->view(‘pages/test’, $a_data);

}

ทำให้เราเรียกใช้ตัวแปร $page ในหน้า view ของเราได้ตามนั้น

ปัญหา no database select ใน jugglingdb และวิธีแก้ by

31
Aug
0

เคยเขียน code ประมาณนี้

var Schema = require(‘jugglingdb’).Schema;
var schema = new Schema(‘mysql’, {
host: config.database.host,
port: config.database.port,
username: config.database.username,
password: config.database.password,
database: config.database.database
});
var Table= schema.define(TABLE_NAME, TABLE_STRUCTURE);

function get(id, cb){
Table.find(id, cb);
}

มันก็ใช้งานได้นะ แต่พอเปิด server ไปซักพักมันก็ error ว่า no database select

ปัญหานี้เกิดขึ้นจากการที่ตัวแปร connect database เราไม่มีการใช้งานซักระยะหนึ่ง (timeout) ก็เลยต้องเขียนใหม่เป็นแบบนี้

var Schema = require(‘jugglingdb’).Schema;
var schemaOption = {
host: config.database.host,
port: config.database.port,
username: config.database.username,
password: config.database.password,
database: config.database.database
};
var TableOption = TABLE_STRUCTURE;

function get(id, cb){
var schema = new Schema(‘mysql’, schemaOption);
var Table= schema.define(TABLE_NAME, TableOption);

Table.find(id, cb);
}

เพื่อไม่ให้ตัวแปรที่ connect database หมดเวลาก็ต่อมันใหม่ทุกครั้งไปเลบ

เบิร์นนิ่ง 3 นาที [Ai] by

27
Aug
1

วิธีทำกองไฟอย่างเร็ว 3 นาทียิ่งกว่าต้มมาม่า

วาดไฟขึ้นมานะจ๊ะ  ไล่สีซ้อนๆ กันซัก 3-4 เลเยอร์

Drag คลุมทั้งหมด

ไปที่ Object >> Blend >> Make

ได้ละ เบิร์นๆ

ข้างในสวยใช้ได้แต่ข้างนอกยังไม่ค่อยเนียน

ขึ้นอยู่กับสีที่ใช้ด้วยอะนะ ก๊าก ขออภัยในความผิดพลาด

ลองเล่นกันนะจ๊ะ!

 เราชนะรอบ 4 | ยืมเงิน 3000 ด่วน | แอพกู้เงิน | แอพเงินด่วน | สินเชื่อออนไลน์อนุมัติทันที | Site Map | กู้เงินก้อน | กระเป๋าตัง | thisshop และ ยืมเงินฉุกเฉิน 5000 ด่วน