PHPで書いたファイルphpの実行結果をhtmlファイルへ書き出したかったのでネットとかで調べて、
file_put_contentsでできそうでしたので、使ってみましたが、phpファイル中にincludeで外部のphpやdb接続のphpファイルなどの外部のファイルはhtmlとして書き出せなくてエラーになってしまいました。
ご教授お願いいたします。
実際のファイルが下記のような感じです。
index.php <?php ob_start(); ?> <?php include "includes/header.php"> <?php include "includes/db.php"> <?php ここはindex.phpに書いてあるphpソースやhtmlなどです ?> <?php include "includes/footer.php"> <?php //php実行結果をindex.htmlにて出力 file_put_contents( 'index.html', ob_get_contents() ); ob_end_clean(); ?>
上記で下記のエラーが出ました。外部のファイルをincludeを使っているとhtmlの出力ができないみたいです。
Warning: include(./db.php): failed to open stream: o such file or directory in /Applications/MAMP/htdocs/includes/header.php on line 26 Warning: include(): Failed opening './db.php' for inclusion (include_path='.:/usr/local/php5/lib/php') in /Applications/MAMP/htdocs/includes/header.php on line 26 Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in /Applications/MAMP/htdocs/includes/header.php on line 45 Notice: Undefined index: REQUEST_URI in /Applications/MAMP/htdocs/index.php on line 22
ao_love さん:
ありがとうございます。
一部分を出しますが宜しくお願いします。
例えば.navi.php 下記:
<?php ob_start(); ?> <?php include "includes/header.php"; ?> <?php include "./db.php" ?> <div class="navi"> </div> <?php $query = "select * from navi"; $navi= mysqli_query($connection, $query); while($row = mysqli_fetch_assoc($navi)){ $title = $row['title']; echo "<li style='width:150px; text-align:center'><a href='category.php?category=$cat_id'>{$cat_title}</a></li>"; } ?> ?>
回答2件
あなたの回答
tips
プレビュー