おすすめ記事ピックアップ
PHPとHTMLを混在する書き方を調べていましたら、参考になりそうなサイトを見つけました。でもコードがおかしいところがあったので、考えて修正してみました。
・HTMLとPHPソースを混在させる5つの方法 – PHP入門(テンプレート編1)
http://labo.iix.co.jp/?p=961
方法5を見ながら、こんな風に分断できるんだなーと思いつつ。
コメントをみると、SSさんという人から、下記のような指摘がありまして、timmさんという方が回答をしているのですが、timmさんが言っている意味がよくわかりません。SSさんのコメントが正しいように思えました。
実際に方法5を実行してみると、HTMLの文字列として[$str]が、表示されてしまうわけです。原因はPHPではないHTML部分に、関数を書いても、そのまま文字として表示されてしまうからです。
ちゃんと表示されるように該当部分のコードを書き換えてみました。他にも、いろいろな方法あるでしょうけども。簡単に。
・HTMLとPHPソースを混在させる5つの方法 – PHP入門(テンプレート編1)
http://labo.iix.co.jp/?p=961
方法5を見ながら、こんな風に分断できるんだなーと思いつつ。
コメントをみると、SSさんという人から、下記のような指摘がありまして、timmさんという方が回答をしているのですが、timmさんが言っている意味がよくわかりません。SSさんのコメントが正しいように思えました。
実際に方法5を実行してみると、HTMLの文字列として[$str]が、表示されてしまうわけです。原因はPHPではないHTML部分に、関数を書いても、そのまま文字として表示されてしまうからです。
ちゃんと表示されるように該当部分のコードを書き換えてみました。他にも、いろいろな方法あるでしょうけども。簡単に。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>HTMLとPHPの混在</title> </head> <body> <?php $str = htmlspecialchars($_POST['str']); if ($str) { echo "<p>あなたの書いたのは".$str ."ですね!</p>"; ?> <?php } else { ?> <form method="post" action="<?php echo $_SERVER['SCRIPT_NAME'] ?>"> <input type="text" name="str" size="80"> <input type="submit" value="書く!"> <?php } ?> </body> </html>