conf.php設定について

このQ&Aのポイント
  • conf.phpの設定方法と注意点について解説します。
  • conf.phpに関する例題を紹介し、設定の集約方法について考えます。
  • conf.phpの設定における問題や解決策について解説します。
回答を見る
  • ベストアンサー

conf.php設定について

index.php ****************************** <?php require("conf.php"); ?> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <title><?= TITLE ?></title> </head> <body bgcolor="#FFFFFF" topmargin="100"> //例1 <? virtual ('./cgi-bin/count.cgi?LOG=$logfile'); ?> //例2 <?php $count; ?> <?= COM ?> <BR><BR> </center> </body> </html> conf.php *************** 例1 $logfile = "****.log"; //カウンターファイルリンク 例2 $count = "<? virtual ('./cgi-bin/count.cgi?LOG=****.log'); ?>"; 例1.例2ともにうまくいきませんでした。 conf.phpに集約して記入したいのですがお知恵を拝借できれば嬉しいです。どうぞよろしくお願いします。

  • PHP
  • 回答数2
  • ありがとう数1

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

  • ベストアンサー
  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.2

<? require("conf.php"); ?> <? virtual('./cgi-bin/count.cgi?LOG=' . $logfile . '&MODE=h'); ?> これではだめですか? シングル・ダブルクォートの違いは理解できていますか? $logfile = 'hoge.log'; print '$logfile';// $logfile print "$logfile";// hoge.log print "{$logfile}hoge";// hoge.loghoge

100POINT
質問者

お礼

おかげさまで無事解決しました。 ありがとうございました。

その他の回答 (1)

  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.1

virtualがなんなのか、どううまくいかないのかよく分かりませんけど virtual ('./cgi-bin/count.cgi?LOG=$logfile'); ・シングルクォートなので変数は展開されません。 ・関数名と"("の間は普通空けないのでは? → virtual('<img src="./cgi-bin/count.cgi?LOG=' . $logfile . '" />'); $count = "<? virtual ('./cgi-bin/count.cgi?LOG=****.log'); ?>"; ・ただの文字列なのでさらにPHPとして評価しないと関数は動いてません。 → $count = virtual('./cgi-bin/count.cgi?LOG=****.log');// ?   <?= $count //返り値を文字列にしておく ?> # あとは蛇足 具体的にどうしたいのか分からないので手当たり次第書きますが virtualがなにしているのか名前からは判断できません。 $logfile は一般的に使いそうな名前なので先頭で読み込むのは怖い気もします。 定数やクラス定数やオブジェクトを使った方が安心かも。 function counter_link($logfile) { return '<img src="./cgi-bin/count.cgi?LOG=' . $logfile . '" />'; } - - <?= counter_link(LOG_FILE); ?>

100POINT
質問者

補足

アドバイスありがとうございます。 そして、うまく説明できず申し訳ございません。 index.htmlファイルに記載しておりますカウンター用ssi <!--#include virtual="./cgi-bin/count.cgi?LOG=log&MODE=h"--> これをindex.phpファイルに置き換えました <? virtual ('./cgi-bin/count.cgi?LOG=log&MODE=h'); ?> (上記両ファイルは実働を確認しています) さらにlogの部分をconf.php(別)ファイルにて設定いたいのですが ご教授よろしくお願いいたします。

関連するQ&A

  • 外部ファイルでの変数設定について

    下記外部ファイル[conf.php]に書きました変数(?)で index.phpに <?= TITLE ?> は読み込みますが こちらは $log-id = "$log-id"; 読見込めませんでした。 アドバイスいただけると幸いです。 ------------------------ index.php ------------------------ <?php require("conf.php"); ?> <title><?= TITLE ?></title> <? $log-id = "$log-id"; virtual ('./cgi-bin/count.cgi?LOG=$log-id&MODE=n'); ?> ------------------------ conf.php ------------------------ <?php $log-id = "log-id"; // サービス名 define("TITLE", "サービス名.jp"); ?> ------------------------ お忙しいと存じますがよろしくお願いします。

    • 締切済み
    • PHP
  • PHPでセッション管理

    PHPでセッション管理の勉強をしています、 テストに以下の文章があるのですが カウント2回です は表示するのですが 3回目以降も カウント2回です と表示します。 文章がどこかおかしいでしょうか? また、このセッション管理は携帯電話でも有効なのでしょうか? スミマセン、教えてください。 バージョンは MYSQL ver4.0.26 PHP ver4.2.2 です <?php session_start(); $count = 1; if (isset($_SESSION["count"])) { $count = $_SESSION["count"]; $count++; } $_SESSION["count"] = $count; ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <title>セッション変数のテスト</title> </head> <body> セッション変数のテスト<BR> <BR> <?php if ($count == 1) { ?> はじめての訪問です。<BR> <BR> セッション変数にデータがありません。<BR> このページをリロードしてください。<BR> <?php } else { ?> あなたの訪問は<?=$count?>回目です。<BR> <?php } ?> </body> </html>

    • ベストアンサー
    • PHP
  • CGIの設定

    いつもお世話になっております。 各バーチャルドメイン内でCGIを動作させるためにApacheの設定を したのですが、「ページが表示されません」と出てしまいます。 (バーチャルドメインの設定も完了していて、HTMLファイル、PHPファイルは正常に動作しています。) よろしくご教示お願いいたします。 /etc/httpd/conf/httpd.conf -------------------------------------------------- ScriptAliasMatch /~(..*)/cgi-bin/(.*) /home/$1/cgi-bin/$2 <Directory "/home/*/cgi-bin"> AllowOverride None # Options None Options ExecCGI Order allow,deny Allow from all </Directory> (1) ↓にファイルをアップロード   パーミッションは「755」に設定してあります。   /home/ユーザ名/cgi-bin/count.cgi (2) ブラウザから↓のURLでアクセス   http://バーチャルドメイン/cgi-bin/count.cgi <環境> Red Hat Enterprise Linux 5 Apache:2.2.3

  • PHPの勉強中の初心者です。

    PHPの勉強中の初心者です。 PHPに詳しい人に教えてもらいながら以下のPHPを組みました。 内容はlist.cgiというテキストファイルをPHPで出力することです。 一応出力はできたのですが、出力するデータをテーブル内に埋め込みたいと思いますが、 PHPのファイルにどのようにtableタグを埋め込むべきかが分かりません。 (例)1,AAA BBB CCC<br /> DDD を tdのセルに埋め込みたく。 どなかたご教授いただけませんでしょうか?どうぞ、よろしくお願いいたします。 list.cgi 1,AAA BBB CCC<br /> DDD 2,AAA BBB CCC<br /> DDD 3,AAA BBB CCC<br /> DDD <?php $datafile = "list.cgi"; //ファイルの読み込み $fr = fopen ( $datafile, "r" ); $alldata = fread ( $fr, filesize ( $datafile ) ); fclose ( $fr ); $alldata = str_replace ( "\r", "\n", $alldata ); $alldata = str_replace ( "\n\n", "\n", $alldata ); $alldata = explode ( "\n", $alldata ); ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Style-Type" content="text/css"> <title>サンプル</title> </head> <body> <div style="width:240px"> <?php if($_GET["n"]){ for($i=0;$i<count($alldata);$i++){ $buff=explode(",",$alldata[$i]); if($buff[0]==$_GET["n"]){ print $buff[1]; print "<br />"; } } } ?> </div> </body> </html>

    • 締切済み
    • PHP
  • PHPに関して質問です

    簡単な問い合わせフォームを作っていますが HTMLページで入力した文章がPHP画面で表示できません。 ソースは <html> <head> <meta http-equiv="Content-Type" content="text/html; charset_JIS"> <tittle>お問い合わせフォーム</tittle> </head> <body> ■お問い合わせ内容を入力してください。 <br> <form action="check_inquiry.php" method="POST"> お問い合わせタイトル: <br> <input type="text" name="tittle" size="50"> <br> <br> <input type="submit" value="お問い合わせ内容の確認"> </form> </body> </html> と <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <tittle>お問い合わせフォーム</tittle> </head> <body> ■お問い合わせ内容の確認をしてみてください。 <br> お問い合わせタイトル: <br> <?php echo $_POST["tittle"]; ?> </body> </html> どこが問題なのでしょうか?

    • 締切済み
    • PHP
  • PHPについて(初心者)

    はじめまして、PHPの初心者の者です。xamppをインストールしたあと、様々な設定をしました。その後、お問い合わせフォームというプログラムのために2つファイルを作りました。 一つ目は、inquiery.htmlというファイルで、ソースコードは <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=Shift_JIS"> <title>お問い合わせフォーム</title> </head> <body> ■お問い合わせ内容を入力してください。 <br> <form action="check_inquiry.php" method="POST"> お問い合わせタイトル: <br> <input type="text" name="title" size="50"> <br> <br> <input type="submit" value="お問い合わせ内容の確認"> </form> </body> </html> というHTMLファイルで、入力した内容を、下の「check_inquiry.php」に飛ばします。その後、 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>お問い合わせフォーム</title> </head> <body> ■お問い合わせ内容を確認してください。 <br> お問い合わせタイトル: <br> <?php echo $_POST['title']; ?> </body> </html> check_inquiry.phpファイルでinquiry.htmlファイルの内容を受け取ります。 うまくいけば、$_POST['title' ]: でinquiry.htmlの内容を受け取るはずなのですが、うまくいきません。 inquiry.htmlの送信ボタンをクリックすると、check_inquiry.phpのソースコード全体が表示されてしまいます。 何が間違っているのかわかりません。もし、詳しい方がいましたら、アドバイスいただけないでしょうか?よろしくお願いします。

    • 締切済み
    • PHP
  • PHPについて教えてください

    以下のコードでthanks.phpにemailとgoikenが表示されません なぜでしょうか? おそらくthanks.phpが間違えてると思いますが見直してもわかりません index.html <DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>PHP基礎</title> </head> <body> <form method="POST" action="check.php"> ニックネームを入力してください<br> <input name="nickname" type="text" style="width:100px"><br> メールアドレスを入力してください<br> <input name="email" type="text" style="width:200px"><br> ご意見を一言でお聞かせください<br> <input name="goiken" type="text" style="width:300px"><br> <input type="submit" value="送信"> </form> </body> </html> check.php <DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>PHP基礎</title> </head> <body> <?php $nickname=$_POST['nickname']; $email=$_POST['email']; $goiken=$_POST['goiken']; if ($nickname==''){ print'ニックネームが入力されていません<br>'; } else { print'ようこそ'; print $nickname; print' 様'; print'<br>'; } if ($email==''){ print'メールアドレスが入力されていません<br>'; } else { print'メールアドレス:'; print $email; print'<br>'; } if ($goiken==''){ print'ご意見が入力されていません<br>'; } else { print'ご意見『'; print $goiken; print'』<br>'; } if($nickname=='' || $email='' || $goiken=''){ print'<form>'; print'<input type="button" onclick="history.back()" value="戻る">'; print'</form>'; } else { print'<form method="post" action="thanks.php">'; print'<input name="nickname" type="hidden" value="'.$nickname.'">'; print'<input name="email" type="hidden" value="'.$email.'">'; print'<input name="goiken" type="hidden" value="'.$goiken.'">'; print'<input type="button" onclick="history.back()" value="戻る">'; print'<input type="submit" value="OK">'; print'</form>'; } ?> </body> </html> thanks.php <DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>PHP基礎</title> </head> <body> <?php $nickname=$_POST['nickname']; $email=$_POST['email']; $goiken=$_POST['goiken']; print $nickname; print'様<br>'; print'ご意見ありがとうございました<br>'; print'頂いたご意見『'; print $goiken; print '』<br>'; print $email; print'宛にメールを送信しました'; ?> </body> </html>

    • ベストアンサー
    • PHP
  • PHPについて教えてください

    下記のindex.htmlとcheck.phpを別々にURLに入力すると正しく表示されるのですが 横の送信ボタンを押したときにcheck.phpにジャンプしてくれません どうしてでしょうか? index.html <DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>PHP基礎</title> </head> <body> <from method="post" action="check.php"> <input name="nickname" type="text" style="width:100px"> <input type="submit" value="送信"> </from> </body> </html> check.php <DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>PHP基礎</title> </head> <body> <?php print'ようこそ'; ?> </body> </html>

    • 締切済み
    • PHP
  • COOLオンラインでPHPが表示されない

    PHPマニュアルと言うサイトを参考にして、COOLオンラインでPHPの練習をしていますが、上手く表示されません。 http://www.cool.ne.jp/index.cgi?pg=cool_help_FTP-1002.html#05 ↑の説明を読んで1行目を足しても、その#!/usr/local/bin/php が表示されるだけで、 #!/usr/local/bin/php <html> <head> <title>PHP Test</title> </head> <body> <?php echo "<p>Hello World</p>"; ?> </body> </html> 参考にしているサイトではhello Worldと表示されるのが成功例になっているのですが、COOLのサーバーだと上手く行かなくて説明通りにしてもダメなので、ちょっと分からなくなりました。 助けて頂けたら幸いです。

    • 締切済み
    • PHP
  • php初心者です。セッションについて

    php初心者です。セッションをはじめて扱ってみているのですが、上手く行かずに困っています。 HP1でセッションに文字や数値を入れて表示、HP2でも表示というごく単純なものでセッションを試して見ているのですが上手く行かずにいます。 何か初歩的な間違いだとも思うのですが、どうにも上手くゆかず質問させていただきました。何に問題があるかアドバイスやご助言をいただければと思います。 よろしくお願いします。 ---------------------- HP1 ---------------------- <?php session_start(); //セッション開始 $_SESSION["str"] = "aiueo あいうえお"; $_SESSION["num"] = 1; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" > <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" /> <title>session01</title> </head> <body> <p>page1</p> <?php print $_SESSION["str"]."<br />"; print $_SESSION["num"]."<br />"; ?> <p><a href="session02.php">page2へ</a></p> <?php ?> </body> </html> ---------------------- HP2 ---------------------- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" > <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" /> <title>session01</title> </head> <body> <p>page1</p> <?php print $_SESSION["str"]."<br />"; print $_SESSION["num"]."<br />"; ?> <p><a href="session01.php">page1へ</a></p> <?php ?> </body> </html>

    • 締切済み
    • PHP

専門家に質問してみよう