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

【PHP】下らねぇ質問はここに書き込みやがれ 30

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/10/05(木) 01:38:25ID:y1WWhz/p
PHPに関するくだらねぇ質問用スレです。ここならお前の下らない質問に回答があるかも知れません。

まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆質問する場合の注意
1. 自分のIDを表示させること。(メール欄に何も記述しないでください)
2. サーバーのOS、WebサーバーとPHPの種類やバージョン等を明記すること。
3. 己の行った操作、変更などを詳しく明記すること。
4. エラーメッセージはそのまま表記すること。「エラーが出ます」では絶対分かりません。
5. 質問者としても態度をわきまえること。
6. 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・質問者は必ずIDを表示させてください。(メール欄に何も記述しないでください。)
・2回目以降は最初に質問した際のレス番号を名前欄に入れてください。
  (逆に回答者は質問者に対して>>(アンカー)をつけて答えてください。)
・解決しなくても回答をもらった場合はお礼を言う。
  (荒らし、煽りは除く。逆に煽られたときも、無闇に反論せずスルーすべし)

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え。理解できないならムリに使うな。
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
0402nobodyさん2006/10/14(土) 08:42:05ID:???
>>400
お前の存在自体がダサいwwwwwwwwwwwwwwwwwwwww
0403nobodyさん2006/10/14(土) 09:01:08ID:???
2バイト文字が含まれている文字列から、
英数字だけをとりだしたいのですが、
いい方法はありますか?

はじめは以下のようにやっていたのですが、
文字の組み合わせによって余計な文字が出てくる場合があります。
preg_replace('/[^\w]/', '', $str);

mb_eregi_replace を使ってみたのですが、
使い方があっていないのかうまくいきません。
04044002006/10/14(土) 09:01:33ID:???
なんかCで構造体の引数を第一引数に渡してる感がするんだな。
あと文字列もクラスじゃない。
JavaやC#だったら、インテリセンスでメソッドが出てくるが、
PHPだとそうはいかない。それがだるい。
0405nobodyさん2006/10/14(土) 09:08:25ID:???
>>404
ふいんき(何故か(ry)で騙るなバカ
0406nobodyさん2006/10/14(土) 09:12:30ID:???
>>404
文字列をわざわざクラス化!?w
だったらC++やJavaで整数がなんでクラスじゃないのか説明してみなよ。
それはダサくないのかね?
04074002006/10/14(土) 09:17:31ID:???
普段、四則演算くらいしかオペレーションがないからだろ。
とにかくインテリセンスがきかんのがうざい。
インテリセンスでクラスのメソッド名が出てきたら、
だいたい該当するのはどれなのかわかる。
PHPは、いちいち調べるのがめんどい。
タイポする可能性も増える。
しかも型もコンパイルないからエラーにならんし。
つーか、こんな言語愛用してるのは糞だ。死ね!
04083852006/10/14(土) 09:18:49ID:53yXNDSa
385です
>>390さんの通り、サーバに置いてある画像の絶対パスは隠しておきたいのです。
headerのcontent-typeとreadfileでどのようにやるんでしょうか。
よろしければヒントお願いします。
0409nobodyさん2006/10/14(土) 09:22:05ID:???
>>408
マニュアル見てみたんですか?
0410nobodyさん2006/10/14(土) 09:28:56ID:???
>>400
お前がそう思ってるならそれでいい。
糞だと思うなら使わなきゃいいし、このスレを見る必要もない。

もう来るなよ。
04113852006/10/14(土) 09:32:17ID:53yXNDSa
>>409
すみません。勘違いしてました。
マニュアルちゃんと読みます。
>>408は無しでお願いします。
0412nobodyさん2006/10/14(土) 09:33:47ID:???
>>407
> 普段、四則演算くらいしかオペレーションがないからだろ。
ヘボ確定ww ワロスwww
04134002006/10/14(土) 09:47:59ID:???
>>412
じゃあ、おめぇこそ説明しろ。
文字列や配列がクラスなら、整数もクラス化しておいてもいいんじゃないかという意味を。
てか、C#じゃ整数もクラスだがな。でも、実際四則演算ばかりだから意識もしない。
むしろJavaみたいにプリミティブ型とクラスで分かれてる方が、色々うざい。
0414nobodyさん2006/10/14(土) 09:52:27ID:???
>>413
だから来なくていいからwww
誰もお前にPHP使ってくれなんて頼んだ覚えはない。
0415nobodyさん2006/10/14(土) 10:00:02ID:???
ここのスレはいい人ばかりで大好きです。
ありがとう。
04164002006/10/14(土) 10:02:19ID:???
なんか、あんま釣れないな・・・
俺の煽りも今ひとつだったし、そもそもみんなまだ寝てるか。
0417nobodyさん2006/10/14(土) 10:15:23ID:lXZlr1go
おお、うざきも
0418nobodyさん2006/10/14(土) 10:59:38ID:???
ruby使い始めたらintegerやstringやarrayが
オブジェクトだと確かに便利だと思った
PHPユーザは純OOな言語もやっておくと
PHPの良さ/悪さに理解が深まると思う

ただPHPはスタートがOO言語じゃないし
もう全部関数でいいじゃんみたいな発想から
スタートしてるからこれOOじゃねーって言っても
根本の設計思想から違うから仕方がない

インテリセンスがきかないってのは
eclipseなりZSなりのIDE使えば問題なし
あとsplでArrayObjectもIteratorも一応ある
04194002006/10/14(土) 11:31:31ID:???
eclipse + PHPプラグインでインテリ効くのは知ってるよ。
もれが言いたかったのは、クラスだったらオブジェクト変数書いて、
その後に->って書いたらメソッドの候補が出てくるでしょ?
でもクラスじゃなかったら、そうはならないから、めんどいってこと。
PHPの良いとこは、O/Rマッパー作らんで良いことかな。
selectの結果が連想配列で返ってくるのは便利。
型もないから、いらんこと気にしなくて良い。
0420nobodyさん2006/10/14(土) 12:12:02ID:???
つりじゃないやん
マジやん
おお、
0421nobodyさん2006/10/14(土) 13:06:48ID:???
PHPでもStringクラスやIntegerクラスやArrayクラスを自作すればいいんだ!

演算子が使えないけどな!
0422nobodyさん2006/10/14(土) 13:07:22ID:???
ウザイ言語を態々使いたいと思う理由が理解できん
0423nobodyさん2006/10/14(土) 13:10:31ID:???
>>419
別にそんなことを質問スレにしにこなくていいよ、っていうのが反感を買った理由なのが理解できてないみたいね。
0424nobodyさん2006/10/14(土) 13:15:25ID:mRs0+tI4
質問です。
SESSIONとしてObjectをキープしたいときって、session_startの前に
そのObjectが書かれたファイルをincludeすればいいのはわかってたんだけど、
そのObject内部にある入れ子のObjectってSESSIONとして保存されてないの??

今そんなプログラムを作ってて、Object経由で入れ子のObjectの関数呼び出したんだけど、
Call to a member function searchPage() on a non-object
とのこと。

原因または対策のわかる方いらっしゃったら教えてください
0425nobodyさん2006/10/14(土) 13:23:45ID:???
>>424
そのObjectに格納されてるObjectってのが、実体じゃなくリファレンスを格納してるんなら
当然のようにセッションには記録されないと思います。
リファレンスの本体はデータの外部にあるわけですから。
で、多くの場合、そういう構成になってるのではないでしょうか。

何とかして実体も一緒にセッションに格納されるようにすれば解決するんじゃないのかなぁ。
0426nobodyさん2006/10/14(土) 13:42:22ID:???
>>424
serialize unserialize __sleep __wakeup
0427nobodyさん2006/10/14(土) 13:43:45ID:mRs0+tI4
早速ありがとうございます。
でも実態を入れてるつもりなんですが・・・
object内部のfunctionで
function detail($post){
switch($post['dType']){
case 1:
$this -> DetailChartObjArr['a'] -> searchPage($a,$b);
break;
default:
$this -> DetailChartObjArr['a'] = new DetailChartObj();
break;
}
って感じのを作ってて、defaultのすぐ後にprint_rすると、DetailChartObjArr['a']は表示されるんだけど
case 1のあとにprint_rさせても何も表示されないし・・・

どうして?
0428nobodyさん2006/10/14(土) 14:04:52ID:???
case 1のとき、$this -> DetailChartObjArr['a']は何なの?
0429nobodyさん2006/10/14(土) 14:09:24ID:mRs0+tI4
入れ子のオブジェクトです。配列に収納してる。
でそのオブジェクトにはsearchPageというfuctionがあってそれを実行させてる。
0430nobodyさん2006/10/14(土) 14:25:01ID:???
断片的過ぎてなあ、、、
case 1の時にDetailChartObjArr['a']に
中身があるのは保証されているのかよくわからんし
0431nobodyさん2006/10/14(土) 14:39:10ID:mRs0+tI4
中身??
一応defaultのときにnewでObjectが作成されていて、
case 1でそのObject内部のFunctionが実行されてるってことは、
表現できてると思ったんだけど。
その保証されてるか否かってのが、何か気になる。
ひょっとしたらそこにオレの問題点が有るってことかな?
04324312006/10/14(土) 14:49:59ID:mRs0+tI4
ごめんなさい。
DetailChartObjArrの属性をpublicにしてSESSIONを出力してみたら、
とりあえず保存はされてるみたい。

他に何か原因が有るか考えてみます。
お騒がせしました
0433nobodyさん2006/10/14(土) 15:25:49ID:???
>>431
そのつくりだと、必ずdefaultがcase 1のまえに実行されるようには見えないから、
>中身があるのは保証されているのかよくわからんし
ということになる。
つくりを見直したほうがいい。
0434nobodyさん2006/10/14(土) 16:08:25ID:???
質問です。

ログインシステムで、一人しかログイン出来ないように
ログインの重複を拒否したいんですが、どうプログラムを書けばいいんでしょうか?
0435nobodyさん2006/10/14(土) 16:24:35ID:???
if( ! $logged){
ログイン処理
$logged=true;
}
0436nobodyさん2006/10/14(土) 17:37:45ID:???
>>435
loggedという関数がある訳ではなくて、単に変数をフラグのように扱ってるんですよね?
PHPってユーザーの数だけスクリプトが動くから、それでは意味がないと思っていたんですが
PHPの変数ってサーバで共有でしたっけ・・・
0437nobodyさん2006/10/14(土) 17:49:24ID:???
>>436
セッション使うんだよ
0438nobodyさん2006/10/14(土) 17:50:26ID:???
もしくはファイルやDBに保存
0439nobodyさん2006/10/14(土) 17:55:48ID:???
タイムアウトも忘れずに
0440nobodyさん2006/10/14(土) 18:01:22ID:???
セッションやファイルに出力して保存する場合は
ログイン時にフラグを上げ、ログアウト時にフラグを下げるんですよね?

ブラウザを落とされたときはどう判定すればいいんでしょうか・・・
JSを使えば出来そうな気がするんですが、
PHP単体ではサーバでひとつだけ動く変数やスクリプトを作る機能はないんでしょうか?
0441nobodyさん2006/10/14(土) 18:15:04ID:???
すみません、早とちりしてました。

ログイン成功時にセッションを開始して
DBに書き込んで次からのログインを防いで
ログアウト時にDBのフラグを下げる。

ブラウザを落とされたときのためにタイムアウトを設定して
時間が経てば勝手にDBのフラグを下げるようにすればいいんですね
0442nobodyさん2006/10/14(土) 18:15:41ID:???
ポート80をlistenしてソケットつなぎっぱにすれば。
しかし、他のユーザーに「今ログインしてる人がいます」を返すポートが
別に必要になる罠。
0443nobodyさん2006/10/14(土) 18:17:39ID:???
センスは大丈夫みたいだ、がんがれ>>441
0444nobodyさん2006/10/14(土) 19:18:19ID:???
2chのようにhttp〜を記述されたら、自動的にリンクされるようにしたいのですが
どのようにやれば、いいのでしょうか?
preg_matchでやろうとしても、上手くできません。
どうか教えてください。
0445nobodyさん2006/10/14(土) 19:28:10ID:???
preg_replace
0446nobodyさん2006/10/14(土) 19:59:01ID:???
>>442
なにその低脳なデーモン
0447nobodyさん2006/10/14(土) 20:21:57ID:???
>>389
$id = $_GET["id"];
なんでこれじゃダメなの?
04484412006/10/14(土) 20:28:50ID:???
ログインした瞬間にブラウザ落とすと
タイムアウトまでログイン出来ない糞仕様なPHPが出来てしまいましたorz

ログイン人数を2人以上にしなければいいだけなので

ユーザーAがログインしてる時にユーザーBがログインした場合、
ユーザーBのログイン・ページ移動を許可、ユーザーAのログインを破棄

というように、後から入ってきたユーザーを優先させればいいと思ったんですが
この場合、DBのフラグをどう扱えばいいのかわかりませんorz

登録情報はユーザーAでもユーザーBでも同じですが
ログイン時にAとBで、それぞれ別々のIDか何かをセッションで持たせ、DBに格納し
ページを移動するたびにセッションとDBを確認するという方法を考えたんですが
この方法ではIDに乱数やホスト名を持たせても被ったりして困るのですが

後からログインしたユーザーを有効にする何かいい方法を教えてもらえないでしょうか?
0449nobodyさん2006/10/14(土) 20:43:53ID:???
何のためにそんなの作りたいのかいまいち良くわからんけど
DBに「ユーザAがログインしている」ってこと書いといて
適時それをチェックして
次に違うユーザが入ったらそれを上書きするって方法じゃだめなん?
0450nobodyさん2006/10/14(土) 20:54:36ID:???
データ登録作業中にそんなことされたら、どうなるの?
0451nobodyさん2006/10/14(土) 21:20:04ID:???
>>447
Undefined index
04526262006/10/14(土) 22:05:14ID:???
>>448
漏れの参加してるプロジェクトも、そんな糞仕様ノシ
てか客の要望でそうなった。いいのかな、これで通して。
0453nobodyさん2006/10/14(土) 22:17:46ID:???
適当なファイルをファイルロックすればいいんじゃん。
ファイルロックされてたら、だれかログインしてると。
0454nobodyさん2006/10/14(土) 22:53:41ID:???
>>447 @でもつけとけ
0455nobodyさん2006/10/15(日) 01:50:31ID:hzF42wCh
/**
* @hoge hugahuga
*/
のコメントの書き方で、ファイルの作成開始日や、更新日は、
どのようなキーワードで書けばいいですか?
0456nobodyさん2006/10/15(日) 01:53:37ID:???
いみわがんね
04574552006/10/15(日) 01:57:38ID:???
例えば、@auther は作者名ですよね。そんな感じで。
0458nobodyさん2006/10/15(日) 02:05:42ID:???
auther の検索結果のうち 日本語のページ 約 180,000 件中 1 - 100 件目 (0.06 秒)
author の検索結果のうち 日本語のページ 約 30,600,000 件中 1 - 100 件目 (0.26 秒)

autherで検索したら、辞典が3番目に出てきたからびびったぜ・・・
0459nobodyさん2006/10/15(日) 02:10:59ID:???
*Header:
*File: window.C
*Auther: Akiko Wada
*Date: 1999/12/31
*EndHeader:

とかでいいんじゃね?
きまりなどない
0460nobodyさん2006/10/15(日) 03:31:19ID:???
>>455
ドキュメントの自動生成にどのツールを使うのかによる。
phpDocumentorを使うなら、該当するマニュアルを読むべし。
documentable elementでぐぐれ。
ちなみにファイル作成/更新時刻なんて手書きで書かないでしょ。
そういうのはCVSやSVNなどでキーワードをつけとく。
04614552006/10/15(日) 03:56:05ID:???
作成日や更新日に該当するキーワードは特にないってことですかね。
更新日は手ではあまり書かないですが、
作成開始日は書いておくと、わかりやすかったりするんです。

authorは今気付いてよかった。
0462nobodyさん2006/10/15(日) 04:48:19ID:???
>>461
調べてから来いよ。
決まった書き方なんて特にないし、使うツールまたはローカルルール依存。
だいたいコメントなんだから好きなこと書いときゃいいんだよ。

ついでに言っておくと、ファイル作成日時なんて普通は誰も書かないから、完全に好きにしろとしか言いようがない。
0463nobodyさん2006/10/15(日) 05:08:51ID:???
カリカリすんな
0464nobodyさん2006/10/15(日) 05:37:26ID:???
もう来なくていいですよー(*^0^*)
0465nobodyさん2006/10/15(日) 05:53:03ID:???
一般的な英語で言うなら

作成日→created
更新日→modified

だろうけど、 >>460のいうとおり、svnなりcvsなりを使ってりゃ手で書く用事はないかなあ
04664412006/10/15(日) 11:00:23ID:???
>>449
ユーザーAもユーザーBもログインした端末が違うだけで(仮想化された場合は端末も同じ)
実際は同一人物なので何を持たせればいいのか困ってます。

>>450
ショッピングカートのようなデータの競合が起こらない為の処置なので
誰かに入られるのを防ぐのではなく、
ログインユーザーが2人以上になることのみを防ぐ目的です。
それと、ブラウザを即落とした場合
タイムアウトまで待たないといけないという糞仕様を回避するためでもあります

後からログインしたユーザーをログイン状態にして
すでにログイン状態のユーザーのログインを解除する方法は
ログインごとに連番を付けるとかしかないんでしょうか…
それだとPHPが多重起動したときにすごく不具合が起こりそうで。。
0467nobodyさん2006/10/15(日) 11:28:41ID:???
君が言っているは、同じアカウントの重複ログインの話か?
それとも別アカウントの話か?
0468nobodyさん2006/10/15(日) 11:35:39ID:???
重複ログインじゃないの?
0469nobodyさん2006/10/15(日) 11:39:38ID:???
>>466
> ログインユーザーが2人以上になることのみを防ぐ目的です。
だから別アカウントの話でしょ。
誰か1人がログインしてたら他は一切ログインできない糞仕様サイト。
0470nobodyさん2006/10/15(日) 11:58:26ID:???
>>446
仕様がアレなのはおいといて、セッションIDで区別すればいいんじゃないの
04714412006/10/15(日) 12:25:10ID:???
同アカウントの重複ログインの話です。

>>469
AとBに分けたのは分かり難かったですね・・・

ユーザーAがパソコンAでログインしてる時に
ユーザーAがパソコンBでログインした場合
ユーザーAのパソコンBからのログインを許可して
ユーザーAのパソコンAのログインを破棄する仕様にしたいのです

↓にあるブログの記事と同じコトなんですが、肝心のロジック部が分からず…orz
ttp://d.hatena.ne.jp/okinaka/20060626
0472nobodyさん2006/10/15(日) 12:40:14ID:???
>>471
ちなみにパソコンAで2つウインドウを開いてそれぞれでログインするのは可?
もしくは、パソコンAでログイン→途中のリンクで新規ウインドウを開く、は可?

根本的にWEBアプリケーションで多重ログイン禁止って考え方自体が
ユーザから見て非常に使いにくいのでやめた方がいいと思うよ。
その記事にもあるが
> なお、理想としては、多重ログインでもきちんと処理できるようなアプリケーションの作りにして、
が正しいと思う。

同一PC同一ブラウザでの複数ウインドウでは支障が出ない作りになっているなら、
ログイン時に現在のセッションIDをユーザ情報に格納するようにして、異なるセッションIDで
アクセスしてきたユーザは無効としてログイン前画面に飛ばしてしまうのが手っ取り早いと思う。
0473nobodyさん2006/10/15(日) 14:07:50ID:???
>ユーザーAのパソコンBからのログインを許可して
>ユーザーAのパソコンAのログインを破棄する仕様にしたいのです

ズバリ書いてる通りにすればいいじゃん。
つまり、パソコンAでログイン中にパソコンBでログインしてきたら、
そのログイン処理と同時に、パソコンAのセッション・ファイルを破棄して
ログアウト処理もやっちゃえば解決じゃん。
0474nobodyさん2006/10/15(日) 15:24:36ID:???
多重ログインされてもいいように、ショッピングカートなんかは
できてる。
ショップなんて、商品ごとに新しいページ開けたりするし。
違うパソコンから同時にログインされても困らない仕様が今風。
それがどうなってるかなんてのは、コードを読んでみなって話。
0475nobodyさん2006/10/15(日) 16:11:59ID:???
ショッピングカートを例とすると、「購入時に商品があるかチェックする(時間差で他のユーザーが先に購入していれば買えないようにする)」ことで防げるような気がするが。

ショッピングカートでなくても考え方は同じでは?それでは解決されないのかな?
0476nobodyさん2006/10/15(日) 16:28:01ID:gxN1FoLo
http://sv2ch.baila6.jp/graph_load.cgi?pc8.2ch.net

こういうグラフをGDで描きたいのですが、これはどう描くのが効率が良いと思われるでしょうか?
多角形なのかな、と思ってやってみたのですが……。

みなさんならどう描きます?
0477nobodyさん2006/10/15(日) 16:31:50ID:???
>>476
http://www.asial.co.jp/jpgraph/
0478nobodyさん2006/10/15(日) 16:44:46ID:gxN1FoLo
>>477
そうか、GDだと座標計算から始めないといけないから大変だ……。
ありがとうございます!
0479nobodyさん2006/10/15(日) 17:28:34ID:???
>>474
>ショップなんて、商品ごとに新しいページ開けたりするし。

アホか。
普通にPHPでセッション機能を作った場合、ブラウザ側で「新しいウインドウで開く」などの
操作を行なった場合は当然新しいウインドウからも同じセッションIDがサーバに送られるっての。
だから新しいページを同一セッションにて開けるのは当たり前。ショップとか関係ない。
0480nobodyさん2006/10/15(日) 17:38:16ID:???
>>479
0481nobodyさん2006/10/15(日) 20:11:31ID:???
スレタイ通り下らない質問で申し訳ないんだが
拾ってきたスクリプトに、ある関数が定義してあって
function hoge ($fuga = "") {
 //処理がずらずら
}
って書いてあるんだけど、$fuga = ""って何?
ここって引数を書く場所だから関数を定義する時じゃなくて実行する時に与えるものじゃないの?

http://jp2.php.net/manual/ja/language.functions.php
にもそんな記述はないんだけど…
ちなみに実行しても特にエラーとかは吐かないんだけど、どういう意味か教えて下さい
0482nobodyさん2006/10/15(日) 20:23:38ID:???
http://jp2.php.net/manual/ja/functions.arguments.php
デフォルト引数値のとこ参照。

要するに本来その関数はhoge("hage");みたいに引数をひとつ受け付けて
それは関数内では$hugaに格納されるわけだが、
$hugaが指定されていない時、つまりhoge();のみだった場合は
デフォルト値として""が入る。
0483nobodyさん2006/10/15(日) 20:34:01ID:???
>>482

ごめん、その上の「ユーザー定義関数」ばっか見てたわ
ありがとう
0484nobodyさん2006/10/15(日) 20:45:55ID:???
引数値はデフォルトありのとデフォルト無しのを混在させた時の順番を指定が面倒なんだよなあ。
ともあれ頑張れ。
0485nobodyさん2006/10/15(日) 20:49:21ID:???
引数は名前付きで指定できたらいいのにねぇ
0486nobodyさん2006/10/15(日) 21:32:21ID:???
393で質問したものです。自己解決しました。
以下の例と同じような現象でした。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1649057
簡単に説明すると、serial型使った時は、sequenceテーブルが
自動的にできるので、そのテーブルにもgrant権限を与えないと
いけないというものでした。
同じ悩みの方もいるかもしれないので、報告まで。
0487nobodyさん2006/10/15(日) 23:08:02ID:???
重複ログインチェック の検索結果のうち 日本語のページ 約 203,000 件中 1 - 50 件目 (0.23 秒)

0488nobodyさん2006/10/15(日) 23:10:23ID:???
safe_mode_gidがOffのセーフモード(xrea)で利用しているにも関わらず、
異なった所有者のファイルをunlink()やtouch()できてしまいます。
http://www.php.net/manual/ja/features.safe-mode.functions.php を見ると、

>処理を行うファイル/ディレクトリが実行するスクリプトと同じUIDを有しているかどうかを確認します。
>処理を行うディレクトリが実行するスクリプトと同じ UID を有しているかどうかを確認します。

と書いているのですが、セーフモードでも異なった所有者ファイルのunlink()を
可能にするような設定が、safe_mode_gidの他にあるのでしょうか?

ディレクトリの所有者が異なる場合は、
正常に、セーフモードのエラーが出るのですが・・・
0489nobodyさん2006/10/16(月) 00:08:56ID:???
>>485
連想配列1個の引数にするんじゃダメなのか?
0490nobodyさん2006/10/16(月) 00:11:08ID:???
オーバーロードできたらよかったけど、互換性もあるしね
0491nobodyさん2006/10/16(月) 03:23:02ID:???
GD使って画像アップロード機能付きBBSを作っているんですが、
投稿した人のローカルのファイルの置き場を取得する方法ってありますか?
0492nobodyさん2006/10/16(月) 03:29:10ID:???
なぜそんなことを
0493nobodyさん2006/10/16(月) 03:33:10ID:???
>>492
投稿確認で、ここにあるファイルをうpしますよー って感じで表示したいんで
0494nobodyさん2006/10/16(月) 03:33:56ID:???
>>491
以前はブラウザの脆弱性で、JS使えば出来てしまってた気がするけど、今時は無理ではないかと。
つーか、他人に迷惑はかけるなよ。
0495nobodyさん2006/10/16(月) 03:34:30ID:???
ファイル名だけで十分だろ
パスまで出たら引く
0496nobodyさん2006/10/16(月) 03:36:15ID:???
そういやGmailでファイル添付するとき、パスが表示されてるな。
あれって、仁義的にはありなのかな?
0497nobodyさん2006/10/16(月) 03:38:41ID:???
>>494
そうなんですか 確かにいろいろとまずそうですね。

>>495
たしかにファイル名だけでいいかも・・。
0498nobodyさん2006/10/16(月) 03:39:55ID:???
mixiに画像投稿したときも確か出てたな。
まぁあれはperlだけど。
04994912006/10/16(月) 03:45:43ID:???
遅い時間に即レスthx
違う方法考えてみます。
0500nobodyさん2006/10/16(月) 04:09:39ID:???
違う方法だと?
0501nobodyさん2006/10/16(月) 04:35:00ID:???
>>488
それがフツー。
非safe_modeだと、ディレクトリに書き込み権限があれば誰でもファイルを作成・削除できる。
safe_modeだと、たとえディレクトリに書き込み権限があっても、ディレクトリのUIDが違うとファイルを作成・削除できない。
■ このスレッドは過去ログ倉庫に格納されています