PHP
- ヘッダーやフッター全ページ共通部分の生成
全ページ共通のヘッダーやフッターを外部ファイルとして持ち、PHPで表示させるやり方があると思うのですが(すみません表現が間違ってるかもしれませんが)、拡張子は全て.phpにせざるを得ないでしょうか? SSIでもJavascriptでもなく共通をファイルを使い回す方法は他にないでしょうか?
- なぜか小さなスペースが入ってしまいます。
OSはRedhatLinux7.1 Apache_1.3.26 php-4.2.3 mysql-3.23.52 を使っています。 問題を解いて正解したら「正解です。」不正解なら「不正解です。」と表示させたいのですが、 正解の答えをクリックしても不正解になります。 原因を調べてみたのですが、 前ページから送られてくる答え($answer)は"12"となっているけど、 前ページで解いた問題の問題番号($pid)から正解($ca)をsqlで呼び出して表示すると"12 "となってしまっていました。 "12"と"12 " この小さなスペースのせいで$ca==$answerとならないのではないかと考えています。 なぜこのような小さなスペース" "が入ってしまうのでしょうか。 まだプログラムを始めたばかりです。 どうかアドバイスお願いします。 $con=mysql_connect("localhost","root"); mysql_select_db("webseminar"); $sql = "select ca from tbl_prob where pid='$pid'"; $result = mysql_query($sql); $data = mysql_fetch_object($result); $ca = $data->ca; print("あなたの解答は\"$answer\"です。<br>"); print("正解は\"$ca\"でした。"); if($ca==$answer) print("正解です。"); else print("不正解です。"); 『結果』 あなたの解答は"256"です。 正解は"256 "でした。不正解です。
- ページ表示の時間
こんにちは。質問させてください。 今HTMLとPHPを利用してWEB画面を作成しています。 デフォルト画面はメニュー画面でいくつかのボタンを配置させています。 それぞれのボタンをクリックすると対応したPHPファイルを 実行させています。 その実行されるPHPファイルはそれぞれOracleと接続してSQLを 走らせてその結果を画面表示させます。またここでもボタンを配置して 他のPHPファイルを起動させています。 (※基本的にPHPファイルは全部SQLを走らせています。) 今、画面上のボタンをクリックしてPHPファイルを実行させていますが、 以上に表示されるまで時間がかかってしまい、イライラしてしまいます。 画面の表示する時間に影響するものはいったい何なんでしょうか? 例えば、SQL文がうまくかけてないので検索に時間がかかるとか、 次のPHPファイルへの引数が異様に長いとか・・・ こんなんじゃないの?ってのがありましたらアドバイスお願いいたいます。
- 締切済み
- PHP
- masakodesu
- 回答数1
- ローカルにあるhtmlのフォームからのデータ取得について
こんにちは。 ローカルに保存しているhtmlにフォームを配置しある値を格納した後、そのデータをサーバー上にPOSTするとエラーにならずサーバー側で処理を行ってしまいます。 これをさせないようにするにはどのようにしたらよいか教えてください。 環境はRedhatLinux7.2+apache1.3.26+php4.2.2です。 例として、サーバとは違うPCのローカルに置いたHTMLファイルの内容は以下のようにします。 <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <TITLE></TITLE> </HEAD> <BODY> <FORM action="http://www.hogehoge.com/test.php" method="post"> <INPUT size="20" type="text" name="test"> <INPUT type="submit" name="submit" value="送信"></FORM> </BODY> </HTML> そしてサーバにあるtest.phpの内容は以下のようにします。 <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <TITLE></TITLE> </HEAD> <BODY> <? print $test; ?> </BODY> </HTML> このローカルのhtml内のテキストボックスに何か入力して送信ボタンを押すとtest.phpでその内容が表示されてしまうのです。これを防ぐ方法を探しています。 つまり同じサイト内(http://www.hogehoge.com/にあるファイル)からのPOSTしか受け付けないようにしたいのです。 ちなみにregister_globalはOnにしてありますがOffにしても変数を$_POST["test"]にすると表示されます。 よろしくお願い致します。
- phpとpostgresでの条件処理
phpでPostgresのデータベースに接続して3つのテーブルから以下のようにフォームでdata-1が あった時のリレーションを表示させたいと考えています。 $sql = "select data-1,data-2,data-3,data-4 from table1,table2 where data-1 = '$data-1' and data-2.table1 = data-4.table2"; $result = pg_exec($sql); $rows = pg_numrows($result); $columns = pg_numfields($result); この時、data-1が空欄の場合は、row0がないのでエラーになります。data-1が空欄の場合もあるので 空欄の場合は処理を分けるようなことができるのでしょうか。
- ベストアンサー
- PHP
- noname#8847
- 回答数2
- php.iniのinclude_path名の取得方法について
php.ini内で設定するinclude_pathの取得方法がありましたらどなたか教えてください。 よろしくお願いします σ(^_^)
- PHPformmail の文字化け
PHP初心者です。 インターネットから英語のPHPのformmailというサンプルをダウンロードし、自分のサーバーでテストしてみたんですが、文字化けします。フォームを作成したhtmlファイル(日本語)から、actionによってダウンロードしたphpファイルのページへいきますが、そのときのページが文字化けになります。(このページは、あなたは以下の情報をおくりました という確認のページです。)フォームにインプットした日本語文字は、eメールで受けた時は、文字化けされませんでした。(この時は、ブラウザなり、メールの文字エンコードをしてます。)PHPサンプルを作ったところに問い合わせたところ、htmlタグを、<html lang="ja">にしてみたら?と答えがかえってきて、実行してみましたが、何も変化なし。私のサーバーの方にも問い合わせしてみたんですが、回答待てどもなし・・・。 このOK web でもよく見かけましたが、php ini というファイルになにか関係ありますか?(php ini のファイルは何のことですか?) *私の質問が分かりにくいかもしれません。私が行おうとしているのは、phpを使って、日本語でインプットした情報を、emailによって受けられるようにしたいのです。
- CGI Error が、まれに起こる
早速質問させてください。 現在、ログインページを作成し、ログインが成功したら次のページへ header("Location:main.php"); へジャンプするものを作成しています。 その際、正しい URL を指定しているにも関わらず、まれに CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are: が発生してします。 どのような時にこの現象が起こるのかどうしても分かりません。 もし、お分かりになる方がいましたらご教授ください。 環境 OS:Win2000 IIS5.0 + PHP 4.1.2 ------------------------- <?php session_start(); session_destroy(); if($loginFlag==1){ $ret = loginCk($username,$password); // ログインのチェック if($ret==false){ echo "ログインに失敗しました。"; }else{ session_register("g_username"); $g_username = $username; header("Location:main.php"); // main.php へジャンプ } } ?> <html> <body> <form method="post" action="login.php"> <input type="text" name="username" size="30"> <input type="password" name="password" size="30"> <input type="hidden" name="loginFlag" value=1> <input type="submit" value=" ログイン "> </form> </body> </html> -------------------------- 以上です。
- HTMLのフォームで入力した値をPHPで受け取る
こんにちは LinuxにPHPとMySQLをインストールしているのですが、入力フォーム(HTML)で input type="text" name="aaa" で入力した値を、actionで飛ばしたphpで変数($aaa)として受け取れません。 単純なphpファイル(phpinfo();のみや、print "文字列"だけ)だと表示され、一つのファイルの中で変数の中に文字列を格納してprintで表示すると成功します。 OSはRed Hat Linux release 7.3 OSインストール時に合わせてインストールされたApache(Apache/1.3.23 Server)を使用。 phpはhttp://www.php.netでダウンロードした「php-4.2.3.tar.gz」を解凍し、configureを行う際に、MySQLとApacheとの連係を指定しています。 インストール後にApacheの設定ファイル(etc/httpd/conf/httpd.conf)の以下の2行の行頭のコメントマークを外してます。 AddType applocation/x-httpd-php .php AddType applocation/x-httpd-php-sourcd .php 分かる方、教えてください。
- foreachで多次元配列を生成
こんにちわ。 配列をforeachでループさせて、それを多次元配列に入れていくことは可能でしょ うか? 例えば以下のようなデータがあるとします。 ---meibo.dat-------- c21<>田中<>21<>東京 c22<>佐藤<>22<>大阪 -------------------- ---test.php----------------------------------------------------- <? $list_meibo = file("meibo.dat"); foreach($list_meibo as $temp){ $i=split("<>",$temp); $a=array($i[0] => array("name"=>$i[1],"age"=>$i[2],"ad"=>$i[3]),); } ?> ------------------------------------------------------------------- これでは $a=array("c21"=>array("name"=>"田中","age"=>"21","ad"=>"東京"), "c22"=>array("name"=>"佐藤",age"=>"21","ad"=>"大阪"),); という具合になってくれないでしょうか? これでいくと、配列の最後の要素のみデータに残ります。 どのようにしたらよいでしょうか? ご教授お願いします。
- 更新画面での複数のcheckedについて
複数チェック可能のチェックボックスにチェックさせ、データベースに格納しています。 レコードを更新する際にwebフォームではあらかじめ既に入力された値にはチェックを入れておきたいので 以下のように書いています。 $job1 = pg_result($result,0,"job"); <input type="checkbox" name=job" value="プログラマ"<? if($job == "プログラマ")print "checked";?>>プログラマ (以下プログラマ以外の職業についてinput行を書いています。) ユーザがjobに関してチェックするのが1つの時は更新画面でそのとおりにチェックされるのですが、複数個の場合 はチェックされません。複数個チェックされているように表示したいのですが、やり方がわかりません。 ここを参照しなさい、とかこういう関数を使うとかだけでもご教示いただけると助かります。 よろしくお願いします。 環境は以下のとおりです。 redhatLinux apache1.3.20 postgres7.0.2 php4.0.6
- ベストアンサー
- PHP
- noname#8847
- 回答数4
- SQLで。
webでphpを使ってpostgreSQLのデータを表示させています。 pgSQLのデータベース、「テーブルA」があります。 そこで「テーブルA」のデータを引っ張ってくるときに最後の50件だけを表示させたい場合は どういったSQL文だとそのデータを引っ張ってこれるのでしょうか? それともSQLでテーブルAのデータを全部引っ張ってきたあとphpで最後の50件だけ表示させないとだめなのでしょうか? ちなみに「テーブルA」にはフィールド名、「code」と言うフィールドにオートナンバー型のデータが 「1~n」あります。 初心者なのでうまく説明できなくて申し訳ありませんが 良いやり方がありましたら宜しくお願いしします。 PostgreSQL 7.0.2 PHP4
- ディレクトリの作成方法
基本的なことなのかしれませんが、 PHPでディレクトリの作成方法を教えてください。 以前、MKDIRで作成していたようなのですが、 メンテしたらできなくなりました。 前のPHPファイルからsubmitで呼び出していたのを location.hrefでURL呼出に変更したのですが、 mkdir処理自体は変更していません。 また、mkdirでコマンドを検索してもヒットしないのですが コマンド自体なくなったのでしょうか? もしなくなったのであれば、代わりのコマンド(処理方式)はありますか? 複数質問してもうしわけないのですが、宜しくお願いいたします。
- ベストアンサー
- PHP
- y-kawamura
- 回答数3
- phpでcookieをセットする方法
こんにちは。php4 apacheです。 簡単なログインのシステムを作りたいのですが、cookieのセットでつまづいてしまいました。 ちなみに前の質問は http://oshiete1.goo.ne.jp/kotaeru.php3?q=374947 です。 http headerは本文の前に送信しなければいけない事は教えていただいてわかったのですが、では具体的にどう記述したらいいのかまだわかりませんのでお力をいただければと思います。 やりたい事は、ページ1のテキストボックスに入力した値をページ1をサブミットさせてページ2にとばし、ページ2で、フォーム値があればその値をcookieにセット、なければそのままロード、ということをしたいのですが・・・。 ページ2の一番最初に、「もしフォーム値があればcookieをセット、 なければ(すでにcookieが存在するはずなので)そのままロード」 という処理を記述しているのですが、やはり前質問と同じエラーが出てしまいます。 cookieをセットする場合、if文すらその前に記述してはいけないのでしょうか・・・? とすると、こういう場合はどう記述してやるのが通常なのでしょうか? 何分仕事中なもので、返事が遅れることがあると思いますがアドバイスのほど宜しくお願い致します。
- phpが起動できません。
win98+apache+php4でPHPを動かしたいのですが Apacheは、動くことを確認したのですがPHPを組み込むと 途中でApacheが止まってしまいます。 画面には、 Syntax error on line 193 of c:/apache/conf/httpd.conf: Cannot load c:/php/sapi/php4apache.dll into server: (1157) このアプリケーション の実行に必要なライブラリ ファイルのうちの 1 つが見つかりません。: と出ています。 c:/apache/confのhttpd.confのline 193には。 LoadModule php4_module c:/php/sapi/php4apache.dll とあり、c:/php/sapi/フォルダにphp4apache.dllが置いてあります。色々調べたのですがわかりません。 初心者ですので教えいただければ幸いです。
- テーブルに送信ボタンをつける
phpで以下のようなテーブルにデータを表示させるプログラムがあるのですが、表示させる各行の最後に送信ボタンを付けたいのですがどうすればよろしいでしょうか?よろしくお願いいたします。 print ("<TABLE border=\"1\"><TBODY>\n") ; for ($i = 0; $i < $numrows; $i++) { $data = pg_fetch_array ($result, $i) ; print ("<TR>") ; print ("<TD>" . $data[" "] . "</TD>"); print ("<TD>" . $data[" "] . "</TD>"); print ("<TD>" . $data[" "]. "</TD>"); print ("</TD>\n"); } print ("</TBODY></TABLE>\n");
- チェックボックスから配列を使って値を受け取る方法
チェックボックスから配列を使って値を受け取る方法について、 以下の通りに試してみたのですが、上手く行かず、 配列$fCに値が入りません。 どなたか原因を教えていただけないでしょうか。 ------------------------------------------------ hoge.html <form action="hoge.php"> <input type="checkbox" name="fC[]" value="hoge"> hoge <br> <input type="checkbox" name="fC[]" value="foo"> foo <br> <input type="checkbox" name="fC[]" value="bar"> bar <br> <input type="submit" value="OK"> </form> ---------------------------------------------------------- ------------------------------------------------- hoge.php <? for( $i=0; $i<count($fC); $i++ ) { print $i ." ::: " . $fC[$i] . "<br>\n"; } ?> ----------------------------------------------------------
- ベストアンサー
- PHP
- haruka_kobe
- 回答数3
- phpでcookieのセット
こんばんは。 php4 apache でプログラミングしています。 cookieをセットしようとして、マニュアル通り setcookie ("TestCookie", "Test Value"); と記述すると、 Warning: Cannot add header information - headers already sent by (output started at /url~ といったエラーが出ます。 原因に心当たりのある方はアドバイス宜しくお願い致します。
- フォーム・データの取得
こんにちは。 OSはRedhatLinux7.1を使っています。 Apache_1.3.26 PostgreSQL-7.2.1 php-4.2.1 でWebアプリケーションを作ろうとしています。 今phpの勉強をしているのですが、基本的なプログラムがまだうまくいきません。 『input.html』にアクセスすると、テキストボックスボタンの簡単な入力フォームが現れ、ボタンを押すとテキストボックスに入力した文字が表示されるようにしたいのですが、うまくいきません。 テキストボックスに入力しても何も表示されない・・・ ちなみに綴りの間違いはないと思います。何度も確認したので・・・ 初歩の初歩でとてもお恥ずかしいですが、どこか間違っていたら教えてください。 お願いします。 『input.html』 <html> <body> <form method="post" action="result.php"> <input type="text" name="formvalue"> <input type="submit"> </form> </body> </html> 『result.php』 <?php echo $formvalue; ?>