2014-04-16 2 views
1

코드 캐년의 Dalegroup 모듈 티켓을 기반으로하는 Redactor를 사용하고 있습니다. 클립 보드에서 이미지를 복사하여 붙여 넣을 수 있습니다. 기본적으로 단어의 문서를 복사하여 이미지와 함께 붙여 넣으십시오. Redactor Settings Page 나는이 작업을 수행하려고 시도했지만 그 작업을 수행 할 수 없습니다. 난 내 자신의 파일 업로드 스크립트를 만들려고 한 :redactor 클립 보드에서 이미지 복사 및 붙여 넣기

This setting allows to paste images from clipboard and upload them to the server. It  works in latest Chrome, Firefox and Opera (Webkit). 

Default setting is true, to turn off, set clipboardUpload: false. 

To perform pasted images uploads, set the following: 

$('#redactor').redactor({ 
clipboardUploadUrl: '/your_clipboard_upload_script/' 
}); 

지금은 HAVN 유일한 : 위의 작동하지 않는 것

<?php 

$dir = '/knowledge/files/'; 

$contentType = $_POST['contentType']; 
$data = base64_decode($_POST['data']); 


$filename = md5(date('YYHis')).'.png'; 
$file = $dir.$filename; 
file_put_contents($file, $data); 

echo json_encode(array('filelink' => '/tmp/'.$filename)); 

?> 

이, 나 또한 자신의 사이트에 기능을 활성화 한 Redactor 파일에는 모든 활성화 된 옵션이있는 섹션이 포함되어 있으므로 필요하지 않게 된 것 같습니다. 이 기능을 어떻게 사용할 수 있습니까?

감사합니다.

UPDATE : 내 html_header.php 파일에 다음

dragUpload: true, // false 
imageTabLink: true, 
imageUpload: '/user/files/', // url 
imageUploadParam: 'file', // input name 
imageResizable: true, 
fileUpload: '/user/files/', // url 
fileUploadParam: 'file', // input name 
clipboardUpload: true, // or false 
clipboardUploadUrl: '/user/files/', // url 

을 위해 : 나는 복사본을 얻을 redactor.js에 몇 가지 변수를 활성화하고 설정하여 편집자 근무 붙여 넣기 할 수 있었다

확인 .

clipboardUploadUrl: '/user/files/fileupload.php', 
fileUpload: '/user/files/fileupload.php' 

그런 다음 마지막으로 내 fileupload.php을 추가 : 티켓은 내가 편집자 코드 라인 69 일부터 ('. wysiwyg_enabled')을 $의 내부에 다음과 같은 추가

<?php 

// files storage folder 
$dir = '/user/files/'; 

$_FILES['file']['type'] = strtolower($_FILES['file']['type']); 

if ($_FILES['file']['type'] == 'image/png' 
|| $_FILES['file']['type'] == 'image/jpg' 
|| $_FILES['file']['type'] == 'image/gif' 
|| $_FILES['file']['type'] == 'image/jpeg' 
|| $_FILES['file']['type'] == 'image/pjpeg') 
{ 
// setting file's mysterious name 
$file = $dir.md5(date('YmdHis')).'.jpg'; 

// copying 
move_uploaded_file($_FILES['file']['tmp_name'], $file); 

// displaying file 
$array = array(
    'filelink' => '/user/images/'.$file 
); 

echo stripslashes(json_encode($array)); 
} 

?> 

모든 것이 작동하는 것으로 보이지만 크롬에 오류가 발생합니다. 잡히지 않음 SyntaxError : 예기치 않은 입력이 끝납니다. 내 코드가 아니라 Jquery 자체에 있습니다. 복사 및 붙여 넣기는 IE가 아닌 Mozilla에서 효과적이며 오류로 인해 Chrome에서 잘 작동합니다.

답변

0

그것은 도움이되지 않을 수도 있습니다 - 나는 순간에 같은 일을 할 노력하고있어 -하지만 여기 편집자 번들 작업입니다 : https://github.com/kraksoft/RedactorBundle 나는 실제로 그것을 사용하고 (나도 프로젝트를 갈래하지만 새로운 것을 가져 오지 않았다 그것을) 및 이미지 업로드 작품, 그리고 내가 너무 멀리 클립 보드 업로드 작업을 만들고있어, 번들에 대한 업데이 트를 유지하지 않을 것 같아요!

+0

우수. 어제 그걸로 놀고 난 후에 복사 붙여 넣기 작업을 얻을 수 있었지만 현재 DB에 md5 해시에 저장하고 있습니다. 문제는 기사에 대한보기가 md5를 읽지 않는다는 것입니다. – user3542866

+0

오, 관리하셨습니까? @ user3542866을 위해 복사 붙여 넣기를 어떻게 얻었습니까? md5 해시를 위해'RedactorService.php' 파일을 편집하고'$ newfilename' 파일로 재생하려고 시도해야합니다 –

+0

필요한 정보로 내 질문을 편집하겠습니다 – user3542866

관련 문제