2011-09-18 3 views
2

this AJAX Image Uploader 스크립트를 사용하고 있으며 숨겨진 변수를 전달하려고합니다.PHP AJAX 이미지 업 로더에서 숨겨진 변수 가져 오기

<input type="hidden" name="test" value="test" /> 

그러나 실제 제출 버튼이 없기 때문에, 모든 AJAX 기반, 난 그냥 $_POST['test']를 호출 할 수있다; JQuery와의

부분은 다음과 같습니다

if (formdata) { 
    $.ajax({ 
     url: "upload.php", 
     type: "POST", 
     data: formdata, 
     processData: false, 
     contentType: false, 
     success: function (res) { 
      document.getElementById("response").innerHTML = res; 
     } 
    }); 
} 

는 아마 거기에 어딘가에 가야하지만이 접근하는 방법을 모르겠어요. 누구든지 어떤 제안이라도 있으면 정말 고맙겠습니다.

감사합니다.

답변

3

:

$('somenode').bind('someevent',function(){ 

그래서, 당신은 아약스는 필드 값이 변경 될 때마다 게시하고 싶은 말은 가치. 이 경우 hidden_input을 사용했습니다.

if (formdata) { 
    //New line is below! 
    formdata.append("test",$('#hidden_input').val()); 
    $.ajax({ 
     url: "upload.php", 
     type: "POST", 
     data: formdata, 
     processData: false, 
     contentType: false, 
     success: function (res) { 
      document.getElementById("response").innerHTML = res; 
     } 
    }); 
} 

그런 다음 upload.php 모든 OP의 질문에 대답하지 않습니다 $_POST['test']

+0

브라이언 감사합니다! – Drew

3

하지만 실제 제출 버튼이 없기 때문에 AJAX를 기반으로하므로 $ _POST [ 'test']를 호출 할 수 없습니다.

물론 가능합니다. AJAX는 type 매개 변수에 원하는 헤더를 보낼 수 있습니다. 당신은 당신이 지금있는 그대로 type:'post'를 넣어 경우, name="test"와 함께 필드 당신은 어떤 이벤트가 페이지로드를 포함하여, 아약스를 트리거 할 수 있습니다 $_POST['test']

를 통해 사용할 수 있습니다. id를 그래서 우리는 참조 할 수 그냥 숨겨진 입력을 제공 얻을이 시도

$('input').change(function(){ 
    $.ajax({ 
     url: "upload.php", 
     type: "POST", 
     data: formdata, 
     processData: false, 
     contentType: false, 
     success: function (res) { 
      $('#response').html(res); 
     } 
    }); 
}); 
+0

이와 값에 액세스 할 수 있어야합니다. 질문은 POST를 통해 PHP 스크립트에 추가 값을 보내는 방법을 묻는 것입니다. –

+0

당신이 어떻게 그의 질문에서 그것을 얻었는지 잘 모르겠지만, 그럼에도 불구하고 좋은 일 : – AlienWebguy

+0

질문이 너무 명확하지 않은 경우 사과드립니다. 그래도 도와 ​​줘서 고마워! – Drew