Category Archives: Cakephp

Mặc định permisions của file cached

Khi làm với shell của cake , sẽ gặp trường hợp shell bị xung đột các file trong tmp
vì shell thì thường chạy với user khác so với user khi chạy web
nên các file tmp nó bị permission denied
Continue Reading

Amazon S3 vs Cakephp

Sử dụng plugin này

https://github.com/robmcvey/cakephp-amazon-s3

Dowload hoặc create file pdf trong cakephp3 sử dụng cakepdf

  • Link doc : https://github.com/FriendsOfCake/CakePdf-
  • Yêu cầu : 
    – PHP 5.4.16+
    – CakePHP 3.0+
    – wkhtmltopdf
  • Cài đặt wkhtmltopdf  : sử dụng Composer
    composer require friendsofcake/cakepdf
  • Thêm code vào file config/bootstrap.php
    // load CakePdf
    Plugin::load(‘CakePdf’, [‘routes’=>true,’bootstrap’ => true]);
    // cấu hình CakePdf (có thể thêm các yeu to khác trong link doc)
    Configure::write(‘CakePdf’, [
    ‘engine’ => [
    ‘className’ => ‘CakePdf.WkHtmlToPdf’,
    // Path trên server và server cần cái đặt wkhtmltopdf
    //’binary’ => ‘/usr/local/bin/wkhtmltopdf’,
    // Path trên window và cần cài thêm wkhtmltopdf.exe về máy tính theo link dưới
    ‘binary’ => ‘C:\Program Files (x86)\wkhtmltopdf\bin\wkhtmltopdf.exe’,
    ],
    ]);
  • Thêm code vào file config/routes.php 
    Router::extensions([‘pdf’]); // tạo môi trường pdf
  • Sử dụng : có 2 kiểu sử dụng là
    1 . Render ra view môi trường pdf(có thể set download= true để tự động down,mặc định sẽ là render ra view) 
    – Tạo file PdfsController có :
    public $components = array(‘RequestHandler’);
    public function download($id) {
    // config pdf để download
    $this->viewBuilder()->options([
    ‘pdfConfig’ => [
    ‘orientation’ => ‘portrait’,
    ‘filename’ => ‘filename.pdf’, // file name download
    ‘download’ => true // nếu true sẽ tự động down, false sẽ render ra view
    ]]);
    }
    -Tạo file layout cho pdf  src\Template\Layout\pdf\default.ctp
    -Tạo file view cho pdf     src\Template\Pdfs\pdf\download.ctp
    Cuối cùng chạy link  : /pdfs/download/29.pdf’ // 29 la id
    2. Tạo ra file pdf lưu trên server
    – Tạo file PdfsController có :
    public $components = array(‘RequestHandler’);
    public function createFile() {
    $CakePdf = new \CakePdf\Pdf\CakePdf();
    $CakePdf->template(‘create_file’, ‘default’);//run view pdf/create_file and layout pdf/default
    $CakePdf->viewVars([‘dataPdf’ => 1]);// truyền biến ra view
    // Get the PDF string returned
    $pdf = $CakePdf->output();
    $pdf = $CakePdf->write(WWW_ROOT . ‘files’ . DS . ‘pdf’ . DS . ‘ronaldo.pdf’); // tạo file pdf
    }
    -Tạo file layout cho pdf  src\Template\Layout\pdf\default.ctp
    -Tạo file view cho pdf    src\Template\Pdf\create_file.ctp
    Cuối cùng chạy link  : /pdfs/createFile

Custom select form cakephp

Form select của cakephp dạng:
$this->Form->input(‘pref’, [
‘type’ => ‘select’,
‘class’ => ‘prefByCode’,
’empty’ => ‘選択してください’,
‘options’ => $pref
]);
Giờ ta muốn thay đổi cấu trúc trong option của select.
Khi đó ta sẽ tạo cấu hình mảng $pref:
[
1 => array(‘name’ => ‘工事業者(建築)’, ‘value’ => 1, ‘title’ => ‘itemBig1’),
2 => array(‘name’ => ‘工事業者(設備)’, ‘value’ => 2, ‘title’ => ‘itemBig2’),
3 => array(‘name’ => ‘工事業者(その他工事)’, ‘value’ => 3, ‘title’ => ‘itemBig3’),
4 => array(‘name’ => ‘コンサルタント’, ‘value’ => 4, ‘title’ => ‘itemBig4’),
]
Khi đó html sẽ chuyển sang:

Kết hợp file html và cakephp

Khi bạn có 1 số file html không muốn đưa vào cakephp khi chạy. Hay bạn đã có sẵn các file html, nhưng bạn chỉ muốn chuyển 1 số file sang cakephp mà vẫn giữ nguyên các file còn lại.
Continue Reading

Chỉnh sửa time save to database cakphp

http://qiita.com/subaru/items/75c32fc6ef172215f599
Continue Reading

Auth component Cakephp 2

Khi user login hệ thống cakephp, chúng ta hay sử dụng:
$this->Auth->login()
Nếu trường hợp đúng rồi thì hẳn là chẳng quan tâm làm gì. Tuy nhiên, 1 lúc nào đó tự nhiên ta thấy nó bị lỗi. Lúc đó việc debug trở nên vô cùng khó khăn.
Continue Reading

Convert text when send mail cakephp

Nguồn: http://d.hatena.ne.jp/s-yo-ko/20101116
Khi bạn send mail trong cakephp, bạn tự nhiên thấy email vẫn gửi được nhưng phần tiêu đề tiếng Nhật hay Trung Quốc của bạn bị chuyển sang trắng. Khi đó bạn có thể khắc phục theo hàm mb_convert_encoding.
Continue Reading

Save datetime to database Cakephp3 từ string

Cakephp rất tiện dụng khi tự động tạo cấu trúc form cho bạn khi bạn save bản ghi vào database.
Tuy nhiên, đôi lúc nó sẽ khiến bạn quên đi cấu trúc định dạng cần save.
Ở bài này nói đến cấu trúc datetime.
Continue Reading

Copyright © 2017. Powered by WordPress & Romangie Theme.