2017-03-25 1 views
0

Blueimp jQuery File Upload를 사용하여 파일을 업로드 할 때 추가 양식 데이터를 검색하는 방법을 이해하는 데 어려움을 겪고 있습니다. 나는 그것을 업로드 할 때jQuery File Upload 추가 양식 데이터 검색

<input type="hidden" name="referrer" id="referrer" value="123"> 

내가이를 추가 한 ...

내가 내 #fileupload 양식에 숨겨진 입력이 ... 파일 이름에 추가 할 값을 전달하기 위해 묶는하고 내 main.js ... PHP는 폴더의 index.php에

$('#fileupload').bind('fileuploadsubmit', function (e, data) { 
    data.formData = $('form').serializeArray(); 
}); 

이 ... 지금은 작동하지 않을 수 있습니다 무엇

$smeg = $_POST['referrer']; 

밖으로

내가 이상적으로 내가

protected function trim_file_name($file_path, $name, $size, $type, $error,$index, $content_range) { 
    return $name. ' - '.$smeg; 
} 

는하지만 시도 할 때마다 예 및 사용 $로 아래 사용하여 파일 이름에 변수를 추가 할 UploadHander.php에 변수 $ SMEG을 사용하는 방법입니다 smeg 오류가 발생했습니다. $ smeg는 정의되지 않은 변수입니다.

추가 양식 데이터를 올바르게 전달하고 있습니까? 그렇다면 사용하도록 검색합니까?

+0

'$의 smeg'이 정의되지 않은 : - 당신은 당신의 기능이 모든 인수를 사용하지 않으면 그런데

, 서명에 그들을 정의하고 같은에 기능을 단순화 할 필요가 없습니다 'trim_file_name'의 범위에 –

+0

@u_mulder 그래서 trim_file_name에 $ smeg = $ _POST [ 'referrer']를 사용합니까? 그것이 내가 이해할 수없는 비트입니다 – tatty27

+0

또는 인수로 전달하십시오. –

답변

1

기능 범위에서 $smeg이 정의되지 않았습니다.

protected function trim_file_name($file_path, $name, $size, $type, $error,$index, $content_range) { 
    return $name . ' - ' . $_POST['referrer']; 
} 

또는 서명 기능을 다른 인수를 추가합니다 : 그래서 하나가 함수 내에서 $_POST['referrer']을 사용할 수 있습니다

protected function trim_file_name($file_path, $name, $smeg, $size, $type, $error,$index, $content_range) { 
    return $name . ' - ' . $smeg; 
} 

함수 호출이 될 것입니다 뭔가 같은 :

trim_file_name($path, $name, $_POST['referrer'], /* more arguments */); 

두 번째 접근 방식은 입니다 코드에서 $_POST 배열의 종속성을 제거하기 때문에 우선을 선호합니다.

protected function trim_file_name($name, $smeg) 
{ 
    return $name . '-' . $smeg; 
} 
관련 문제