• ベストアンサー

PHPのBBSについて

<? #TOPページ if($_SERVER["QUERY_STRING"] == ""){ } #インフォメーション elseif($_SERVER["QUERY_STRING"] == "info"){ } #BBS elseif($_SERVER["QUERY_STRING"] == "bbs"){ } #ハーボット elseif($_SERVER["QUERY_STRING"] == "harbot"){ } ?>のPHPでページわけしてるんですが BBSを組み込みたいのですが 組み込み方教えてください

  • suiku
  • お礼率46% (35/76)
  • PHP
  • 回答数4
  • ありがとう数7

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

  • ベストアンサー
  • sisya
  • ベストアンサー率39% (97/245)
回答No.3

すいません、少し足らなかったですね。 「header("掲示板のURI");」の部分を 「header("Location:掲示板のURI");としてください

suiku
質問者

お礼

ありがとうございました

suiku
質問者

補足

Warning: Cannot modify header information - headers already sent by (output started at /users/www/lipwood/iwasita/public_html/index2.php:2) in /users/www/lipwood/iwasita/public_html/index2.php on line 11 そうするとこんなエラーが出るんですが・・

その他の回答 (3)

  • sisya
  • ベストアンサー率39% (97/245)
回答No.4

#3の補足への返答です。 少なくともエラーメッセージの意味位は調べてください。 suikuさんの例文のプログラムが表示される前に 何かしらの文字列を表示していませんか? 文字列を表示した後に別のプログラムに飛ぶ処理を書くと HTTPの処理の順序がおかしくなるためエラーが発生します。 補足のエラーメッセージは 「index2.phpのプログラム2行目(恐らくheader命令)が実行できません。 index2.phpというファイルの11行目に問題があります」 と言う意味です。

suiku
質問者

お礼

すみませんすこし違ったみたいです ご支援ありがとうございました

suiku
質問者

補足

11行目はheader("Location:掲示板のURI");なんですが・・・ ↓実行時の状態 <? #TOPページ if($_SERVER["QUERY_STRING"] == ""){ } #インフォメーション elseif($_SERVER["QUERY_STRING"] == "info"){ } #BBS elseif($_SERVER["QUERY_STRING"] == "bbs"){ header("Location:掲示板のURI"); } #ハーボット elseif($_SERVER["QUERY_STRING"] == "harbot"){ } ?> BBSの所以外はすべてエラーはでないです

  • sisya
  • ベストアンサー率39% (97/245)
回答No.2

#BBS elseif($_SERVER["QUERY_STRING"] == "bbs"){ } の時に掲示板を表示させたいなら #BBS elseif($_SERVER["QUERY_STRING"] == "bbs"){ header("掲示板のURI"); } とすればTeaCupですら設置可能ですよ?

suiku
質問者

お礼

ありがとうございました

suiku
質問者

補足

すみませんが http:// から始めても ./ から初めてもできません(白紙のまま) PHPのバージョンは4.3.8です PHP以外に必要な物があればなんでしょう 僕の借りてるサーバーのサービス状態 http://www.lipwood.com/service.html

  • yatokesa
  • ベストアンサー率40% (201/496)
回答No.1

その PHPのBBSはどのような形になっているのでしょうか? 独立したphpプログラムでしょうか?

suiku
質問者

お礼

ありがとうございました

suiku
質問者

補足

訂正します (BBSを組み込みたいのですが 組み方教えてください ↓↓↓↓↓↓ 上記のPHPに適してるBBSが載ってるHPをほしいのですが僕は初心者なので分かりやすいところをお願いします 上記のPHP以外のページ分けでBBS設置できるなら それでもいいです) に訂正します

関連するQ&A

  • PHPでBBSを作りたいのですが・・・。

    初心者の初心者です・・・。 使っているサーバーがPHPが出来るので、意外と簡単と噂のPHPを勉強しています。 今使っている本はMYSQLなどのデータベースと関連付けているもので、サーバーではMYSQLは使えないそうなのです。 データベースがなくても、なにやら空のファイルを作ってそこにログを蓄積、HTMLとして出力すればBBSは出来るらしいのですが、じっさいPHPのプログラムの中ではどういった文を書けばよいのでしょうか・・・。 配布されているスクリプトのソースを何回かみて、なんとなく・・・これかなー??みたいのはわかるのですが、完成されたプログラムは長いし複雑すぎてちょっと辛いです。お願いします、助けてください(;;) たとえば、フォームに入力した1文字を送信ボタンのようなものを押すことで、ページに出力。 ログを残しながら次々に出力できるようにするプログラムの例とかを教えていただけるとうれしいです。

    • ベストアンサー
    • PHP
  • ハーボット

    私はインフォシークでホームページを開設しています。 どうしてもTOPページにハーボットを入れたいんですが入れたら ○○○.co.jp/ のようなアドレスがスラッシュで終わると入れることができないようです。でもほかのインフォシークメンバーのページを見るとTOPページにハーボットがありますがどんなしたらスラッシュで終わらさないでできるでしょうか?

  • PHPでのガラケー、PC、iPhone振り分け

    レッツPHPさんの写メールBBSを使用しています。 iPhoneページを作成し、mailbbs.phpで振り分け設定を試みたのですが どれだけやってもどうにも上手くいきません。 スマートフォンのページ名をmailbbs_smart.htmlとし、 (他のPC用、携帯用ではデフォルトでmailbbs_pc.html、mailbbs_i.htmlとなっていました) 振り分け設定では mailbbs.phpに $ua = explode("/", $_SERVER['HTTP_USER_AGENT']); if (strstr($ua[0], "DoCoMo")) { $env = "i"; // DoCoMo } elseif (preg_match("#^UP.Browser|KDDI#i", $ua[0])) { $env = "i"; // au } elseif (preg_match("#^J-PHONE|Vodafone|SoftBank|MOT#i", $ua[0])) { $env = "i"; // Vodafone } elseif (preg_match($ua[0] , "iPhone")) { $env = "smart"; //iPhone } と記述しました。 他にeregなどでも設定したのですが大抵 ・ページが表示されない か ・PC用のデザインで表示される という風になってしまいます。 htmltamplate.incとの関連付けが上手くいってないからでしょうか。 当方PHPに関してあまり詳しくありません。 レッツPHPさんの写メールBBSを使用した方いましたら、 是非ご教授お願いします。 レッツPHPさんのHP http://php.s3.to/bbs/bbs7.php

    • 締切済み
    • PHP
  • phpで音を鳴らす

    phpで音を鳴らしたいです。 サーバーにアップしておいた、10個の音を、条件毎に別の音が鳴るページを作りたい。 if (n=="1"){ サウンド1を再生 } elseif(n=="2"){ サウンド2を再生 } ・・・・ みたいな感じです。 php5を使用しています。 ブラウザに依存せずにIEでもFireFox、スマートフォンでもなるようにしたいです。 お願いします。

    • ベストアンサー
    • PHP
  • PHPとaccesskey

    携帯向けのHPを作っています。 1枚1枚画像が表示される簡易フォトアルバムを Sapphirus.Biz(http://www.sapphirus.biz/)さんの 所からお借りしています。 大体は思う通りになってきたのですが、 ひとつだけどうしてもわからないところがあります。 携帯で3を押したら前や次のページに 飛ぶようにしたいのですが、 例えば <?php //ページめくり用スクリプト部分(前へ) if($prev){ echo"&#xE522;<a href=\"?$dataDir|$prev\">前へ</a>"; }else{ echo"&#xE522;前へ"; } の echo"&#xE522;<a href=\"?$dataDir|$prev\">前へ</a>"; を echo"&#xE522;<a href=\"?$dataDir|$prev\" accesskey="1">前へ</a>"; のようにすると""の前の\のせいか 画像もリンクも見えなくなってしまいます。 (全く白紙のページしか見えなくなる) どうしたらいいでしょうか? 以下ソース <?php //設定 $contents='album.txt'; //タブ区切りのテキストファイル名 //メイン header("Content-type: text/html; charset=SJIS"); $query=$_SERVER['QUERY_STRING']; if(!$query) exit('ディレクトリが指定されていません'); elseif(!strstr("|",$query)){ list($dataDir,$no)=explode("|",$query); }else{ $dataDir=$query; } $data=@file("$dataDir/$contents")or exit('データファイルが開けません'); $total=count($data); if(!$no) $no=1; list($file)=explode("\t",rtrim(mb_convert_encoding($data[$no-1],'SJIS'))); $image="$dataDir/$file"; list(,,,$attr)=@getimagesize($file); if($no>1) $prev=$no-1; if($no<$total) $next=$no+1; /* ここから下が表示用HTMLです */?> <head> <title>タイトル</title> <link href="../style.css" rel="stylesheet" type="text/css"> </head> <body> <div id="MAINLAYOUT"> <center> <?=$no?>/<?=$total?><br> <!-- イメージ表示 --> <div id="IMG"><img src="<?=$image?>" alt="<?=$file?>" <?=$attr?> /></div> <?php //ページめくり用スクリプト部分(前へ) if($prev){ echo"&#xE522;<a href=\"?$dataDir|$prev\">前へ</a>"; }else{ echo"&#xE522;前へ"; } //ページめくり(前へ)ここまで ?> - <?php //ページめくり用スクリプト部分(次へ) if($next){ echo"&#xE524;<a href="\?$dataDir|$next\">次へ</a>"; }else{ echo"&#xE524;次へ"; } //ページめくり(次へ)ここまで ?> <hr> &#xE523;<a href="menu.htm" accesskey="2">メニューへ</a><br> <hr> &#xE5AC;<a href="index.htm" accesskey="0">Topへ</a> </center> </body> </html>

    • ベストアンサー
    • PHP
  • empty($_SERVER['REQUEST_U

    empty($_SERVER['REQUEST_URI'])とは、何のことでしょうか? 下記スクリプトの意味について教えてください。 // // Fix unavailable $_SERVER['REQUEST_URI'] on IIS // if ( empty($_SERVER['REQUEST_URI']) ) {  $_SERVER['REQUEST_URI'] = $_SERVER['PHP_SELF'];  $_SERVER['REQUEST_URI'] .= ( !empty($_SERVER['QUERY_STRING']) ) ? '?'.$_SERVER['QUERY_STRING'] : ''; } ▼if ( empty($_SERVER['REQUEST_URI']) ) { $_SERVER['REQUEST_URI']が空だったら、の意味が分かりません。 ページにアクセスするためのURIを指定しなかったら? それは、どんな状況なのでしょうか? ▼$_SERVER['REQUEST_URI'] = $_SERVER['PHP_SELF']; $_SERVER['REQUEST_URI']に、現在実行しているスクリプトのファイル名を利用。これは、何をしているのでしょうか? ▼$_SERVER['REQUEST_URI'] .= ( !empty($_SERVER['QUERY_STRING']) ) ? '?'.$_SERVER['QUERY_STRING'] : ''; クエリ情報(URLの"?"以降の文字列)が空でなければ、クエリ情報をくっつける。空だったら、くっつけない 結局、このスクリプトでは何をしようとしているのでしょうか? また、このスクリプトがないと、どういう不具合が起きる可能性があると、想定されるでしょうか? 検索してみたら、下記のようなページがあったのですが、 IIS(サーバ?)固有の不具合回避対策なのでしょうか? ▽Dokeos Forum • View topic - IIS $_SERVER['REQUEST_URI']   http://www.dokeos.com/forum/viewtopic.php?t=8335

    • ベストアンサー
    • PHP
  • レンタルBBSの「HOME」にURLを入力してもうまく戻れないのです

    BBSをレンタルしてジオにてサイト運営をしている者です。管理者画面にて、「HOME」欄にサイトURL(トップページ)を入力し、実際にBBSから「HOME」をクリックすると、「You don't have permission to access /Milkyway-Cassiopeia/○○○○/ on this server.」というエラーになってしまいます。(BBS管理者画面における「HOME」欄にはURL全部(http://~全て)を入力しています。)ここで、エラーになっている画面のアドレスバーに「index.html」と追加すると、ちゃんと「HOME」(トップページ)が表示されます。 初めてトップページを表示させるとき(BBSから戻らないとき)には(アドレスバーに)「index.html」を省略してもOKなのに、BBSからトップページ(HOME)に戻るときには「index.html」をつけないといけないのはなぜなのでしょうか?

    • ベストアンサー
    • HTML
  • よくわかるPHPの教科書から、

    「Twitter風ひとこと掲示板」の作成でのエラー。 [OK] ・データーベース作成 ・会員登録画面から登録可能 ・データベースを見ると登録されていること確認 http://higelatta.bob.buttobi.net/nise_twitter/index.php http://higelatta.bob.buttobi.net/nise_twitter/login.php [NG] ・ログイン画面でログイン後、TOPのindex.php画面に飛んだとき、エラーが発生 ■エラー内容 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-5, 5' at line 1 以上です。 SQL文にエラーがありますと、バージョンがどーのこーのといっているようですが、 具体的な解決方法がわかりません。 以下に、TOPのindex.phpのソースを少々添付いたします。 <?php session_start(); require('dbconnect.php'); if (isset($_SESSION['id']) && $_SESSION['time'] + 3600 > time()) { // ログインしている $_SESSION['time'] = time(); $sql = sprintf('SELECT * FROM members WHERE id=%d', mysql_real_escape_string($_SESSION['id']) ); $record = mysql_query($sql) or die(mysql_query()); $member = mysql_fetch_assoc($record); } else { // ログインしていない header('Location: login.php'); } // 投稿を記録する if (!empty($_POST)) { if ($_POST['message'] != '') { $sql = sprintf('INSERT INTO posts SET member_id=%d, message="%s", reply_post_id=%d, created=NOW()', mysql_real_escape_string($member['id']), mysql_real_escape_string($_POST['message']), mysql_real_escape_string($_POST['reply_post_id']) ); mysql_query($sql) or die(mysql_error()); header('Location: index.php'); } } // 投稿を取得する $page = $_REQUEST['page']; if ($page == '') { $page = 1; } $page = max($page, 1); 以上です。 長々と申し訳ありません。 おそらく、 if (isset($_SESSION['id']) && $_SESSION['time'] + 3600 > time()) { 付近に問題があるのかなと思うのですが、 詳しい方ご教授願います。

    • ベストアンサー
    • PHP
  • PHP ハイパーリンク

    PHPで条件があった場合次のページに、とべるようにしたいのですが何と記述していいか調べてもいまいち解らないので質問させて頂きます。 <?php $ID = $_POST['ID']; $PWD = $_POST['PWD']; if($db = sqlite_open('db_ninshou')){ $query = "SELECT ID, PWD FROM tbl_ninshou WHERE ID = '$ID' AND PWD = '$PWD'"; $result = sqlite_query($db, $query); if($info = sqlite_fetch_array($result)){ print "認証に成功しました。下記URLから講義の登録を行ってください。\n"; print ここで次のページにとべる命令をしたのですが解りません。; }else{ print "認証に失敗しました。再度入力してください。"; } }else{ die("DBエラー"); } sqlite_close($db); ?> HTMLなら <A HREF = "URL">~</A>というふうに記述すればいいと思うのですが。リンクを貼る記述の仕方か、もしくは条件に当てはまったら自動的にページにとべるような命令の仕方を探しています。説明が下手で申し訳ありませんが・・・よろしくお願いします。

    • ベストアンサー
    • PHP
  • 写メールBBSの携帯ページSoftBank振り分けについて

    レッツPHPの写メールBBSを使用しています。 私、個人はauの携帯電話で、友達のドコモも問題なく見れていました。 過去にはボーダフォンの携帯でも問題なく見れていました。 しかし、先月くらいからSoftBankの人から「パソコン用のページが表示される!」と連絡が入りました。 確認すると間違いなくPC用のHTMLを読み込んでいます。 振り分けの記述は下記のデフォルトの通りなんですが。。。 $env = "pc"; $ua = explode("/", $_SERVER['HTTP_USER_AGENT']); if (strstr($ua[0], "DoCoMo")) { $env = "i"; // DoCoMo } elseif (preg_match("#^UP.Browser|KDDI#i", $ua[0])) { $env = "i"; // au } elseif (preg_match("#^J-PHONE|Vodafone|SoftBank|MOT#i", $ua[0])) { $env = "i"; // Vodafone 携帯の設定では無いような気がしますが、どうしたら携帯用のページを表示させてますでしょうか??

    • ベストアンサー
    • PHP