2016-09-27 2 views
0

특정 파일을 다른 파일 (예 : div)에 넣으려고합니다. 내가 file_put_contentsfopen을 시도했지만, 이것들은 작동하지만 다른 방식으로 내용을 넣고 싶습니다. 나는 다른 전자 메일 서식 파일을 가지고 있으므로 메시지와 제목을 특정 div의 서식 파일에 동적으로 추가하려고합니다. 한 번 내용이 추가되면 템플릿에서 내용을 가져 와서 전자 메일을 보냅니다.PHP를 사용하여 특정 div의 다른 파일에 내용을 넣는 방법은 무엇입니까?

난 내가 컨텐츠를 밀어있어 내 core.php에서 관련 div

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Marketing Template</title> 
</head> 
<body> 
<div class="main"> 
    <div id="subject"> 
     <?php 
      if(isset($_REQUEST['subject'])){ 
       echo $_REQUEST['subject']; 
      } 
     ?> 
    </div> 
    <div id="message"> 
     <?php 
      if(isset($_REQUEST['message'])){ 
       echo $_REQUEST['message']; 
      }?> 
    </div> 
</div> 
</body> 
</html> 

$_REQUEST 값을 보여주는거야 템플릿이 무엇 내가 market_template.php에서

을 시도하고있다 url 쿼리 문자열을 통해 market_template.php 콘텐츠가 표시됩니다.

// Getting content from file 
$url = base_url.'market_template.php?eml_sub='.$subject.'&eml_msg='.$message; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$data = curl_exec($ch); 
curl_close($ch); 
if(!empty($data)){ 
    echo $data; 
} 

하지만 문제는 URL 쿼리 문자열이 전체 콘텐츠를 템플릿에 추가하지 않는다는 것입니다. 예를 들어 URL에 추가했습니다. ?eml_sub=This is test subject

결과적으로 첫 번째 단어가 This인데 나머지 콘텐츠는 추가되지 않고 두 번째 변수 값은 추가되지 않습니다.

그래서 다른 파일에 값을 입력 한 다음 PHP를 통해 얻을 수 있습니다. 감사하고 싶습니다. 고마워요

+1

이 때문에 공간의, URL의 공백 문자는 첫 번째 의견이 옳다 "% 20" –

+0

입니다. 그러나이 방법으로 사용하려고하는 로컬 파일 인 경우 템플리트 작성에 덜 어색한 구현은 XSLT를 사용하는 것일 수 있습니다. https://www.google.co.uk/search?q=XSLT&oq=XSLT – ADyson

+0

@VincentG 지침을 주셔서 감사합니다. 콘텐츠에서 많은 공백이 생길 수 있으므로 이러한 공백을 방지하는 방법은 무엇입니까? –

답변

3

내가이 부분에서 말한 것처럼,이 부분에서 : ?eml_sub=This is test subject, URL의 공백으로 인해 첫 번째 단어 This 만 사용됩니다.

이러한 동작을 방지하는 한 가지 방법은 urlencode() 기능을 사용하고 urldecode() 기능을 사용하는 것입니다.

문서가 :

http://php.net/manual/en/function.urlencode.php

http://php.net/manual/en/function.urldecode.php

+0

가이드 라인 +1 –

+0

에 대한 감사합니다. :) –

관련 문제