บล็อกใหม่มีก็จะเกี่ยวกับ การแปลคู่มือ การพัฒนาเว็บไซต์ วีดีโอสอน บทความ ตามไปทักทายผมได้เลยครับ
http://taqmnainw.com
วันพฤหัสบดีที่ 29 สิงหาคม พ.ศ. 2556
วันศุกร์ที่ 21 มิถุนายน พ.ศ. 2556
Laravel 4 Folder Structure
วันนี้ผมจะมาพาลุยทำความรู้จักกับ
โครงสร้าง Folder ของ
laravel กันนะครับ
เริ่มกันเลยที่โฟลเดอร์หลักที่เราใช้ทำงานคือ app ไฟล์แรกที่เราต้องแก้ไขเมื่อเริ่มต้นสร้างโปรแกรมก็คือ
app.php เป็นไฟล์ที่ใช้ในการตั้งค่าให้เว็บ อยู่ในโฟลเดอร์ config
นะครับ การตั้งค่าทั้งหมดมี
8 ค่านะครับ
- Debug คือการกำหนดว่าเราจะให้เว็บของเราแสดงค่า error กับค่าที่เกิดจากการ print_r ,vardump,dd หรือไม่
- Url คือ การกำหนด url ที่จะใช้ในคำสั่ง artisan เพื่อใช้อ้างอิงถึงโฟลเดอร์เว็บของเรา ถ้าเราใช้ mod_rewrite ก็ควรมาเปลียนที่ตรงนี้ด้วยนะครับ ปกติก็จะเป็น localhost
- TimeZone ผมเลือกเป็น Asia/Bangkok ครับ
- Locale ใช้กำหนดภาษาในการใช้งานฟังก์ชันที่ใช้แปลภาษา
- Key คือค่า private key ในการเข้ารหัสของฟังชัน Hash และ Password
- Provider ใช้กำหนดที่อยู่ของไฟล์ที่ลงท้ายด้วยคำว่า ServiceProvider ในโฟลเดอร์ของ libraries ที่เราจะเรียกใช้งาน ไฟล์นั้นจะทำการโหลดคลาสที่ต้องใช้ให้เรา
- Manifest ใช้กำหนดรายชื่อคลาสที่อยู่ในรายการ provider ที่เราไม่ต้องการให้โหลดทุกครั้ง
- Alias เป็นการกำหนดที่อยู่ของไฟล์ Facades ซึ่งจะทำการจำลองตัวมันเป็นคลาสที่เราเรียก ผลก็คือทำให้เราเรียกใช้งานแบบ static ได้
วันอาทิตย์ที่ 9 มิถุนายน พ.ศ. 2556
ชำแหละ Laravel 4
Laravel 4 ใช้รูปแบบ stattic method แบบเทียมนะครับ อิอิ
อะไรคือ static class
static method ใน php คือการที่เราเรียกใช้งาน method ใน class นั้นโดยตรงเลยไม่ต้องไปสร้างเป็นวัตถุขึ้นมาใหม่
วันจันทร์ที่ 27 พฤษภาคม พ.ศ. 2556
Events ส่วนสำคัญที่ใช้ในการสร้าง Bundles ของ Laravel
Events คือฟังก์ชันที่ทำให้เราสามารถจัดการเหตุการณ์ที่เกิดขึ้นกับ
เว็บได้ และเป็นกุญแจสำคัญที่ให้ ปลั๊กอินเข้าถึงฟังก์ชันกลางของ laravel ได้โดยที่ไม่ต้องไปแก้ไข.
ฟังก์ชัน fire เป็นการสั่งให้เหตุการขึ้น:
URL & Input การจัดการลิ้งกับ Url ของ Laravel
การดึงค่า url
ระดับ root
ของ เว็บครับ:
$url = URL::base();
ดึงค่าลิ้งที่ไปยังส่วนที่เรากำหนดครับ:
$url = URL::to('user/profile');
สร้างลิ้งไปยัง https:
$url = URL::to_secure('user/login');
วันศุกร์ที่ 24 พฤษภาคม พ.ศ. 2556
Lravel Auto Loading & Error รู้จักการตั้งค่าเวลาอยากจะเอาคลาสจากข้างนอกมาใช้กับการจัดการ error คับ
Class Auto Loading
Auto-loading คือ คลาสที่ให้เรานำ คลาสที่อยู่ภายนอก มาลงชื่อให้ใช้งานได้ laravel ซึ่งอยูใน application/start.php
วันพุธที่ 22 พฤษภาคม พ.ศ. 2556
Laravel Pagination การแบ่งหน้าแสดงข้อมูล
Pagination การแบ่งหน้า
ตัวอย่างเราให้คิวรี่นี้ทำการให้เลขหน้าด้วย:
1. $orders = DB::table('orders')->paginate($per_page, array('id', 'name', 'created_at'));
เวลาจะแสดงบน view ก้ตามตัวอย่างเลยครับ:
1. <?php foreach ($orders->results as $order): ?>
2. <?php echo $order->id; ?>
3. <?php endforeach; ?>
สร้างลิ้งของเลขหน้า:
1. <?php echo $orders->links(); ?>
ลิ้งที่ออกมาครับ
1. Previous 1 2 … 24 25 26 27 28 29 30 … 78 79 Next
เราสามารถเพิ่มการเรียงลำดับในตารางได้ด้วยการเพิ่ม
พารามิเตอร์ชื่อ sort เหมือนในตัวอย่าง
<?php
echo $orders->appends(array('sort' => 'votes'))->links();
ลิ้งที่ออกมา:
1. http://example.com/something?page=2&sort=votes
Creating Paginators Manually ( สร้างการให้เลขหน้าโดยจัดเอง )
ตามตัวอย่างเลยครับ:
1. $orders = Paginator::make($orders, $total, $per_page);
ใส่ cssให้การจัดเลขหน้าได้ตามตัวอย่างเลย
1. <div class="pagination">
2. <ul>
3. <li class="previous_page"><a href="foo">Previous</a></li>
4.
5. <li><a href="foo">1</a></li>
6. <li><a href="foo">2</a></li>
7.
8. <li class="dots disabled"><a href="#">…</a></li>
9.
10. <li><a href="foo">11</a></li>
11. <li><a href="foo">12</a></li>
12.
13. <li class="active"><a href="#">13</li>
14.
15. <li><a href="foo">14</a></li>
16. <li><a href="foo">15</a></li>
17.
18. <li class="dots disabled"><a href="#">…</a></li>
19.
20. <li><a href="foo">25</a></li>
21. <li><a href="foo">26</a></li>
22.
23. <li class="next_page"><a href="foo">Next</a></li>
24. </ul>
25. </div>
เวลาเราอยู่หน้าแรกก็ต้องทำการปิดลิ้งกลับไปหน้าก่อนครับ:
1. <li class="disabled
previous_page"><a href="#">Previous</a></li>
บทนี้สั้นๆนะครับ
บทหน้าจะมาต่อเรื่อง Class
Auto Loading กับ Errors & Logging วันหยุดเยอะจัดไปยาวๆ เลย
อาทิตย์หน้าจะได้จบซีรี่ย์เลยครับ
วันอังคารที่ 21 พฤษภาคม พ.ศ. 2556
Laravel::HTML & Form ไม่ต้องพิมพ์แท็ก html ให้ยืดยาวอีกใช้ laravel สร้างให้เลย
เป็นการป้องกันการโจมตีแบบ
cross site scripting โดยการตรวจและแปลงค่า ที่ผู้ใช้งานกรอกเข้ามา:
echo HTML::entities('<script>alert(\'hi\');</script>');
echo e('<script>alert(\'hi\');</script>');
วันจันทร์ที่ 20 พฤษภาคม พ.ศ. 2556
Laravel::Session & Cookie
Cookies
Cookie ของ
laravel มีข้อควรระวังในการใช้คือ
อย่างแรก,cookies จะเก็บค่า
signature hash ไว้ด้วยเพื่อป้องกันการแก้ไขโดย
client. อย่างที่สอง cookies เมื่อถูกสร้างแล้วจะไม่ถูกส่งไปที่บราวเซอร์โดยทันทีจะรอเมื่อสิ้นสุดคำร้องขอก่อนนั้นแปลว่า
เราจะไม่สามารถเรียกใช้มันได้ทันที
รับค่า Cookies:
วันอาทิตย์ที่ 19 พฤษภาคม พ.ศ. 2556
Laravel::Schema Builder การจัดการตาราง
SCHEMA BUILDER( การจัดการตาราง )
Schema Builder คือ ฟังก์ชันที่ Laravel ใช้จัดการตาราง
ไม่ว่าจะเป็นลบอ่านเขียน กำหนดค่าของตารางครับ
เพื่อนๆหลายท่านคงเคยใช้ cms หลายๆตัว ที่ตอนเริ่มแรกเขาให้เราตั้งค่า ฐานข้อมูล ตอนสุดท้ายก็จะโหลดนานหน่อย
แต่การโหลดตอนสุดท้ายนี้แหละครับ คือการสร้างฐานข้อมูลขึ้นมา ถ้าอ่านบทความนี้จบแล้วเพื่อนก็สามารถนำฟังก์ชันเหล่านี้ไปสร้างตัวติดตั้งส่วนตัวใช้ได้เลย
เพื่อนๆหลายท่านคงเคยใช้ cms หลายๆตัว ที่ตอนเริ่มแรกเขาให้เราตั้งค่า ฐานข้อมูล ตอนสุดท้ายก็จะโหลดนานหน่อย
แต่การโหลดตอนสุดท้ายนี้แหละครับ คือการสร้างฐานข้อมูลขึ้นมา ถ้าอ่านบทความนี้จบแล้วเพื่อนก็สามารถนำฟังก์ชันเหล่านี้ไปสร้างตัวติดตั้งส่วนตัวใช้ได้เลย
ตัวอย่างการสร้างตารางครับ:
วันเสาร์ที่ 18 พฤษภาคม พ.ศ. 2556
Laravel::Working with file การจัดการไฟล์แบบเบสิคเลยครับ
การจัดการไฟล์
ดึงค่าข้างในไฟล์:
$contents = File::get('path/to/file');
พารามิเตอณ์ที่ 1 เป็น path พารามิเตอร์ที่ 2 เป็นข้อมูล:
File::put('path/to/file', 'file contents');
File::append('path/to/file', 'appended file
content');
File::delete('path/to/file');
ในตัวอย่างคือการย้ายไฟล์พร้อมตั้งชื่อใหม่
Input::upload('picture', 'path/to/pictures', 'filename.ext');
File::extension('picture.png');
ตรวจประเภทของไฟล์
Determining if a file
is given type:
if (File::is('jpg', 'path/to/file.jpg'))
{
}
is method
ใช้ค่าอ้างอิงจาก.
Fileinfo PHP extension
Note: เราสามารถไปเพิ่มนามสกุลที่อยากจะตรวจเพิ่มได้ที่ application/config/mimes.php
หาค่า mime ที่คู่กับ นามสกุลนั้น
echo File::mime('gif'); // outputs 'image/gif'
Note: สามารถไปเพิ่ม mime type ได้ที่ application/config/mimes.php
File::cpdir($ต้นทาง, $ปลายทาง);
File::rmdir($directory);
บทนี้สั้นๆนะครับ พรุ่งนี้มาต่อเรื่อง Schema
การจัดการตารางของฐานข้อมูลนะครับ
สมัครสมาชิก:
บทความ (Atom)