トップページ⇒php
1001コメント331KB

【PHP】くだらねぇ質問はここに書き込みやがれpart3

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん05/02/07 21:47:15ID:???
PHPに関するくだらない質問用すれです。
ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい

・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
070868905/03/02 23:35:30ID:???
>>692-696
詳しい解説と考察をありがとうございました。マニュアルには

>複雑な処理を行ったり、 重い繰り返し処理を行う場合、
>switchの方がより処理が速い可能性があります

とありますが、今回のは簡単な処理だと思いますし、行数を
減らしたいので if を使います。
0709nobodyさん05/03/02 23:55:12ID:???
PHPicalendarで↓のような警告文が出て参ってます
もう何がなんだかちんぷんかんぷんです。
どなたかどういう警告で何が原因なのか教えてくださいお願いします・゚・(´Д`)・゚・
------------------------------------------------------------------------------------
Warning: fopen(): SAFE MODE Restriction in effect. The script whose uid is 11005 is not allowed to access /tmp owned by uid 0 in /PHPicalendarまでのパス/functions/ical_parser.php on line 1070

Warning: fopen(/tmp/parsedcal-Home-2005): failed to open stream: No such file or directory in /PHPicalendarまでのパス/functions/ical_parser.php on line 1070

Warning: fwrite(): supplied argument is not a valid stream resource in /PHPicalendarまでのパス/functions/ical_parser.php on line 1071

Warning: fclose(): supplied argument is not a valid stream resource in /PHPicalendarまでのパス/functions/ical_parser.php on line 1072

Warning: touch(): SAFE MODE Restriction in effect. The script whose uid is 11005 is not allowed to access /tmp owned by uid 0 in /PHPicalendarまでのパス/functions/ical_parser.php on line 1073
------------------------------------------------------------------------------------
0710nobodyさん05/03/03 00:58:57ID:pcZIX8SU
$a=1
$_SESSION['$a']
こんなかんじで使いたいのですが、$aを展開する書き方はありますでしょうか?
$_SESSION['$_SESSION[$a]']
↑できればこれも。。
わかりづらい説明ですみません。うまく説明できないです。
071171005/03/03 01:20:37ID:???
>>709
上で710程度の質問してるくらいなので詳しいことはわかりませんが、
SAFE MODE phpで検索すればそれらしきものが出てきます。
一行目:今のUIDでは/tmpへアクセスができない
二行目:fopen(/tmp/parsedcal-Home-2005) 作成されるはずだったファイルがないため開けない。
三行目:存在しないので、ロックもできない
四行目:存在しないので、書き込みもできない

ということではないでしょうか?詳しい方どうでしょ?
0712nobodyさん05/03/03 02:01:11ID:???
>>710
シングルクォートを外せば良い。
$_SESSION[$a]
$_SESSION[$_SESSION[$a]]

>>709
711 の説明でだいたい正しいように思う。
SAFE MODE を外せないのであれば、テンポラリファイルを作成する
場所を /tmp から適当な httpd の動作権限で書き込み可能な
ディレクトリに変更すれば動作するのでは?
071371005/03/03 02:13:20ID:???
>>712
望んでいた結果が得られましたありがとうございます。
0714nobodyさん05/03/03 09:13:21ID:L91eb6rn
すみません。ちょっと、教えて頂けますでしょうか。
PHPで、リロードせずに時刻を常に更新させたいのですが、どのように
すれば良いのでしょうか。

<?php
while(True)
{
print(date("Y/m/d h:i:s"));
}
?>

と書くと、「2005/03/03 09:16:57」という文字が連続して表示され、
1秒も進みません。
時刻を更新し続けたいのですが、どなたかやり方を教えて頂けま
すでしょうか。何卒、宜しくお願い致します。
0715nobodyさん05/03/03 09:36:32ID:???
>>714
print(date("Y/m/d h:i:s")) が実行にかかる時間をちょっと調べてみようか。

$start = microtime(); // マイクロ秒単位でunixタイムスタンプを取得
print(date("Y/m/d h:i:s"));
$stop = microtime();
print ($stop-$start);

一回だけの試行なので信頼性はあんまり無いんだが、
うちの環境だと 0.000204秒になった。4900回/秒 くらいってことだな。

sleep()を使って1秒に一回くらいのペースでdate()を実行させるか、
そもそも鯖側で実行させずにJavaScript等のクライアント側でやらせた方がよいと思われ。
0716nobodyさん05/03/03 09:40:35ID:???
>>714
metaタグでリフレッシュする(結局リロードと一緒なのであまりサーバには良くない)
表示するだけならJavaScriptでやっとけ
0717nobodyさん05/03/03 10:40:32ID:7OeoLBpl
mb_send_mailはメール送信先にメールが届けられて初めてTRUEが返ってくる
ものですか??
でたらめなアドレスを送信先引数にしてもTRUEが返ってくるのですが・・・。
0718nobodyさん05/03/03 11:09:37ID:???
>>717
最初のMTAに処理を依頼した結果が返ります。
0719nobodyさん05/03/03 11:24:02ID:7OeoLBpl
MTAとは
インターネット内で電子メールを配送するソフトウェア。
ユーザが送信したメールを受け取って、他のサーバと連携して
バケツリレー式に目的地まで配送したり、
届いたメールをユーザが受け取るまで保管したりする。
ってことは送信先に届けましたよってことでTRUEが返ってくるわけでは
ないということでしょうか??

0720nobodyさん05/03/03 11:53:35ID:???
>>719
例えばsendmailの場合、下のurlにあるような結果(終了コード)を返す。
ttp://www.linux.or.jp/JM/html/sendmail/man8/sendmail.8.html
sendmailがどう設定されているかはその鯖の管理者にしか分からん。
そして、PHPはこの終了コードだけを見て適当に加工してmb_send_mailの返り値としている。
phpのソースコードをぱっと見た感じでは、EX_OKの時にtrueを返しているみたいだな。

つーわけで、mb_send_mail == trueになったからと言って、
そのメールが確実に相手に届いているかどうか(届く予定かどうかさえも)分からない。
確実に届いたかどうか確認したきゃ、メールの中にidを含んだURLを書いておいて
相手にアクセスさせるくらいしかないわな
0721nobodyさん05/03/03 12:32:41ID:7OeoLBpl
詳しい説明ありがとうございます。
感謝です。
0722nobodyさん05/03/03 13:08:25ID:T3a2sbue
PHPを使って、ページAを表示しています。
そのとき、ページAの中心部分に、外部テキストデータBを挿入したいと考えています。
しかし、外部テキストデータBを呼び出すには多少時間がかかるため、
可能ならばページAを表示した後、時間差で外部テキストデータBを表示したいと考えています。

これを実現するためにはPHP内でやるよりも、iframeを使うのがいいのかなと思っているんですが、
iframeだと最初に縦横サイズを決めておかねばならず、テキストの量が変化するし実に不便です。

時間差で後からテキスト文を挿入する方法があれば、教えてください。
0723nobodyさん05/03/03 13:48:25ID:???
>>722
javascriptでも使えよ・・
0724nobodyさん05/03/03 13:53:11ID:???
なんだと
0725nobodyさん05/03/03 15:11:55ID:T3a2sbue
>>723
JavaScriptだと、時間差で読み込みできますか?

document.write(外部ファイル)

みたいな感じでいいでしょか?
0726nobodyさん05/03/03 16:18:55ID:7OeoLBpl
質問です。
mb_send_mailでエラー返送先Return-Pathを指定しなかったら
fromで指定したところにエラー返送されますか??
072770905/03/03 16:51:52ID:???
>>711-712
丁寧なレスありがとうございます

-------
1067行   // write the new master array to the file
       if (isset($master_array) && is_array($master_array) && $save_parsed_cals == 'no' && $is_webcal == FALSE && $cal != $ALL_CALENDARS_COMBINED) {
              $write_me = serialize($master_array);                   ~~~~
              $fd = fopen($parsedcal, 'w');
              fwrite($fd, $write_me);
              fclose($fd);
1073行          touch($parsedcal, $realcal_mtime);}
-------

色々試行錯誤した結果、力技といいますか
警告を受けていた「functions/ical_parser.php」の↑の波線部分の所をyesからnoに変えたらなんとか警告は出なくなりました
この変更によってどういう影響をもたらすのかさっぱりですが・・・('A`;)
0728nobodyさん05/03/03 18:19:00ID:???
>>722
しかし、外部テキストデータBを呼び出すには多少時間がかかるため

どんなでっかいテキストデータなんだ?
どれともローカル以外にあるとか?

いずれにしても、PHPでopenしたほうが手間無いと思われ。
0729nobodyさん05/03/03 18:48:52ID:???
現在のTV番組を配信してるrssはどこかないでしょうか?
0730nobodyさん05/03/03 18:52:01ID:sBw8KeR2
生まれて初めてphpというものを書いてみました。
いろんなphpの見よう見まねで作った、近々ある社会の用語テスト用のくだらないスクリプトなのですが、
うまくいかないのです・・・もしよければ相談に乗っていただけませんでしょうか?

スクリプトの内容は
<?
$question = array( "問1","問2","問3" );
$answer = array( "答1","答2","答3" );
print("[問]<br>$question<br><br>[答]<br>$answer");
?>
この4行ですorz
ためしに動かしてみたのですが、なぜか「問1」とか「答1」とか表示される所に「Array」と表示されました・・・
それでarrayを消してもう一度動かしてみたのですが、こんどはエラーで動いてくれませんでしたorz
構想としては「問1」とでるならば「答1」とでるように、つながってて(?)ほしいです・・
もしよければ悪い点を指摘して頂きたいです。phpの勉強もしてみたいので。。。
では宜しくお願い致しますorz
0731nobodyさん05/03/03 18:58:50ID:???
$question = array( "問1","問2","問3" );

この$question は "問1"、"問2"、"問3"、が入っている配列そのものを指していると思えばよい。
だから、配列を意味するArrayという文字が出てくる。決してarray()の"array"が表示されているわけではない。
問1(つまり配列の0番目)にアクセスするにはこの変数の後ろに[0]という添え字をつける。
$question[0]
問2であれば、
$question[1]
だ。
配列の先頭は1番目から数えるのではなく、0番目からスタートする。



0732nobodyさん05/03/03 18:59:26ID:7OeoLBpl
>>730
配列一つづつ表示させたいんですよね??
以下のようなやりかたで表示されるのでは?
for($i=0;$i<3;$i++){
print "[問]<BR>$question[$i]<BR><BR>[答]<BR>$answer[$i]
}
0733nobodyさん05/03/03 19:00:19ID:7OeoLBpl
質問です。
mb_send_mailでエラー返送先Return-Pathを指定しなかったら
fromで指定したところにエラー返送されますか??
0734nobodyさん05/03/03 19:02:27ID:sBw8KeR2
>>731
大変勉強になりますです 無事、表示できました。
ところで、ランダムに表示する事は可能でしょうか・・・?
また、その場合においてもquestionとanswerは結びついていて欲しいのですが・・・orz
0735nobodyさん05/03/03 19:03:42ID:W+vZoiDK
returnでfalseにせずに数字もしくは文字列の0を返したい場合、どすれば
よいですか?やっぱり、無理ですか。
0736nobodyさん05/03/03 19:04:40ID:7OeoLBpl
return 数字;
もしくは
return 文字列;
でできるのでは?
0737nobodyさん05/03/03 19:15:01ID:???
>>733
実際に試してみれば?

答えは「鯖の設定による」
0738nobodyさん05/03/03 19:19:44ID:???
もしランダムに選んで1回だけ表示でよいなら、

$i = rand(0, 2); // ← 0 〜 2 までの乱数を取得
print "[問]<BR>$question[$i]<BR><BR>[答]<BR>$answer[$i] ";
0739nobodyさん05/03/03 19:20:32ID:7OeoLBpl
>>737
SMTPの関係で今実際にメール送信ができないのです。
safe_modeを有効にした状態でmb_send_mailの第5引数に
Return-Pathを設定すると設定したアドレスにエラー返送できる。
ということまで分かっているのですが、
もし、このReturn-Pathを設定しなかったら。
”答えは「鯖の設定による」 ”ということは
safe_modeが有効だったらfromで指定したアドレスに返送される
ということでしょうか?
0740nobodyさん05/03/03 19:24:31ID:sBw8KeR2
>>738
ありがとうございます!!
できました!!
スレッドの皆さん、お世話になりました
これで勉強が少しやりやすくなりましたです 本当に有難うございました
0741nobodyさん05/03/03 19:52:32ID:???
日本語の勉強がんばってね
0742nobodyさん05/03/03 20:25:50ID:???
時代を感じるね phpで勉強とは。。。
0743nobodyさん05/03/03 20:29:59ID:???
オッサン乙
0744nobodyさん05/03/03 20:40:30ID:???
うるさい
0745nobodyさん05/03/04 09:58:10ID:???
>>739
Return-Path は、Recieved: ヘッダの情報を元に、最終的に
受け取った MTA が付けます。
0746nobodyさん05/03/04 14:53:02ID:isNQAP9U
外部のSMTPサーバを利用してメールの送信を行うにはどうすればいいですか?
0747nobodyさん05/03/04 15:12:57ID:???
>>746
どこまでやって、何につまってるのか書いてないので適当に答える。

・mail()関数を使う場合
 Linux -> sendmail等を直接叩くので不可
 Windows -> SMTPサーバ接続のみ利用可なので適切な設定でOK
・fsockopenでSMTPを直接喋る
 SMTPに則って、適切に実行する。ググればサンプルもあるはず。
 つーか、他の言語ではこの形式のものが多いから他言語のものであっても参考に汁
074874605/03/04 15:22:55ID:???
すいません、焦っていたもので環境を書き忘れてました。Linuxなんです。
でも、Linuxだと、mail()関数は使えないんですね。
参考になりました。ありがとうございます。
0749nobodyさん05/03/04 16:11:59ID:???
簡単なうぷろだを作ろうと実験してるんですが
フォームから$_FILES['upfile']['tmp_name'] で取得できる一時ファイルはどのタイミングで消えるんでしょうか。

$_SESSIONに一時ファイルのパス情報をいれて他のページに移動、
移動先のページで処理(アップロードファイルの確認とか)した後に$_SESSIONに保存しておいたパス情報を
使って move_uploaded_file() を発行しても、時間がある程度経過した後でもファイルを保存できますか?

それともアップロード直後に move_uploaded_file() で保存してやらないと一時ファイルは消えちゃいますか?

環境はLinux、Apache1.3系、PHP4.3.9 です。
0750nobodyさん05/03/04 16:18:30ID:???
>>746
「fsockopenでSMTPを直接喋る」ライブラリが豊富にあるので、それを利用する。
PHPMailerとか、Pearのクラスとか。
0751nobodyさん05/03/04 16:20:51ID:???
>>749
ttp://www.php.net/manual/ja/features.file-upload.php
移動または名前の変更が行われていない場合、リクエストの終了時にその
ファイルはテンポラリディレクトリから削除されます。
0752nobodyさん05/03/04 16:28:34ID:fHaVG3jY
>>751

ありがとう 読み飛ばしていたようだ(;´д`)
アップ後に一旦移動させる事にします
0753nobodyさん05/03/05 00:35:30ID:???
Configuration File (php.ini) Path を変更することってできるんでしょうか?
0754nobodyさん05/03/05 01:27:21ID:???
>>753
コンパイルをしなおせば。
0755nobodyさん05/03/05 01:51:38ID:???
>>753
-c <path>|<file> Look for php.ini file in this directory
0756nobodyさん05/03/05 01:59:54ID:???
>>755
CLI版はね。
0757nobodyさん05/03/05 03:36:18ID:???
>754-756

まずお礼を言わせていただきます。
今の自分にはそこまでするスキルがありません。
Windows 環境ですし。。。
0758nobodyさん05/03/05 08:56:07ID:???
>>757
Visual C++(Ver.6以降)があればWindowsでもコンパイルできる
0759nobodyさん05/03/05 09:34:58ID:???
そこでVCかよ…(;´Д`)
0760nobodyさん05/03/05 10:13:30ID:???
>758

難しいものなんでしょうか?
076176005/03/05 10:16:43ID:???
C++ は持っていませんが、他で使える環境があります。
コンパイルの方法を教えてもらえないでしょうか?
0762nobodyさん05/03/05 10:27:05ID:???
>>761
つ【日本語マニュアル】
つ【Google】
0763nobodyさん05/03/05 10:34:38ID:???
>>761
マニュアルを読む癖を付けた方がいい。
ttp://www.php.net/manual/ja/install.php
そこにも書いてあるが、ソースからwindows用のをbuildするのは結構難しい。
取り組むつもりなら独力でやるつもりでがんがれ
0764nobodyさん05/03/05 11:36:27ID:pdjPLFTW
>>734

ちょっと亀レスですみません。

ランダムに出すと言う意味ではちょっと>>738さんとは違うと思うんですが、

<?php
$qa=array(
array('問1','答1'),
array('問2','答2'),
array('問3','答3')
);

$num=rand(0,2);

print ("<p>".$qa[$num][0]);
print ("<p>".$qa[$num][1]);

?>

これだと、リロードするたびに違う問題が出てきます。
だから用語テスト的にはよろしいのではないかと・・・・。
0765760-76105/03/05 11:57:52ID:???
>762-763

わかりました。
自力でトライしてみます
ありがとうございました。
0766nobodyさん05/03/05 13:02:19ID:???
PHPで変数中にある指定文字のX番目以降の文字を返す関数はないでしょうか?
eregとsubstrの両方の機能があるような関数が欲しいのですが。

検索文字したい文字以降の X番目からY番目の文字を表示したいのですが。

たとえば$RR=あいうえをかきくけこさしすせそたちつてとなににねの;のとき。

検索文字=「かき」
X番目= 3
y番目= 6
とした場合
「こさしすせそ」 を表示させたいのですが。関数の名前だけでもいいので
誰かご存じないでしょうか?


0767nobodyさん05/03/05 13:05:49ID:???
昔はregister_globalsがデフォルトでonだったってのは
今考えるとかなりやヴぁいと思った
俺みたいな初級プログラマーは間違いなくハックされそう

extractも安易に使うとやばいような気もするんだけど、どうなんでしょう?
0768nobodyさん05/03/05 13:19:03ID:???
>>766
strposとsubstrを組み合わせれ
例のように全角文字を対象とするならそれぞれのマルチバイト対応関数を使うべし
0769nobodyさん05/03/05 13:37:03ID:???
>>766
無い!
0770nobodyさん05/03/05 13:55:45ID:???
>>766
$str="あいうえをかきくけこさしすせそたちつてとなににねの";
mb_ereg("かき(.{2})(.{6})",$str,$arr);
print_r($arr);
0771nobodyさん05/03/05 14:46:58ID:???
>>767
むしろ、ヤバさはregister_globals=Onよりも強力です。
extractを記述するってことで本人が意図的にやってる部分でスポイルされてますが。
0772ico05/03/05 14:47:38ID:???
質問です。携帯電話での音楽のダウンロードサイトを作っています。
□やりたいこと
音楽ファイルを1曲ダウンロードしたらセッションフラグを立てるなどして、
一度ブラウザを閉じてセッションをリセットしないと他の曲をダウンロードできないようにしたい。
ダウンロード完了後、他画面に強制的に遷移できれば問題ないはず
□問題点
ダウンロードまではできるのだが、各携帯電話によってダウンロード後の「保存画面」が存在する場合がある。
「保存画面」で「保存」が押下されたことを検知できない。
□打開策
案1:携帯の固定識別番号を取得しデータベースに登録。
データベースに存在する固定識別番号の携帯はTOP画面から入りなおさないと音楽ファイルのダウンロードを出来なくする。
 →問題点:「固定識別番号を送信しますか?」とダイアログボックスがでる携帯がある。利用者が不審に思い、サイトの利用を控えるのではないか?
□現在のソース
$file_location=i18n_convert($strPath,SJIS);
$filesize=filesize($strPath);
header ("Accept-Ranges: none");
header ("Content-Length: $filesize");
header("Content-Type: text/octet-stream");
header("Content-Disposition: attachment; filename=$cm_file_place");
i18n_http_output("pass");
$fp=fopen($strPath,"rb");
fpassthru($fp);
fclose($fp);
//端末に保存されたら強制的に画面遷移する(このままでは端末にファイルが保存されない・・・)
header("Location: ".COMPURL);
携帯にファイルが保存されたことを検知する方法ってないですかね?
もしくは他の方法で「□やりたいこと」を実現する打開策とか。
いろいろ調べてみたけど良い方法が見つからないので質問させて頂きました。
宜しくお願い致します

0773nobodyさん05/03/05 15:00:46ID:???
空メール送信にしたら?
0774ico05/03/05 15:04:39ID:???
>>773
いい案だけど却下です。
いちいちそんな手間を利用者に踏ませたくないというのと
僕だったらめんどくさくてダウンロードするのあきらめちゃいます^^;
0775nobodyさん05/03/05 15:11:33ID:???
もうね、お前の場合、だぁれも相手してくれないと思っていいよ。
「却下」って何様?
0776nobodyさん05/03/05 15:13:09ID:???
>>775
おれもそう思った
態度がおかしい

>>774
どっかいけ
0777nobodyさん05/03/05 15:17:02ID:???

             ,. -─- 、
            ,r'´,. ‐,‐'`` ‐、、 __  ←>>774
            ,'  { ' rヽ'`ヽヽ{:::::}
           i   ヽ  ヽ 。ヽ゚,r'ー‐t <あひょほほほほほ!!
           !  ,-- ゝ  ー' '    !           _
       _   ', {  r、       ノ _  、、    / /
      r'´_``ヽ、ゝ、、  `iー,-,-,‐'´,r'´_`ヽ カタカタカタ/
     (/,=ニミ= `ー'` ‐ヽ`ー'ノー-' 彡ニ=、\)   / /
             `ー'`ー'`ー-`ニ-'`ー´ i二二二二二二l

0778nobodyさん05/03/05 15:35:26ID:nfpa4x1+
htmlソースを簡単に変更する方法教えてくださいませ
どんな関数使えば宜しいでしょうか
0779nobodyさん05/03/05 15:37:19ID:???
何がしたいのか書けよ
0780nobodyさん05/03/05 15:38:40ID:???
質問です
fatal error; undefind function mysql_connect()
というエラーが出てしまいます
WindowsXP+PHP(モジュール) にMySQLを入れ、DOS窓では動きましまが、以下のPHPのソースではエラーになりました
<html><body><?php
$dbid = mysql_connect("localhost","root","pass");
?></body></html>
何が原因なんでしょうか?
078178005/03/05 15:44:33ID:???
急いでるんですが・・・
早く誰でもいいので答えてもらえませんか?
0782nobodyさん05/03/05 15:46:07ID:???
undefind
078378005/03/05 15:46:54ID:???
>782
即レスありがとうございました
078478005/03/05 15:49:03ID:???
誰ですかあなた
急いでいるのにsageるなんて面白い方ですね

調べながらマターリ待っています。
078578005/03/05 15:52:14ID:???
>>782
それがなぜか分からないのです
Windowsなのでコンパイル時にオプションを指定する必要はないはずですし…
078676605/03/05 16:18:24ID:???
>>770

ヒントありがとうございます。できました。
078778005/03/05 16:28:55ID:???
早くしてください。
0788780=78505/03/05 16:38:22ID:???
すみません原因が分かりました
PHP5からはDLLをコピーしたりする必要があったんですね。失礼しました

0789774=780=78505/03/05 16:44:01ID:???


    ,、    /7       ,-、
    ( <.    | l      //´
    ヽ\,.ィ´ .ニニェ‐、//
      >、<・> < ・>) 〈
     // ´ ノ( 、_, )ヽ ヘヘ.
     | l  ノ、__!!_,.、 | l
     ヘヘ.   ヽニニソ  ././
       ヽヽヘ、____,,..ィ,ン′
         `''‐---‐''´


0790nobodyさん05/03/05 16:50:58ID:???
>>778
質問の内容が不十分で意味が不明なので、勝手に解釈して返答。
file()で読んでfopen()&fputs()で書き込み。
0791nobodyさん05/03/05 16:52:31ID:???
すいません。質問なのですが、
ttp://www.balletrussia.com/stars/ilse/images/phli.swf
↑の画像を自分のPCの壁紙にしたいと思うのですが、
画像が保存出来ないのです。画像を自分のPCに取り込んで、
保存出来る方法ってあるのでしょうか。
初心者なので、スレ違いでしたらすいません。
0792nobodyさん05/03/05 16:57:46ID:???
なんでPHPスレに…
flashは画像じゃないからスクリーンショット撮れ。
0793nobodyさん05/03/05 17:50:31ID:LpD+DiyE
PHPで使うリクエストをPOSTで統一したいのですが、フレームを使った
ページの場合、どうやってindex.phpにモジュール名とアクション名を
渡せばいいのか分からず悩んでいます。
具体的に言うと下記のソース(GET版)の6,7行目にモジュール名と
アクション名を書かないでも済むようPOSTにしたいのです。
どうか皆様のお知恵をお貸し下さいませ。

<HTML>
<HEAD>
<TITLE>メニュー</TITLE>
</HEAD>
<FRAMESET COLS="20%,80%">
<FRAME SRC="index.php?module=Manu&action=Left" name="Left">
<FRAME SRC="index.php?module=Manu&action=Right" name="Right">
</FRAMESET>
</HTML>
0794nobodyさん05/03/05 17:54:20ID:???
フレームを使っている時点で(ry
0795nobodyさん05/03/05 18:20:10ID:???
>>793
input type=hidden使え。
あとpostするにはなんらかのアクションが必要だから
たぶんJavaScriptでpostさせることになるだろう。
0796nobodyさん05/03/05 18:41:39ID:???
>>793
なんだ?そのindex.phpは?
そのindex.phpの内部で、action値をどうやって処理しているか
がわからなけりゃ、答えようもない。
まぁ、たぶんactionの値で、送出する内容を切り分けているだけだろうが。

で、解決策。
index.phpを2つコピー
それぞれを[right.php][left.php]にリネーム。
で、内部で$action = $_REQUEST['action'];とか、
$action = $_GET['action'];
とかになっているところを、
[right.php]なら
$action = 'right';
[left.php]
$action = 'left';
と書き換える。
あとは、
<FRAME SRC="left.php?module=Manu" name="Left">
<FRAME SRC="right.php?module=Manu" name="Right">
で桶。
moduleもうっとうしかったら上記応用で固定汁

079770605/03/05 18:42:48ID:???
訂正。
[right.php]なら
$action = 'Right';
[left.php]
$action = 'Left';

な。
0798nobodyさん05/03/05 19:18:25ID:???
>>796
> なんだ?そのindex.phpは?

フレームワークでも使ってんじゃねーの?
079979305/03/05 20:15:26ID:???
フレームワークにmojaviを使って、index.phpに渡すmoduleとactionで表示ページを
切り分けています。
URLやHTML内に表示したくない項目を各画面で引き継いで行く必要があるのですが、
POSTを使えない場面でどうすればよいのか悩んでいました。
index.php一つで対応する場合はやはりJavaScriptしかないのでしょうか。
0800nobodyさん05/03/05 20:29:38ID:???
>>799
session使えば?
0801nobodyさん05/03/05 20:46:24ID:???
フレームワークに振り回されて作りたい物が作れないのは本末転倒だろ。
0802nobodyさん05/03/05 21:46:12ID:NIxfXemZ
PHP5なんですけど、
あるクラスのプロパティ一覧をゲットして、foreachでまわすなんてことは、できないでしょうか?
0803nobodyさん05/03/05 21:55:59ID:???
>>802
マニュアルのクラス/オブジェクト関数嫁
0804nobodyさん05/03/06 00:19:42ID:cTj8jdFA
以下のようなPHPファイルを別ファイルのPHPでインクルードして
fugaメソッドを呼び出すとNULLと表示されてしまいます。
$hogeはグローバル変数になっていないようなのですが、
使い方間違っているでしょうか?

<?php
$hoge = array("aaa", "bbb", "ccc");

class hoge {

 function fuga() {
  global $hoge;
  var_dump($hoge);
 }

}
?>
0805nobodyさん05/03/06 04:50:09ID:+a6+jJiS
すみません、質問です。
PHPでアクセスする度にインターネット一時ファイルを削除したいのですが
どのようにすればいいのでしょうか?
0806nobodyさん05/03/06 05:02:34ID:???
>>804
グローバル変数になってますが?
0807nobodyさん05/03/06 08:11:14ID:???
>>805
意味が分かりません。「インターネット一時ファイル」ってローカルに持つ
ファイルじゃないですか? PHPって、サーバーサイド言語じゃないですか?
どうやってローカルのファイルを削除するんですか?
っていうか、サーバーからそんなことできたら、危険じゃね?
0808nobodyさん05/03/06 09:33:22ID:???
>>805
<meta>で、制御できたと思ったけど。
■ このスレッドは過去ログ倉庫に格納されています