みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

PHPの実行結果を、htmlファイルで表示

拡張子.htmlのファイルに、PHPで書き込んだカウンタの数字が表示できない
ので、質問します。以下がプログラムです。

counter1.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML4.01 Translational//EN//"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title>PHP TEST</title></head>
<body>
<base font size="5">
htmlファイルにPHPの結果を表示できない。
</br>
PHPファイルにhtmlを書き加える。

<?php

$counter_file = 'counter.txt';
$counter_lenght = 8;

$fp = fopen($counter_file, 'r+');

if ($fp){
if (flock($fp, LOCK_EX)){

$counter = fgets($fp, $counter_lenght);
$counter++;

rewind($fp);

if (fwrite($fp, $counter) === FALSE){
print('ファイル書き込みに失敗しました');
}

flock($fp, LOCK_UN);
}
}

fclose($fp);

print('count:'.$counter);

?>
</body>
</html>

------------------------------------------------------------------------

counter1.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="ja">

<head>
<meta http-equiv="content-type" content="text/html;charset=shift_jis">
<title>質問内容</title>
<base href="file:///C:\Users\Public\Documents/" target="_blank">
<script language="JavaScript" src="hoge3.php">
</script>


</head>
<body bgcolor="#66ccff">
<h1>更新ボタンを押す度増加</h1>
<?php require "counter1.php"?>回
<a href ="counter1.php"> </a>
<img src ="counter1.php"> </img>



</body>
</html>

--------------------------------------------------------------------------
Apacheのhttpd.confに追加した行

AddType application/x-httpd-php .html


以上のコードと設定で、自分のパソコンで.htmlのファイルにアクセスすると、
一応カウンタの数字は表示されました。(X)の画像も表示されました。

しかし、これからプロバイダー(ぷらら)が提供するホームページのサービスを利用するとき、
最初に表示するページは、index.htmlにしてください。とありそのページにPHPで作ったカウンタの数字を表示させたいのです。
どなたか、index.htmlにPHPの処理結果を表示する方法を教えてください。お願いします。

投稿日時 - 2018-06-25 06:38:43

QNo.9511892

困ってます

質問者が選んだベストアンサー

PHPが稼働できるという前提で返答します
つまりphpinfo等が表示されるという意味です

カウンターの数字を保存してるファイルcounter.txtがあって、その数値をHTMLで表示したいのですよね
これをindex.htmlに実装するのはちょっと難しいです
index.phpを使ってよければ簡単です
今一度ご確認をお勧めします

どうしてもindex.htmlに表示したいのであれば、phpでカウンターの数字を「画像」として表示すると可能です
htmlのコードを見ますとそれをしたいのかな?という気もしますが。

というわけでPHPでカウンターの数字を画像として出すプログラムを作る必要があります
しかし画像の生成はなかなかめんどくさいので、0~9までの数字画像を用意して、それを桁数並べるのが楽な気がします
phpは
1:カウンターの数字を読み込む
2:3桁目だけ取り込む
3:それに合う画像を返す
4:カウンタの数字を一つ増やす

htmlは以下のようになります
<img src="3桁目を出すPHPプログラム">
<img src="2桁目を出すPHPプログラム">
<img src="1桁目を出すPHPプログラム">

投稿日時 - 2018-06-25 09:37:03

お礼

具体的な対策を教えていただき、ありがとうございます。

投稿日時 - 2018-06-25 15:17:27

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問