![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
phpの初心者です。
どうぞよろしくお願いします。
ユーザーがクリックしただけでページが生成されていくといったような
サイトを現在作成しています。
以下、構造です。
index.php
regist.php
footer.inc
page(dir)---a(dir)-------index.php
└b(dir)-------index.php
└c(dir)-------index.php
動作としては、index.php(TOP階層)でリンクをクリックするとregist.phpにジャンプし、
regist.phpのプログラムの中で、page(dir)の中にa,b,c,d,e…とディレクトリが
自動生成されて、中にindex.phpファイルを生成します。
regist.phpの最後でheader("Location:")を使用し、生成されたページに自動的にジャンプします。
生成されたページのフッターに今までクリックされたリンクという紹介のようなものがあります。
そこの記述が
regist.php内の記述///////////////////
ob_start();
include("footer.inc");
$footer = ob_get_contents();
ob_end_clean();
fputs($fp, "$footer");
footer.inc内の記述///////////////////
<?php
$arr = scandir('./page/', 1);
foreach($arr as $key => $dir){
//リンク名を日本語に変換
$dir = str_replace("http://".$domein."/page", "http://".$domein."/page/", "$dir");
print "<a href=\"http://".$domein."/page/".$dir."/\">$dir_url</a> \n";
}
?>
上記のようなプログラムですと、a,b,c,d…x,y,zと順番にディレクトリとページが生成されていった場合に
aの中のindex.phpではリンクなし。
bの中のindex.phpではaへのリンク。
cの中のindex.phpではaとbへのリンク。
dの中のindex.phpではaとbとcへのリンク。
eの中のindex.phpではaとbとcとdへのリンク。
一つずつリンクが増えていくようになってしまってます。
これを、自動生成されたページでは、常にクリックされたすべてのリンクが出るようなものにしたいというのが希望です。
aの中のindex.phpではaとbとcとdへのリンク。
bの中のindex.phpではaとbとcとdへのリンク。
cの中のindex.phpではaとbとcとdへのリンク。
dの中のindex.phpではaとbとcとdへのリンク。
eの中のindex.phpではaとbとcとdへのリンク。
なのでregist.phpの記述を…
修正後:regist.php内の記述///////////////////
fputs($fp, "<?php include(\"../../footer.inc\"); ?>");
こちらですと、読み込み形式になり常に新しい情報が入るかな?と思い試したのですが思うように動きません。
修正前:regist.php内の記述///////////////////
ob_start();
include("footer.inc");
$footer = ob_get_contents();
ob_end_clean();
fputs($fp, "$footer");
上記ですと、テキストを書き込む形になりますので、常に新しい情報ではありません…。
分かる方、ご回答頂けますと幸いです。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
>上記のようなプログラムですと、a,b,c,d…x,y,zと順番にディレクトリとページが生成されていった場合に
>aの中のindex.phpではリンクなし。
だね。この段階では「まだaしか存在しない」から。
>bの中のindex.phpではaへのリンク。
だね。この段階では「まだaとbしか存在しない」から。
>cの中のindex.phpではaとbへのリンク。
だね。この段階では「まだaとbとcしか存在しない」から。
>dの中のindex.phpではaとbとcへのリンク。
だね。この段階では「まだaとbとcとdしか存在しない」から。
>eの中のindex.phpではaとbとcとdへのリンク。
だね。この段階では「まだaとbとcとdとeしか存在しない」から。
>一つずつリンクが増えていくようになってしまってます。
「ユーザーがクリックするごとに、pageの配下にa,b,c,d,eと増えて行く」んだから、一つずつリンクが増えていくのが当たり前だね。
>これを、自動生成されたページでは、常にクリックされたすべてのリンクが出るようなものにしたいというのが希望です。
>aの中のindex.phpではaとbとcとdへのリンク。
>bの中のindex.phpではaとbとcとdへのリンク。
>cの中のindex.phpではaとbとcとdへのリンク。
>dの中のindex.phpではaとbとcとdへのリンク。
>eの中のindex.phpではaとbとcとdへのリンク。
ちょいと待った。
aの中のindex.phpをユーザーが最初に見た瞬間、まだbもcもdもeも生成されて無かった筈では?
もしかして「eの中のindex.phpを生成後、フッターにあるaへのリンクをクリックしてaに飛んだ時に、aの中のフッターはa,b,c,d,eを表示して欲しい」って話かな?
だとしたら、aの中のindex.phpのフッターは、随時、最新の情報を表示するように書かれてる必要があるけど、そうなってるのかな?
regist.phpの中で、生成するindex.phpのフッターを作って書き込んでるけど、それだと「aの中のindex.phpのフッターは一回生成したらずっと固定」なので、2度と書き換わらないよね?
なので、うまくいかない原因は「regist.phpの中でフッターを生成して書き込んでしまっている所為」な訳。
希望通りに動かすには「regist.phpの中でフッターを生成するのはやめ、aの中のindex.phpのフッター部分に、フッターを生成するプログラムを埋めこむ」と言う変更が必要。
簡単に言うと「フッターを作る場所が間違ってる」と言う事。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) .htaccessファイルの修正がこれで問題ないかどうか 1 2022/04/21 08:42
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP PHP ページング データベース 1 2022/06/16 10:30
- WordPress(ワードプレス) httpからhttpsへのリダイレクト設定について 2 2022/04/17 09:49
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- WordPress(ワードプレス) wordpressでphpを読み込みたい 1 2022/10/30 23:40
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- JavaScript javascriptで変数を組み込みたい 2 2023/01/13 09:52
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
zendのcontrollersについて
-
fputsで書き込みを行う際に、in...
-
(初級)require等で共通ファイ...
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
PHPからMSSQLへの接続結果の文...
-
フォームで戻った際に入力済み...
-
$filePath = './user_img/' . $...
-
.htaccessにphp_valueが使用できな
-
PHPのif文でその処理を途中で抜...
-
さくらサーバーでsessionが使え...
-
Apacheでhttp://localhost/が表...
-
phpでうまく画像がダウンロード...
-
Smarty includeでテンプレート...
-
現在位置より2つ上のディレク...
-
透過PNGが透過されない!!
-
「@$変数」の「@の意味は?」
-
インスタンス化に伴うメモリ消...
-
データ送信をボタンを押さずに...
-
PHP でmb_send_mailが上手くい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[PHP] 任意のDNSでIPアドレスを...
-
wordpressのルートのindex.php...
-
すべてのページのurlをindex.ph...
-
PHP/icludeを使った相対パスの...
-
require_onceで読み込む場合、...
-
.htaccessファイルの修正がこれ...
-
CakePHPの表示エラーについて
-
phpによる携帯振り分けとSEOの...
-
相対パスの挙動を理解できない
-
モバイルとPC にエージェン...
-
phpで24時間おきに任意のテキス...
-
ゼンド フレイムワークがどうや...
-
$_GET 取得できない
-
歴史上の人物や宗教
-
PHPでグローバルナビゲーション...
-
PEARを使ったメール送信でのinc...
-
特定のディレクトリだけ、phpを...
-
深い階層のフォルダの作成や削...
-
smartyで同じテンプレートを使...
-
ApacheのRewrite
おすすめ情報