Author Archives: viet vu van

Xóa comment trong html, đếm số thẻ tag trong html

// Remove unwanted HTML comments
function remove_html_comments($content = '') {
	return preg_replace('/<!--(.|\s)*?-->/', '', $content);
}
 //get count tag in html
 function getCountTagInHtml($content,$tag) {
    $c = 0;
    if(trim($content)!=""){
       try {
           $dom = new DOMDocument;
           $dom->loadHTML($content);
           $c = $dom->getElementsByTagName($tag)->length;
       } catch (Exception $exc) {
       }
     }
    return $c;
 }

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

htmlspecialchars — Convert special characters to HTML entities

<?php
$new = htmlspecialchars(“<a href=’test’>Test</a>”, ENT_QUOTES);
echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
?>

Function load css with jquery

Function_loadCSS = function(href) {
var cssLink = $(“<link>”);
$(“head”).append(cssLink); //IE hack: append before setting href
cssLink.attr({
rel: “stylesheet”,
type: “text/css”,
href: href
});
};

Loading multiple javascript files bằng jquery

$.when(
    $.getScript( "/mypath/myscript1.js" ),
    $.getScript( "/mypath/myscript2.js" ),
    $.getScript( "/mypath/myscript3.js" ),
    $.Deferred(function( deferred ){
        $( deferred.resolve );
    })
).done(function(){

    //Khi load xong các file js
});

Check sự kiện click hoặc move element bằng jquery

var isMove = false;
$(element )
.mousedown(function() {
    isMove= false;
})
.mousemove(function() {
    isMove = true;
 })
.mouseup(function() {
    if(isMove){
       alert('click element');
    }else{
       alert('di chuyen element');
    }
});

di chuyển và phóng to thu nhỏ element bằng jquery

1. Di chuyển

$(“element”).draggable({
});

https://jqueryui.com/draggable/

2. Phóng to thu nhỏ

$(“element”).resizable({
});

https://jqueryui.com/resizable/

Copyright © 2017. Powered by WordPress & Romangie Theme.