2012-05-10 7 views
-5

私は作成したHTMLファイルを持っており、他の場所にディレクトリに保存されています。PHPで動的HTMLを提供するには?

問題は、コンテンツを外部から取得してHTMLファイル内に配置できるようにすることです。

私はこれがサーバー側で、私が望むファイルにアクセスできるので、私はこれにPHPを使うことができると考えました。

私はHTMLファイルを開いてエコーするPHPスクリプトを作成した後、JavaScriptをエコーし​​て画面上の要素を変更します。ここで

は私の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 

$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ファイルを..and。

私は、JavaScriptを使用せずにPHPでこれを行う方法を知りたいと思います。

私はこれに最善のアプローチとしてはわかりません。

+3

あなたはPHPが何であるか知っていますか? http://en.wikipedia.org/wiki/PHP –

答えて

0

includeob_get_contentsを使用してhtmlを文字列として取得し、その上に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

ところで、これは '<?php print $ someVariable;でも動作します。 ?> 'または' <?= $ someVariable; ?>」と答えた。だからこそ、私は 'file_get_contents'よりも' ob_get_contents'を好む理由です。 – SJFrK

0

かなり基本的な質問です。 PHPとHTMLチュートリアルを読んでください。このような何かがトリックを行います:

<html> 

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

</html> 
関連する問題