2014-12-18 4 views
1

저는 PHP 멍청한 사람입니다. 나는 문의 양식이 상주하는 URL을 포함하도록 sendmail.php 파일을 수정하려고이 예 블로그
https://jonbake.com/blog/bootstrap-3-contact-form-with-captcha/URL을 PHP 문의 양식에 전달

를 사용하여 PHP/부트 스트랩의 문의 양식을 가지고있다.

e.e. 우리는 3 가지가 넘는 문의 양식을 가지고 있으며 사용자가 연락처 이메일을 보낸 곳을 결정하고 싶습니다.

파일을 세 번 복사하고 괜찮을만한 예제로 주제를 변경할 수 있습니다. 그러나 이상적으로 나는 단지 하나의 sendmail.php 파일을 원하고 양식/이메일이 보내지는 URL을 전달하기를 원합니다.

질문
어떻게 URL을 얻고 이메일이 PHP 파일로 그것을 통과하고 수정합니까?

편집
AJAX는이 링크가 전달 될 수있는 방법에 차이가 있는지 sendmail.php하기 위해 POST를 보내는 데 사용됩니다.

//send the feedback e-mail 
    $.ajax({ 
     type: "POST", 
     url: "../assets/library/sendmail.php", 
     data: $("#feedbackForm").serialize(), 
     success: function(data) 
     { 
     contactForm.addAjaxMessage(data.message, false); 
     //get new Captcha on success 
     $('#captcha').attr('src', '../assets/library/vender/securimage/securimage_show.php?' + Math.random()); 
     }, 
     error: function(response) 
     { 
     contactForm.addAjaxMessage(response.responseJSON.message, true); 
     } 
    }); 
    return false; 
    }); 

감사

당신은 각각의 문의 양식에 플래그를 설정하고 처리 할 수 ​​
+1

'$ 링크 = "HTTP : // $ _ SERVER [HTTP_HOST] $ _SERVER [REQUEST_URI] ";"이 Q & A에서 빌려 왔습니다. http://stackoverflow.com/q/676 8793/ –

+0

@ Fred-ii- 내가 찾고있는 연락처 양식 URL이 아닌 실제 sendmail.php 파일에 전체 URL을 반환하지 않습니까? 연락처 양식 페이지에이를 추가하면 어떻게 sendmail.php에 전달합니까? – StuartM

+0

@ Fred-ii- 확인하려면 예, sendmail php 파일의 링크를 반환합니다. 그렇다면이 메일을 연락처 양식에 포함시키고 sendmail에 전달하여 이메일에 사용하려면 어떻게해야합니까? – StuartM

답변

2

먼저 다음 형식을 사용하려면 양식에 .php 확장자가 포함되어 있는지 확인하십시오 (참고 자료 참조).

<input type="hidden" name="the_link" value="<?php echo "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; ?>"> 

현재 URL을 양식의 숨겨진 속성 (POST 메소드 여야 함) 내에 전달합니다.

다음과 같이 사용 :

$link = $_POST['the_link']; 

당신의 sendmail.php 파일을.

GET 방법을 사용하는 경우 내 대답에서 POST를 GET으로 변경하기 만하면됩니다.


의 Nota : 당신은 현재 .html 파일을 사용하는 경우, 당신은 PHP로 .html 파일을 치료하기 위해 아파치를 지시 할 수 있습니다.

예 : (뽑아 낸/http://www.besthostratings.com/articles/php-in-html-files.html에서 빌려).웹 서버의

AddType application/x-httpd-php .html .htm 

는 CGI로 PHP를 실행 : 아파치 모듈로 PHP를 사용하여 웹 서버의

경우

AddHandler application/x-httpd-php .html .htm 

당신이 ASP를 수행하고자는 잘 해내 :

들어 PHP로 모듈 :

AddType application/x-httpd-php .asp 
,210

또는 CGI로 PHP를 들어

:

AddHandler application/x-httpd-php .asp 

및 주제에 스택의 다른 Q & A :

+0

감사합니다 프레드! Heres 일부 다른 텍스트 그래서 SO는 행복합니다 ... – StuartM

+1

@StuartM 당신은 대단히 환영합니다 스튜어트, * 환호 * –

1

따라 전자 메일의 본문 :

contact_form_1.html

<form> 
    <!-- code --> 
    <input name="referer" type="hidden" value="contact_form_1"> 
    <!-- code --> 
</form> 

sendmail.php

<?php 
    // code 
    $mailbody.="Referer: ".$_POST["referer"]; 
    // code 
?> 
관련 문제