2012-05-10 3 views
-5

나는 내가 만든 HTML 파일을 가지고 있으며 다른 곳에있는 디렉터리에 저장되어있다.PHP에서 동적 HTML을 제공하는 방법은 무엇입니까?

문제는 외부에서 콘텐츠를 가져 와서 HTML 파일에 넣을 수 있기를 바랍니다.

서버 쪽에서 원하는 파일에 액세스 할 수 있기 때문에 PHP를 사용할 수 있다고 생각했습니다.

그래서 HTML 파일을 열고 반향하는 PHP 스크립트를 작성한 후 일부 자바 스크립트를 반향하여 화면에있는 요소를 변경합니다.

<?php 

$html = file_get_contents('file.html'); 

$imageurl = file_get_contents('url.txt'); 

$js = '<script type=\'text/javascript\'>updateImage(\'img1\', '.$imageurl.');</script>'; 

echo $html; 

echo $js; 

?> 

HTML 파일 .. 그리고 :

여기 내 PHP 파일의

<html> 
<script type="text/javascript"> 
function updateImage(id, url) { 
    var img = document.getElementsByName(id)[0]; 
    img.src = url; 
} 
</script> 

<body> 

<img src="" name="img1" /> 

</body> 

</html> 

그것은 최선의 방법이 아니다, 그러나 그것은 작동합니다.

자바 스크립트를 사용하지 않고 PHP 내에서이를 수행하는 방법을 알고 싶습니다.

나는 이것에 대한 최선의 접근 방식으로 확신 할 수 없다.

+3

PHP는 무엇입니까? http://en.wikipedia.org/wiki/PHP –

답변

0

당신은 문자열로 HTML을 얻을 수 includeob_get_contents를 사용하고 몇 가지 str_replace 또는 preg_replace을 할 수 있습니다.

귀하의 HTML :

<html> 
    <body> 
     <img src="{IMAGE_SRC}" width="512" height="512" name="image" /> 
    </body> 
</html> 

귀하의 PHP :

ob_start(); 
include 'your_file.html'; 
$buffer = ob_get_contents(); 
ob_end_clean(); 
$buffer = str_replace('{IMAGE_SRC}', 'your_image.png', $buffer); 

print $buffer; 
+0

BTW, 이것 역시''또는' "다른 답변에서 Chris가 말한 것처럼. 그래서 나는'file_get_contents'보다'ob_get_contents'를 선호합니다. – SJFrK

0

아주 기본적인 질문이다. PHP 및 HTML 자습서를 읽어야합니다. 이 같은 것을 트릭을 수행 할 것입니다 :

<html> 

<body> 
<img src="" width="512" height="512" name="<?= $somePhpVariableContainingTheName ?>" /> 
</body> 

</html> 
관련 문제