본문 바로가기
개발/php

php script 이미지 캡처해서 파일 업로드

by 향유 2021. 8. 10.
<div id="printarea">

<img>

<img>

<img>

</div>

캡처 영역 이미지들

 

            $this->addScriptFile("https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.2.61/jspdf.min.js");
            $this->addScriptFile("https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js");

            $this->addScript('
                window.onload= function(){
                    setTimeout(function() {
                        html2canvas($("#printarea"), {
                        background :"#FFFFFF",
                            onrendered : function(canvas) {
                                // 한글깨짐현상때문에 jpeg->jspdf 전환
                                var imgData = canvas.toDataURL("image/jpeg");
//$("#1dd").append("<img src=\'" + canvas.toDataURL(\'image/jpeg\') + "\'/>");

                                    var imageData = canvas.toDataURL("image/jpeg");
                                    var formData = new FormData();
                                    formData.append("file", imageData);
                                    $.ajax({
                                    url : "/index.php?tpf=_module/product/banner_process" ,
                                    type : "POST",
                                    dataType : "html",
                                    enctype : "multipart/form-data",
                                    data : formData,
                                    processData : false,
                                    contentType : false,
                                    success : function(data) {
console.log(data);
                                    },

                                    error : function(request, status, error) {
                                    console.log(request, status, error);
                                    }

                                    });

                            }
                        });
                    }, 100);
                }
            ');

캡처하여 ajax 통신

 

        if(!empty($this->reqData['file'])){
            define('UPLOAD_DIR', 'user/');
            $img = $this->reqData['file'];
            $img = str_replace('data:image/jpeg;base64,', '', $img);
            $img = str_replace(' ', '+', $img);
            $data = base64_decode($img);
            $file = UPLOAD_DIR . uniqid() . '.jpeg';
            $success = file_put_contents($file, $data);
echo "<div align=left><pre>"; var_dump($this->reqData); echo "</pre>"; die("<br>End</div>");
        }

파라미터값으로 이미지 받아서 업로드 처리

'개발 > php' 카테고리의 다른 글

php 연도 다음해까지 월별로 배열에 담기  (0) 2021.09.06
php 비로그인 시 로그인 페이지로 이동  (0) 2021.08.13
php 지금 페이지 url 출력  (0) 2021.08.02
배열 중복 제거  (0) 2021.06.11
php 문자열 포함 체크  (0) 2021.05.07

댓글