【PHP】下らねぇ質問はここに書き込みやがれ 67
まず読め→【PHP マニュアル】
http://www.php.net/manual/ja/ PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは
>>2-10 辺り
次スレは970が立ててください立たなかった場合は980よろ
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 66
http://pc11.2ch.net/test/read.cgi/php/1205655807/ ◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。
◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくは質問時のトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
【簡易FAQ】 (1/3)
1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→
http://example.com/が例文などのために予約されている 。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
【簡易FAQ】 (2/3)
11. SQLの質問はどこで?
→ データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
→ ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
→ 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
→ よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40 15. クッキーの情報をユーザから隠したい
→ セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
→ strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
→ まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
→ C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(
http:// 〜とか)を扱う際の限界
→ fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
→19.を参照
【簡易FAQ】 (3/3) 21. 画像処理一般 or GDの限界 → ImageMagick(PECLのやつ or シェルから実行) 22. 画像・音・動画はファイルで保存?DBに保存? → 好きにしてください
乙
はやいけどphp7開発版試してる人居る?
これが正しいテンプレ
まず読め→【PHP マニュアル】
http://www.php.net/manual/ja/ PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは
>>2-10 辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ xx
http://pc11.2ch.net/test/read.cgi/php/xxxxxxxxxx/ ◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
12 :
nobodyさん :2008/04/11(金) 12:09:37 ID:75QSkZRP
以下のフォームのMAX_FILE_SIZEでの制限サイズについて質問です。 <form enctype="multipart/form-data" action="up.php" method="POST"> <input type="hidden" name="MAX_FILE_SIZE" value="168000" /> <input name="userfile" type="file" /> <input type="submit" value="ファイルを送信" /> </form> このフォームから画像を送ったのですが、print_rで結果をみると Array ( [file] => Array ( [name] => osusume.jpg [type] => image/jpeg [tmp_name] => C:\tmp\phpABC.tmp [error] => 0 [size] => 168001 ) ) というふうにerrorは0がついてます。 htmlで設定するMAX_FILE_SIZEのバイトと、print_rで取得できるsizeは、バイトの計算式が違うのでしょうか? 1KB=1024でMAX_FILE_SIZEを設定したのですが、1024でないのでしょうか? サーバ側でsize規制はしてるのですが、MAX_FILE_SIZEを指定した場合の挙動を理解したいと思ってます。 どなたかご教授お願いいたします。
13 :
nobodyさん :2008/04/11(金) 13:33:40 ID:34hEX+xz
formに入力された値を ^[0-9]+$ にでチェックしてるのですが、これに「+」も加えるのがどうすればいいのでしょうか? /*form*/ 1) 50 2) 25+25 いずれも通したいのですが。
15 :
nobodyさん :2008/04/11(金) 14:59:11 ID:34hEX+xz
>>14 早速のレスありがとうございます!
今からやってみます〜!
16 :
nobodyさん :2008/04/11(金) 15:51:14 ID:icnUZbgw
PDOで、特定のカラムだけ取得して1次元配列で返してほしいときは fetchColumn()をfetchで回すのと、fetchAll(PDO::fetchColumn)を使うのとどっちが効率良いんだろう?
>>16 配列を作る必要があるなら fetchAll(PDO::FETCH_COLUMN) でいい。
一度参照したら捨てていい場合や、
メモリ使用量を気にしないといけない場合は逐次 fetchColumn()。
20 :
nobodyさん :2008/04/11(金) 19:58:21 ID:kamEmAKJ
質問があります。 phpでバイナリ形式のファイル(音声ファイル)を処理したいと考えています。 具体的には、バイナリデータを10進数に変換し 特定の箇所を 「10(10進)」→「20(10進)」 などに置き換えた後、再びバイナリ形式に戻して新ファイルとして出力したいです。 現在は、 @bindec()で読み込んだバイナリデータを変換 A処理 Bdecbin()でバイナリ変換してファイルに出力 としているのですが、 プログラム実行後に出来た音声ファイルを開こうとすると 「予期しないデータを含んでいるか破損している可能性があります」 と表示され開くことができません。 ちなみにテキストエディタで開くと、 元ファイルは文字化けしたような文字がたくさん並んでいるのですが、 実行後のファイルは、0と1のみが無数に表示されてしまいます。 実行後のファイルも化けたような文字がたくさん出てこれば成功するような気もします。 深い知識がないので的外れなところもあるかもしれませんが、 よろしければどなたか教えてください。 よろしくお願いします。 プログラム実行OS:Linux 言語:PHP 4.4.8 音声ファイル再生OS:Windows です。
>>20 何がやりたいが意味不明だが、そんなことできるわけもなく。
ファイルがおかしくなるのは当たり前。
バイナリエディタに音声ファイルと同じデータを入力して書き出したところで音声ファイルにはならない。
データを、どう読み込んで、どう保持してるか、さらしてみ
>>21 ちゃんとフォーマットさえ守ればできるし。
テキストファイルでひらいてんだろfopenの引数にbいれろ
>>20 bindec() decbin() は基数変換用の関数だ。
バイナリ弄りたかったら ord() chr() や pack() unpack() を使っとけ。
あと確認用にバイナリエディタも用意しとけよ。
fscanfはタブ区切りならちゃんと動くのに カンマ区切りだと妙な挙動になるのはバグですね
fscanfがおかしいです
28 :
◆IiyUHoZM0E :2008/04/12(土) 05:53:41 ID:7Xlwa8pI
質問です。 LAMP環境で勉強しながらBBSを作っています。 $hoge = mysql_query("SELECT * FROM tbl"); みたいな文を書いたとき、$hogeの中に入るのはresourceという ものらしいのですが、このresourceというものがどんなものなのか、 いまいちイメージがつかめません。 どなたか解説していただけないでしょうか? もしこの質問がデータベース行きの質問だったら、スレ違いすみません。
ざっくり言うと、まだphpで読めないデータの固まりみたいな感じかな
ただのIDじゃねえの?
arr
>>28 実際にはリソースIDがはいってるが、概念的にはDBからの結果が入ってるって事じゃないの
mysql_queryの返り値に結果なんて入ってねぇよw
fopenの$fpのようなもの
返り値じゃなく戻り値に統一してください。マニュアルも書き直してください。
返り血はいかんよ
モド・リッチ
>>33 だから概念だと言っているんだけど。
違うなら違うでいいけど、俺の理解を書いただけ。
概念でも違うわボケw
そうか、ありがとう勉強になった
リソースを参照するためのIDが返ってくる、が正解。
俺の概念ではPHPはプチエッチなピクチャーです。 違うなら違うで良いけど、俺の理解はそうなんです。
>>32 と
>>41 の違いは用語だけのような気がするけど。
根本的にどこが間違っているの?
_n_n _/ィV"Vj /Oィ(゚Д) 〈 <`ー"^"^i だからカイマンだと言っているんだけど。 rシ つ三づ i\rシ ノ三ノ ヾ__イ_)シ_)
28で質問したものです。 $hogeの中には実際のデータの塊とかが入るのではなくて、 mysql内のデータを参照するためのポインタのようなものが 入っている、という解釈でよろしいでしょうか?
レンタルビデオ屋でカード式のとこがあるだろ、 カードを持ってレジのお姉さんに渡すとビデオ本体を奥からもってくるとこ、 つまり ID :カード リソース:ビデオ本体 に例えろ、IDそのものには何の価値もないのだ、 くれぐれもパッケージと中身の違いに騙されるな。
キャバクラの店頭に飾ってる写真と同じか
48 :
名無しさん@アイコンいっぱい。 :2008/04/12(土) 19:26:42 ID:QH24pWr1
>>48 書き方がいつも同じでワロタ
一ページで構成、文章長い。
途中に体験談が出てきて、
最後に、金額。
でいつまでも値下げ
SQL書くのマンドクセからフレームワークの使い方覚えたけど 結局複雑なリレーションはSQL書かないといけないのね、イヤン!
SQLのほうが楽でいいじゃん
54 :
nobodyさん :2008/04/12(土) 21:10:36 ID:pm7T1kPT
PHPでSQL文意識せずにクエリ作れるライブラリってどんなのがあるの?
意識しろ
感じろよ
getdate()['year']って書けないのは何の嫌がらせなの?
まぁ確かにPHPらしくないわな
'functionHoge'() これもだよな
60 :
54 :2008/04/12(土) 22:22:06 ID:pm7T1kPT
悪かった、SQL文をただ意識するだけなら構わない。 だが生のSQL文を弄れてしまうとSQLインジェクションの知識が必須になってしまうから そこをライブラリ側で隠蔽化してやってくれるもので、なるべく独立したライブラリってないの?
63 :
54 :2008/04/12(土) 23:31:51 ID:pm7T1kPT
>>61 あ、なるほと、プレースホルダって何なのか今理解した。
PDOってのを使ってprepareではユーザ入力値を入れないようにすれば良いわけか。
何かこれ常識なことを質問してしまったみたいだな。皆ごめん、どうもありがとう。
てかSQLインジェクションの知識もなしでよくシステム作る気になれるね。 損害賠償くらわないようにね。
損害賠償については皆が皆仕事のWebプログラム書いてるわけじゃないし。 末端プログラマが皆セキュリティ技術者では居られないし。 公表されたセキュリティ問題に低リスク/コストで対応するためにライブラリを使うんだし。
末端でもSQLインジェクションは解ってないといけないと思います。webプログラム書くなら。 個人的にはむしろ、入門書でも最初に教えるぐらいしないと。と、思う。
SQLインジェクション知らない ↓ ライブラリ使って楽しよう とかいろんな意味で終わってる(笑)
なんか意図せず極論になってしまってる気がするので物申したいんだけど、 SQLインジェクションにおいて新しい攻撃法が今後発見されることは100%ないの? セキュリティ技術者ってのは最新の攻撃を常に把握してるよね、それが仕事だもん。 でもプログラムを書いたらその後運営には携わらない末端プログラマは居るでしょ。 そしてそのプログラマは当時のSQLインジェクションの知識で自前でサニタイズしていたら。 つまり「解っている」というのが、その時点についてのみではダメってことでしょ。 これを名の知れたライブラリと一般化したサニタイズ手法を使って文書として残しておけば、 保守として全てを理解していなければならないプログラマは不要であり、 かつ必要な最低限のセキュリティのチェックは可能になるでしょ。 俺はWebの仕事はやったことないからズレてること言ってるのかも知れないけど、 殆どの仕事はASP的な形態で同じプログラマがずっと関われるようなものなの?
実用上はライブラリ通せば無問題だが、 概念上それくらい常識として知っておけ、 ってことじゃねーの?
>>68 現実にそれが可能ならセキュリティ技術者なんて要らんわな
夢から覚めなさい
71 :
nobodyさん :2008/04/13(日) 03:54:16 ID:bEpE13Rl
アップロードして保存されたファイルのその保存日を判別する方法ありますか? ただし、画像ファイル名に保存日を書き込めないとします(20080413.jpgなどはダメ) phpの関数でそんなのあるんでしょうか? 一定期間が過ぎたら削除する処理に利用したいと思っています
72 :
nobodyさん :2008/04/13(日) 04:24:29 ID:hN58mjIP
毎朝6時以降、最初のアクセスでデータを更新するプログラムを作っています。 (クーロンを使えというのはなしで) 前回のデータ取得はキャッシュされていて更新時間は変数として使えます。 現在の日付時間、デーの更新時間、毎朝6時 これらをどう組み合わせて計算すればいいでしょうか?頭がこんがらがってしまいました(?_?) よろしくお願いします。
filemtime if(date(更新時間-6時間)<date(今-6時間)){
×date ○mktime orz
"6時間"じゃなくね?
>>72 宿題か?
デーの更新時間に日付が入ってないなら無理だ
頑張れ
76 :
nobodyさん :2008/04/13(日) 05:51:50 ID:hN58mjIP
デーの更新時間はタイムスタンプなので日付に変換できます^^; 6時間じゃなくて朝6時です 6時以降の最初のアクセスをトリガーとして作動させたいのです
if(更新日時 < 前日朝6時 or 更新時 < 朝6時 and 現在時 >= 朝6時) 更新;
意外と難しいなw
>>77 これだと前々日の場合が駄目じゃね
毎日アクセスがあるとは限らない場合を想定すれば
更新日時 < 前日朝6時 の所が2日前や1週間前もカバーしてるような?
入ってるデータが全部タイムスタンプなら
>>77 でよさそうだけど、寝起きだから自信ないな
80 :
nobodyさん :2008/04/13(日) 08:54:53 ID:y9NKt7wS
>>80 session.nameを変えるとか。
session.save_pathを変えるとか。
82 :
nobodyさん :2008/04/13(日) 09:25:53 ID:y9NKt7wS
>>81 なるほど。
session.nameはPHP_INI_ALLだから session_startより前で設定すればできそうですね。
ありがとうございました。
83 :
nobodyさん :2008/04/13(日) 09:52:09 ID:/FusEZA8
毎時間処理させるにはどうすればいいですか?
86 :
83 :2008/04/13(日) 10:09:53 ID:/FusEZA8
>>86 読んでないけど、クーロソが使えると言うならば、鯖屋の指示通りに
設定すればいいだけ
(本来は鯖の設定ファイルを書き換えるようなのだから、それなりの権限がなければできない)
使えなければ、前に出てたアクセスをトリガー
(アクセスがあったら、それを契機に)スクリプトで処理するという方法で解決
>_
サウンドハウス事件は何故おきたのか検証してみないか?
今日からPHP始める。 でっていうwww
93 :
83 :2008/04/13(日) 13:02:10 ID:/FusEZA8
>>87-91 ありがとうございます。
質問板にてcronに関するスレを発見しました。
質問者:cronは使えまか?
管理人:cronつかえますよ。
cronに関するスレはこれだけで、鮎の方にも設定方法が紹介されていませんでした。
この場合どうすればいいでしょうか?
htaccessみたいなかんじで毎時間処理するよう記述したファイルをUP
するんですか?
simplexmlって名前空間つきの要素へのアクセスはどうすればいいの? xpath使えって話?
95 :
nobodyさん :2008/04/13(日) 13:22:57 ID:/XYVoWCv
PHPにて、 PEAR::Image_Graph(オープンソース)を使用して 円グラフを作成しています。 マーカー部分に、"項目名 XX%"の用に表示させたいと思っています。 項目名を表示する方法をわかる方がいれば教えてもらえないでしょうか? PHPとは少し違いますがお願いします。
最近Image_Graphの質問が立て続けに出てるが同一人物か? いい加減PEARはスレ違いだっつうの
時間処理の質問見てて思いついたのだが、 任意の引数でタイムスタンプ作成する、dateの逆関数みたいなものって無いものかね mktimeより楽に使えると思うのだがどうか。 $timestamp=inv_date('08年04月13日13時40分','y年m月d日H時i分'); みたいな
当然あるわボケ
>>91 HACKER SAFE使ってたって書いてあるけど、
ああいう外部からのチェックサービスって
結局CGIプログラムのソースコードは見ないんだろうから、
その中にある脆弱性には甘いんだと思うよ。
色んなサービスを動かすサーバ建てて、
その中に脆弱性のあるバージョンや機能が無いか調べるには良いと思うけど。
100 :
nobodyさん :2008/04/13(日) 14:55:35 ID:/XYVoWCv
101 :
nobodyさん :2008/04/13(日) 16:58:04 ID:mSGmcBg3
質問です。 たとえば、数十個のディレクトリ名を定数として利用する場合、配列でなくdefineでも問題ないと思いますが、 状態遷移に必要な情報を管理する多次元の配列の定数が必要な場合、どのようにするのがベターなのでしょうか? ・グローバルなところに変数として置く(現在はこの考えを利用) ・オブジェクト定数で管理 ・XML/YAMLなどでデータ分離 あたりが思いつくのですが、常套手段などがあったらご教授お願いします。
102 :
72 :2008/04/13(日) 17:59:49 ID:???
>>73-79 ありがとうございます
明日の6時になったら動作するか確認してみます
103 :
nobodyさん :2008/04/13(日) 18:29:39 ID:cn35Eo4d
20で質問した者です。 ord()とchr()を使用することでバイナリの扱いを解決することができました。 答えてくださった方々、ありがとうございます。 もうひとつ質問なのですが、phpの配列の要素数に上限はあるのでしょうか? 要素数が100000くらいのときはプログラムが正常に動くのですが、 要素数が1000000くらいになると途中でプログラムが止まってしまいます。 どなたかご存知であれば教えてください。 お願いします。
104 :
nobodyさん :2008/04/13(日) 18:56:04 ID:cn35Eo4d
103です。 追記します。 このようなプログラムを組んでおり、 容量が1MBを超えるようなファイルだとプログラムが途中で止まります。 $fno = fopen("sample.mp3", 'rb'); while (!feof($fno)) { $data[] = fread($fno, 1); } fclose($fno);
>>104 [PHP] 配列に値を入れていくとエラーになりプログラムが落ちます。
http://q.hatena.ne.jp/1145420732 と同じ現象じゃないかな。
つまりPHPスクリプト一つに許可されている使用メモリ量をオーバーしているんだと思うよ。
デフォルトでは8MBか16MBに設定されているらしいのに、
たった1Mのファイルでオーバーしちゃうなんておかしいと思われるかも知れないけど、
PHPは配列の要素毎にも変数の型を持っているだろうから、余計にメモリを食っちゃうんだろうね。
単純に読み込んだデータにバイト単位でアクセスしたいのなら、
$data = fread($fno, filesize("sample.mp3"));
として一つの変数へ一気に読んじゃえば、配列と同じに$data[0]って感じで読めるんじゃない?
上のは試してないから嘘かもしれないけど。
106 :
nobodyさん :2008/04/13(日) 21:43:31 ID:RGnLfYK/
phpgroupwareを入れたら下記のエラーが出てしまいました NOTE: You must have cookies enabled to use setup and header admin!* ブラウザ側ではクッキーは有効にしてるんですが・・・・どうすればいいでしょう?
そんな餌で(ry
fscanfがおかしいですだって?
112 :
nobodyさん :2008/04/14(月) 11:41:38 ID:6hAyd3lA
浮動小数点を表示すると、元の数値によって指数形式になったり ならなかったりします。どういうルールで変換されているんでしょうか。 php -n -r "print(floatval(1100000));" → 1100000 が表示される。 php -n -r "print(floatval(1200000));" → 1.2E+6 が表示される。 php -n -r "print(floatval(1300000));" → 1300000 が表示される。 php -n -r "print(floatval(1300000));" → 1.4E+6 が表示される。 php -n -r "print(floatval(1500000));" → 1500000 が表示される。 環境は以下の通りです。 $ php --version PHP 5.2.5 (cli) (built: Mar 3 2008 14:30:26) Copyright (c) 1997-2007 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies with eAccelerator v0.9.5.2, Copyright (c) 2004-2006 eAccelerator, by eAccelerator with Xdebug v2.0.2, Copyright (c) 2002-2007, by Derick Rethans OS:Windows XP SP2
すごくくだらない質問ですが、教えて下さい。 PHP5に元から入っているSQLiteのバージョンは2ですよね? これを、バージョン3にしたいのですがインストールがいまいち分かりません。 環境は、WinXP Apache2 PHP5 です。 DB板に書くべきか悩みましたが、 PHP関係なのでこちらに書きました。
SQLite3はPDOでされます。
えすきゅうらいとさんはぴーでぃーおでされます。
質問です。
PHPを記述しているページのアドレスを
http:// ○○.phpではなく
http:// ○○.htmlまたは.php以外のモノにしたいのですが
やりかたが分かりません。
PHPを使っていると思われるサイトでも
アドレスが、
http:// ○○.htmlとなっているのを見かけるのですが
どうやっているのでしょうか?
知っている方がいましたら教えてください。
htaccessでリネーム?するんですね。 検索してやり方を調べてみます。ありがとうございました。
リネームじゃない Apacheに拡張子htmlをPHPとして動かすように指示するだけ Add-Type application/x-httpd-php .html とかにすれば拡張子htmlのものがApacheでPHPとして扱われる まぁこれ以上は板違いなんで .htaccessについて深く知りたければWeb制作板へどうぞ
その昔、 拡張子phpを使いたいという理由だけでPHPを始めた俺が来ましたよ (突っ込みは無用) アドレスが*.phpなのがオサレなんだと思ってた時期もありました
>>112 それってPHPじゃなくてもなるんじゃなかったっけ。
CPUに詳しい人に聞いた方が良いと思う。
123 :
すのっぶ :2008/04/15(火) 02:01:01 ID:LJ3oHWbN
php限定という訳じゃなくてすいません。 md5だと32桁の16進数値になりますが、大文字小文字を区別した表示でもっと短いhashはどのようなものがありますか? ある携帯サイトで送られてくるメールのURLにそれらしきものがあり、「RJgYbxmTqnN5」という表記でした。
よ
それはbase64では
crypt
127 :
nobodyさん :2008/04/15(火) 07:42:07 ID:LJ3oHWbN
http://jp.php.net/crypt crypt だった。サンクス > 126
ちょっと古いサーバで試したんだけど、salt を指定しない場合、「$1$Qgv55ZYN$likCiswhSgaLSaWdJeObY.
」とかで、しかも毎回内容が変わってた。これはこれで役にたつものなの?どうやってパスワードチェックするんだろう。
ちなみにそのサーバの定数値は以下
CRYPT_SALT_LENGTH 12
CRYPT_STD_DES 1
CRYPT_EXT_DES 0
CRYPT_MD5 1
CRYPT_BLOWFISH 0
OS REDHAT 9
指定されないソルトは乱数で生成されるから、それは正しい。 パスワードのチェックの時は、ソルトを読み取ってから 入力されたパスワードのハッシュを計算する つ man 3 crypt
ログ解析ソフトってあるじゃないですか。 あれの滞在時間とか、直帰率とか、再訪とか、 ああいうのの開発手法について、概要でも良いので 説明しているサイトをご存じないですか? ググっても、ASPとかWeb屋とかが出てくるばかりで・・・・
>>129 だいたいどういうことすればできるかイメージつくだろ。
クッキー、セッション、リファラーetc
それすらイメージできないうちは作れるレベルにないということ。
131 :
nobodyさん :2008/04/15(火) 14:43:24 ID:tEWEzoyO
http://jp.php.net/manual/ja/book.imap.php imapでpop3サーバーにつないで、読んだメッセージをDBにしまい
ごにょごにょしようかと思ってるのですが、
メッセージを既読にするにはどうしたらよいのでしょうか?
imap_setflag_full()
はimapでつないだ時だけ見たいだし、
imap_body()
に「既読フラグをたてないオプション」みたいのがあるので、読めば自動的に立つのかと思ったけど
だめっぽいです。
立てられないと、毎回すごい数のメールを見に行かなきゃならないのでちょっと現実的じゃないかなと。
わかりましたらお願いします。
>>130 ログは取ってるんですよ。
IPアドレスとかUAとか、アクセス時刻とか。
それらをどういうふうにデータとして加工・保存していけばいいかのヒントになるようなものがあればということです
書き方が悪かったですね。スマソ
藻前の望みをリストアップして1時間眺めれば判る。
134 :
nobodyさん :2008/04/15(火) 15:43:29 ID:6h+mXfU6
アクセス毎に10MBぐらいのファイルの読み書きするのって負荷かかりますか? あまり詳しくないのですがDB使う場合とファイルをそのまま読み書きするのでは やっぱ違いますか
>アクセス毎に10MBぐらいのファイルの読み書きするのって負荷かかりますか? なんでこんな糞システムになるのか理解できないが改善できるなら改善してくれ じゃないと色んなところに迷惑がかかる アクセス数が1日数件なら問題ないけど >DB使う場合とファイルをそのまま読み書きするのではやっぱ違いますか 違う 扱うデータ件数が多ければ多いほどDBのほうが有利
10MBぐらいのファイルじゃわからんな。 10MBのログに吐き出すだけならデータベースよりも軽石。
138 :
135 :2008/04/15(火) 16:28:06 ID:???
レスどうもです ちょっと説明不足でした プログラムファイルが10MBというわけではなく読み書きするデータファイルが10MBあるということです 最初は0でだんだんたまっていくという仕組みです cgiで動かしていたのですが10MBぐらいで鯖の限界がきました なのでPHPで作り直そうと思い、どのやり方が負荷が少ないかということで聞いてみました やはりDBの方がいいのでしょうか
鯖の限界っていうのがどういうことかわからないけど おそらく使用可能なメモリが足りてないんでしょ? だとするとcgiがだめでphpなら平気そうとかそういうレベルじゃないような気がする 特にPHPやPerlでWebプログラム組んでる人は特段意識しないだろうけど 扱うファイルが膨大となるとメモリ管理を効率よくおこなうプログラムを意識しないとだめだと思う 全てを配列に読み込むとかしただけでも相当メモリ使用量が増えるから というわけでどういうものなのか想像できないのでなんともいえないけど プログラム側の設計とファイルの扱い方についてを根本的に変えないといけないと思う
>>138 別にログにレコード追記するだけなら別に10Mが100Mでも遅くならんだろう。
ただまぁ、段々増えると言っている割りに、読み書きと言っているし、
なんとなく、file()とかで読み込んで...とか考えてそうだから素直にDBを使った方がいいね。
違ったらごめんよ
アクセスログか何か?
配列に読み込んで追加して・・・とかやってるんなら追記モードでオープンすれば問題ないでしょ。
とりあえずもっと詳細な情報がないと何とも言えない。
>>136 データ件数が少なくてもリレーションや制約,データ構造のためにDB使う意味はあるよ。
$binstr = "0x71,0x8E,0x01,0x00,0x00,0x00,0x00,・・・"; こんなデータの並びをバイナリにして、ブラウザからダウンロードさせたいと考えて いるのですが上手くいきません。どなたアドバイスして頂けないでしょうか? 以下失敗例です・・・ $binarr = split(",", $binstr); $bin = ""; for ($i=0; $i<count($binarr); $i++) { $bin.= pack("c", $binarr[$i]); } header("Content-Type:application/octet-stream"); echo $bin; exit();
自己解決しました・・・ $bin.= pack("c", $binarr[$i]); ↓ $bin.= pack("c", hexdec($binarr[$i])); ん〜しかしpackの説明のとこで0xXXって感じで渡してるのに なぜこれで上手くいったのかいまいち納得できず・・・
HTTP_RequestでsetBasicAuth使わない場合は、 getResponseBodyでちゃんと返ってくるんだけど、 setBasicAuth使う&setMethod(HTTP_REQUEST_METHOD_POST) すると getResponseBodyしても何も文字列が返らない。 バグか何か? どなたかご存じないですか?
146 :
145 :2008/04/15(火) 20:39:06 ID:???
ちなみに setMethod(HTTP_REQUEST_METHOD_GET) なら問題ありませんでした。
変数に入ってる文字列を数式として評価できるのってevalだけですか? $a="1+2"; とかがあったら3にしたいだけなんですが
ども。 GDのimagecreatefromjpegを使っているのですが、 画像がでかいと死にます。 普通に死んでくれると問題ないんですが、 エラーメッセージも、返り血もなく、いきなり実行が中断されるので、エラートラップもしけません。 問題を回避する方法知ってる人いませんか?
エログ見てみ。
いつも見てますよエロゲ
151 :
nobodyさん :2008/04/16(水) 08:11:13 ID:1M88tLAK
JpGraphで画像を出力したのですがどういうわけか携帯では見れません もちろん画像形式はgifにしました PCでは当然見れますし保存すると拡張子もgifです 考えられるのはキャッシュ化したファイルにはpngとなっているのですが ダウンロードしてみると中身はちゃんとgifです。 どうすればいいでしょうか
>>148 メモリーが足りてないんだろう。
memory_limitの値とかチェック。
あと、imagecreatefromjpegの前にファイルサイズとかチェックしろ。
153 :
151 :2008/04/16(水) 10:28:41 ID:???
自己解決しますた
154 :
nobodyさん :2008/04/16(水) 11:27:50 ID:DHAOt7zZ
Dynamic EXtensionってなんですか? これの設定がよくわかりません。 postgresqlやいろいろ入れていった場合 追加していけばいいのでしょうか?
155 :
nobodyさん :2008/04/16(水) 12:19:19 ID:xAJOe1B+
関数の中でcookieを使うにはどうしたらいいのでしょうか? 下記のようにしているのですが、クッキーが有効となりません。 function cookieTest(){ if($_COOKIE["test"]<>"on"){ クッキーがない場合の処理 } setcookie("test","on",time()+30); }
引数で渡す
157 :
nobodyさん :2008/04/16(水) 13:12:39 ID:KGnhrG4i
.htmlの拡張子をphpファイルとして実行したいのですが、 .htaccessの AddType application/x-httpd-php .htm .html 以外のやり方で、デフォルトで.htmlをphpファイルとして実行する方法はないでしょうか? よろしくお願いします。
httpd.conf(笑
.htaccessも弄れないようなところで拡張子を誤魔化したいってのに不正のにほいがぷんぷんする。
>>157 そんなにいやならフレームでも使ってろ
見た目はhtmlだろ
161 :
157 :2008/04/16(水) 13:56:24 ID:KGnhrG4i
>>160 いえ、ローカルのテストサーバ―として利用しているので、嫌とかではないんですが
毎回ディレクトリごとに.htaccessを設置するよりも、デフォルトで設定しておきたいのです。
AddType application/x-httpd-php .htm .html
これをhttpd.confに記述すればいいんでしょうか?
>>161 >ディレクトリごとに
ルートに1つ置いとけばいいだろ
>これをhttpd.confに記述すればいいんでしょうか?
YES
まぁスレ違いもいいところだぜ・・・
テストとして使ってるだけなら拡張子にこだわってるのはおかしいだろ。
164 :
131 :2008/04/16(水) 14:11:58 ID:QC7Y4msP
imap_setflag_full() でフラグは立っていたみたいです。 imap_headerinfo() で見ると、実際変わっていました。 しかし、imap_checkで変えるrecentの数や、 imap_searchでの検索でも、フラグが立っているとみなされません。 \\Flaggedをたてて、 UNFLAGGEDなんかでimap_searchしてみても 全権引っかかってしまいます。 From "hoge@hogehoge" なんかで検索すると、うまく見つられてるようです。 常に1000件くらいメールがあるので、全部に対して処理をすると、読みこんで メール解析したオブジェクト組み立てるだけで15秒〜30秒かかります。 DBに登録して・・・と考えると、ぜひ、新しいメールだけに処理をしたいのですが なにか方法ありますでしょうか? お願いいたします。
165 :
nobodyさん :2008/04/16(水) 14:32:44 ID:KGnhrG4i
166 :
nobodyさん :2008/04/16(水) 14:36:42 ID:pyqKRshm
>>155 $_COOKIEはグローバル変数だよ?
167 :
nobodyさん :2008/04/16(水) 14:41:52 ID:pyqKRshm
>>155 あーわかった。それはクッキーに値が入ってない。
CやperlとかでCGI経験がないと、httpプロトコルが分らないから
クッキーはヘッダーで渡されているというのが分らないんだよね。
つまり、本文(html)を出力した後にクッキーは送出できないんだけど、
ここを理解しないと、今後同じデバッグに苦しむことになるよ。
解決策は、本文の前にsetcookieを呼ぶこと。
実装上のコツはノウハウだから、ケースバイケースでアドバイスが変わるよ。
配列の最後の値をとりたいのですがそんな関数ありますでしょうか? 配列にいくつ値があるかはそのつど変わります。 以下のようにはできるのですが、もっと簡単な方法がありましたらよろしくお願いいたします。 $data = array('hoge','foo','fuga'...'bumobumo'); $str = $data[count($data)-1];
>>168 $data[-1] を思い出してしまったたけど、end() があるよ。
どなたかコレの使い方を教えていただけませんか?
AutoIndex PHP Script
ttp://www.moongift.jp/2007/05/autoindex_php_script/ どこで聞けばよいのか迷ったのですが、phpですのでこちらに書き込ませていただきました。
疑問点はこれを使う場合のディリクトリ構成です。
(AutoIndexフォルダ内に一覧表示したいものを入れるのか、その逆か)
また、必要があれば設定ファイルの変更箇所や、パーミッションの設定、アクセス制限の方法等も教えてください。
宜しくお願いします。
172 :
171 :2008/04/16(水) 17:24:04 ID:???
自己解決しました
XML関係の関数について詳しく書かれた本/サイトを教えてください。
177 :
173 :2008/04/16(水) 19:16:54 ID:???
>>172 で171を名乗っているのは別人です。
なので、完全には自己解決していませんが、
>>174 さんに教えていただいたフォーラムなどを参考に
ある程度進むことが出来ました。
一覧表示したいものがあるフォルダに、AutoIndexの内容物(index.phpなど)を入れたところ一覧表示されたのですが、
ユーザー名とパスワードによるアクセス規制がいまいちよく分りません。
初回動作で表示される設定画面で、「use_login_system」を「TRUE」にしたところまでは良いのですが、
どうやらそれに関係なく、誰でもファイルにアクセス出来る状態になってしまいます。
ユーザー名とパスワードを設定する.htpasswd.autoindexへの記述も、デフォルトで暗号化されているため
どうやってIDとパスを生成するのかもわかりません。
どなたかご教授願います。
180 :
154です。 :2008/04/16(水) 19:35:21 ID:DHAOt7zZ
だれか154の質問に答えてください。 よろしくお願いします
181 :
171 :2008/04/16(水) 19:51:41 ID:???
>>179 なんで私を名乗るんですか?
自己解決済みです。お騒がせしました。
>>154 本当にDynamicに(実行時に)エクステンションをロードする必要があれば(って言うかその必要がある場面がわからんぞ)
dl関数使ってロードできる(けど使ったことない)。
実行時にロードする必要が無ければ
使いたいエクステンションを所定のフォルダに置いて
php.iniをいぢればOK(これは普通のやり方)
>>168 array_pop
>>154 dllの事だろ
extension=php_pgsql.dll
こんな感じでiniに追記
詳しい事は環境がわからないと何とも言えない
185 :
nobodyさん :2008/04/16(水) 22:38:20 ID:JLMZOI/r
PHPがオブジェクト指向になってから全然わかんないです。 関数メインで作っていたのを、今後の為に抽象化レイヤーに 書き換えようと思ってググリました。 $pdo = new PDO('hoge','huga','honya');な場合において $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); と $pdo->setAttribute(ATTR_ERRMODE,ERRMODE_EXCEPTION); という表記を見たのですが、これは同じと考えて良いんでしょうか。 ::hogeは静的メソッドなので、PDOのオブジェクトのインスタンスである$pdoの中では 多分PDO::を省いても良いって事なんだろうなぁと思うんですが 書き方の習慣として、どちらの書き方が推奨されますでしょうか。
>>185 違う
PDO::ATTR_ERRMODE
これはクラス定数
ATTR_ERRMODE
これだと定数を参照する事になる
>>185 おいおいおい・・・なぜ憶測でコードを書こうとする。他言語でOOPの経験があるわけでもないようだし。
ちゃんとマニュアルに書いてあることだから言語仕様で疑問に思うことがあったらこんなとこで聞く前に即参照しなされ。
>>186-187 理解できました。
ありがとうございます。
グローバル定数のPDO_ATTR_ERRMODEが5.1まで使用されていたけれど
今後はどんどんPHPを拡張していくから、グローバル定数増やすの嫌だから
PDO::ATTR_ERRMODEの様にクラスで定義されてる定数で呼び出してくれって事ですね。
>>188 php.netのクラスの部分は読んだんですけど
他言語でOOPの経験っていうか、特にJAVAの経験がないから
クラスの部分の説明が全然わかんないんですよ。
聞いても良いじゃないですか。
勉強してるだけで別に壊れて危険な物は作ったり公開してる訳じゃないんで
かっかしないでくださいよ。
かっかじゃないよ。呆れてるんだよ。
>>190 だったらJavaやってこいよ
PHPがOOPに対応してるのはJavaからの移行者のため
PHPしかやらないような人間が無理してOOPする必要はない
PDOは確かに便利だが使い方わからないならネイティブ関数使うとか他に方法はある
そんなにクラスを理解したいなら先にJavaのサイトまわってこいよ
OOPのプログラム手法でわからないとこの質問ならまだしも
OOP教えてくれっていうのはお門違いだろ
手取り足取り教えてやる義理はない
.ni 7 .M l^l | | l ,/) | i| _/\/\/\/\/\/\_ ', U ! レ' / / ̄ ̄ ヽ, \ / / 〈 / ', .n < こっこしないでくださいよ > ヽっ{゚} /¨`ヽ {゚}, l^l.| | /) / \ /´ ̄ ̄ .l ヽ._.イl ', | U レ'//)  ̄|/\/\/\/\/\/\/\/ ̄ / ィ-r--ノ ヘ_/ノ ', ノ / ,/ |! | ヽ rニ | 丿' W ヽ、 `ヽ l . !/ ヽ、 | |
おまえはOOP言いたいだけちゃうんかと
196 :
nobodyさん :2008/04/17(木) 08:49:20 ID:YHuC7Xot
質問なんですが 例えばショップサイトで商品のデータをDBに入れます それを呼び出すときは **.php?category=01&data=0000 とかで呼び出すわけですよね それでこの商品の数が膨大になったりアクセスが増えると負荷がかかると思うのですが どのような対処方があるのでしょうか? 鯖の性能を上げるといっても何がどうなってるのか概念みたいなものがわかりません おおまかでいいのでご教授ください
加齢に擦るー
198 :
nobodyさん :2008/04/17(木) 11:00:28 ID:M2mwea+h
PHPで書いたWebページからサーバー上のプロセスを起動したいが、 終了するのを待ちたくない場合はどうすりゃいい? 一応execでC++で書いたプログラム(仮にaiueoという名前にする)を起動し、 aiueoの中でfork(), exec()してみた.親プロセス(aiueo)のほうはwaitを しないで終了すればokかなと思ったら、aiueoがゾンビになって 結局起動した子プロセスが終了しないとwebページを操作できない・・ こーいう場合どうしたらええのん?
>>196 俺の経験則。反論もあるだろうし、信じなくて良い。
まずJOINを一つも無くす。その状態で並び替え条件にインデックスを張る。
そして一つのテーブルをシーケンシャルに検索する。
これはパフォーマンスをあげるための方法、
普通の設計ではJOINを無くすなんてことはしない。
むしろ逆。正規化をする。
検索条件にインデックスをはっても良い。
検索条件にインデックスをはることで遅くなることもある。注意。
like検索する所ははっても無意味。
10万件ぐらいならば、それが一番速い。
場合によって「あえて正規化しない」ってのはアリだと思うけど ドラゴンボール板向けのネタだよなとも思う。
201 :
nobodyさん :2008/04/17(木) 13:43:22 ID:M2mwea+h
>>198 解決.親プロセスと子プロセスの両方で、fclose(stdout)が必要だった.
おさわがせしました
202 :
nobodyさん :2008/04/17(木) 15:08:09 ID:yQIY/Upa
もし、そういった設計をされてる方がいらっしゃいましたら聞きたいのですが、 DBにバイナリ(画像等)を登録するメリットを教えてください。
203 :
nobodyさん :2008/04/17(木) 15:29:12 ID:K4JzsNpf
フレームワークで入門用のものでおすすめありませんか? シンプルなものからはじめてコード読んで勉強したいと思ってます
すいません。くだらない質問ですが教えて下さい。
いま、無料の掲示板(PHP)を使おうと思っているのですが
googleを入れたく思っています。
表示エリアには
// 表示
echo " <tr><th colspan=¥"2¥" $_class><p class=¥"header_menu¥">$res$edit$del</p>$title</th></tr>¥n";
echo " <tr>¥n";
echo " <td class=¥"t_row1¥">$name<br /><br />$id</td>¥n";
とあり、$IDの後に入れたいと思っています。
入れるgoogleは
<script type="text/javascript"><!--google_ad_client = "pub-11111111111";/* 125x125, 作成済み 08/04/16 */google_ad_slot = "11111111111";google_ad_width = 125;google_ad_height = 125;//-->
</script><script type="text/javascript"src="
http://pagead2.googlesyndication.com/pagead/show_ads.js ">
</script>
となっております。
その場合どのよう入れれば表示しますでしょうか?
上の行で$で指定する文章を入れるのが良いのでしょうか?
恐れ入りますが、ご教授下さい。
>>204 //表示 の直後に下記の5行
$google = <<<OMAEHAKUDARAN
<script type="text/javascript"><!--google_ad_client = "pub-11111111111";/* 125x125, 作成済み 08/04/16 */google_ad_slot = "11111111111";google_ad_width = 125;google_ad_height = 125;//-->
</script><script type="text/javascript"src="(p)
http://pagead2.googlesyndication.com/pagead/show_ads.js ">
</script>
OMAEHAKUDARAN;
であとはecho文の入れたいところに$googleを入れる。たとえば
echo " <td class=¥"t_row1¥">$name<br /><br />$id $google</td>¥n";
あ、わりぃ。 rep2でリンクに付く(p)までコピーしてもた。 そこは無視でよろ。
ちょっと酷いよ。 <<<OMAEHAKUDARAN
208 :
204 :2008/04/17(木) 16:12:04 ID:???
やっぱりうそですよね・・・。T_T
いや、あってることはあってるよw ヒアドキュメントをより先にまず "は\でエスケープすること学ぼう
210 :
204 :2008/04/17(木) 16:35:24 ID:???
やっぱり出来ない。現状
$google = <<<GOOGLE
<script type=¥"text/javascript¥"><!--google_ad_client =¥"pub-1111111111¥";/* 125x125, 作成済み 08/04/16 */google_ad_slot =¥"pub-1111111111¥";google_ad_width = 125;google_ad_height = 125;//-->
</script><script type=¥"text/javascript¥"src=¥"
http://pagead2.googlesyndication.com/pagead/show_ads.js¥ ">
</script>
GOOGLE;
として入れてるんですが、HTMLはき出した後ソースを見ると円マークが残ったままになっています。本来HTMLにはき出した後のソースは消えていますよね・・・。
やはり初心者にはむりですかね・・・・。
>>210 >205で言われた通りにやろうよ。
ヒアドキュメントに¥でエスケープは要らない
212 :
204 :2008/04/17(木) 16:51:44 ID:???
すいません。 ありがとうございます。 ヒアドキュメントという言葉を知らず、見落としました。 現状何となくエリアが出たのですが、表示はしていませんが 何となく出そうな感じまで行きました。 ちょっこり、色々いじってみます。ありがとうございました。
ひゃあドキュメントってなんかエッチな感じがするな。なぜだろう?ひゃあ!
またオマエか
春は新しい出会いにときめく学生さんがここに遊びに来てるんだからオマエとかいわず温かい目でみてやれよ
>>212 初心者か否かは関係ない。
真剣やる気があるかどうか、人の話を聞けるかどうかが問題。
219 :
217 :2008/04/17(木) 19:23:39 ID:yQIY/Upa
すいません、教えてください。 Apache2.63にPHP5.25をインストールしました。 PHPファイルをモジュールで動かしてたのですが、勉強のため一部のファイルのみCGIとして動かしたいんです。 動かしたいファイルのソースはこれです。これを実行させるとechoで出力はできるのですが、#!C:/php5/php-cgi -qが文字列として表示されてしまいます ということはCGIとして動いてないからなんでしょうか・・・? #!C:/php5/php-cgi -q <?php echo 1111111; ?>
CGIとして動かすためにしたことは?
>>221 さんありがとうございます
一行目に#!〜おまじないをいれてみましたができません
httpd.confにcgiとして設定しないとできないのでしょうか?
httpd.confをCGIが動くように設定したのか?してなかったら恥
てかid出せボケ
このスレはこの程度か! どうもありがとうございました
いえいえおよび出ないですよ
マジきめええwwww 答えられないならでてこなくていいからw
つうかもういい加減id出してない質問にレスするのやめようぜ
仕切り厨でましたね
仕切り厨でもなんでもいいがルールぐらい守れミジンコ共が
粘着妖精さんもスルー
phpで、携帯のサイトを作っているのですが、 セッション管理が必要なサイトで、 セッションIDの情報をURLに埋め込んでいます。 ただ、ユーザーの中にセッションIDが入ったURLをブックマークとして 公開する人がいて、セッションハイジャックが毎日行われています。 これって、仕様として客に説明しているのですが、 客が納得してくれず、携帯であるが故に技術的に不可能なことを説明しているのですが堂々巡りです。 こういう場合、どのような資料を提示して納得してもらえるのでしょうか? 宜しくお願いします。
237 :
236 :2008/04/17(木) 22:58:55 ID:8cCEOmJ0
すみません、下げていました。
有効期間つければ?
>>236 仕様って!!www
そんなサイトでセッションIDを生で埋め込むなよ
240 :
236 :2008/04/17(木) 23:08:32 ID:8cCEOmJ0
>>238 アドバイスありがとうございます。
有効期間はつけているのですが、
短いと、すぐにセッションが切れると苦情が来るし、
長いと、2chやブログでURLが貼られた場合に、セッションハイジャックが多発してしまします。
結局、有効期間ですと根本的には解決されないのではというのが結論です。
>>239 いや、携帯のサイトですから・・・
>>240 IPの範囲みたりとかしたら?
あとauはクッキー使えるし
IPアドレスや個体識別番号を持たせておけばいいだけじゃないの?
URL埋め込みのSIDだけで何とかしようと思うほうがどうかしてる
んむ クッキーがどうとか全く関係ないな セッションハイジャックの対策をしていない事が問題なだけ
「セッションハイジャックが毎日行われています。」 「fscanfがおかしいです。」も好きだけど、これも気に入った。
無知なクライアントでよかったねぇ うちの下請けが「これが仕様です」なんて言ってきたら二度と仕事回さないぞ
>>240 > いや、携帯のサイトですから・・・
携帯サイトやからセッションIDを生で埋め込まへんねんて
mixiとか大手はどうしてんだろ?
uidじゃね?
if (!isset($a)) $a = "hoge"; や isset($a) ? $a : "hoge" をもっと簡潔に(短く)書く方法はありますか?
あるけどそんな微々たるところの効率なんか工夫しようとすんな
252 :
nobodyさん :2008/04/18(金) 13:48:09 ID:VW/Du+vX
掲示板つくってます。 【日付,名前,本文,削除pass,IP】とデータをログファイルに残してます。 出力はこのログを頭から順にだしてます。 ここから返信機能つき掲示板に組み替えたいのですが、 ログファイルにどのようにデータを残し、 どのように出力するように動作させたらよろしいのでしょうか? 流れだけでもどうかご教授お願いいたします。
>>252 とりあえず全てのスレッドにユニークなIDをつける。
↓
新しいテーブル(データベースの場合)、またはファイルを作成。
↓
【ユニークID,本文】でデータを取る。
↓
ユニークIDが新テーブルと一緒の物だけを表示。
(例) データベース使ってる場合のsql
>>252 の作ってるテーブルのユニークID(55)を一覧する場合
select * from new_table where ユニークID = 55
こんな感じでいいのかな?
まずデータにIDが必要
255 :
nobodyさん :2008/04/18(金) 14:14:18 ID:VW/Du+vX
ありがとうございます、勉強になりました。 さっそく取り掛かります。 ありがとうございました。
正規表現にマッチした数を返してほしいのですがそんな関数はあるでしょうか? 以下だったら3を返してほしいです。 $preg = "12HOGE.;asd123HOGE.;52HOGE"; /(\d+)HOGE/
>>256 そのものずばりではないが
preg_match_all
返して欲しいんだからズバリなんじゃないの
>>257 なんでも正規表現で答えれば間違いないと思っている馬鹿って何なの?
それしか解決方法を知らないの?
正規表現嫌なら煽ってないでお前が答えてやれよ
ずばりそのものだろ?
262 :
256 :2008/04/18(金) 16:36:42 ID:???
自己解決しますた ほんと使えねえカスばっかだな
fscanfがおかしいです
>>256 preg_match_all
返り値
パターンがマッチした総数を返します(ゼロとなる可能性もあります)。 または、エラーが発生した場合に FALSE を返します。
これより楽な方法はないよね
ID出さないやつにご丁寧に答えて議論してやってるお前らが微笑ましい
ID出す出さないに関係なく自分の糧になるのなら質問も回答もするのが俺様のセオリー
右乳首が痛いのですがどうすれば治りますか? バージョンアップするしかないのでしょうか?
preg_match_allの第三引数で 変数にマッチした値を格納できますが、 $matched[0]にあたる値はいらないので変数に格納しないでほしいのです。 $matched[1]とかは(?:)でできるのは知っています。 $matched[0]はどのようにすればいいのでしょうか? $str = "1234abs=2;1234abs=7;432abt=3;"; preg_match_all("/[\d]+abs/",$str,$matched);
正規表現がダメな理由は、その処理速度の遅さ。 forループ文の中に、正規表現で処理するロジックが入っていたら、それこそ最悪。 また、正規表現の処理のために仮想メモリーを浪費するため、異常なメモリーの食い方をする。 現実的に出来るかどうかを検証せずに、出来る出来ると主張しているところが青臭さを感じるといっただけ。
正規表現は神
否定するのは誰でもできます 解決方法をかけない奴はいくら言ってもダメ
特にお前とかな
>>270 現実的に出来るかどうかを検証してから、
ダメと主張してくださいねw
方法を提供もしないでこれはダメあれはダメなんて幼稚すぎる
その遅い正規表現は何秒かかるの? それが問題になる処理じゃなければ使ってもいいだろ。 遅いってんならPHP使わないでCで組めや
>>270 さん正規表現に変わる手法を教えてください
代案も出さずに批判するとは民主党もびっくりだわw
ここまで技術的な考察まで書いてやっているのに、 人に代替案まで求めるって、どこまでスィーツ脳なんだ? 技術者としての素質もなければプライドもないのかね?
スイーツ脳なんて特徴的な言葉使うのお前だけ よく常駐して煽ってるいつもの馬鹿か
>ここまで技術的な考察まで書いてやっているのに ぷっ
技術的(笑) 考察(笑)
(笑) (笑)
()笑
代替案が欲しいわけじゃないんだわ お前さんが本当に代替案を考えられる技術があるのか その方法が標準の正規表現関数と比べてどの程度早くなるのか それが知りたいだけ
真性キティにマジレスカコワルイ
口だけだったみたいだからあんまりいじめないであげよ
>>289 他人のふりせずに素直にやめてくださいって言えよw
実力がある人って批判だけするとこみたことないねえ かならず何らかの提案をもってきてくれる
批判だけする人って 勘違い君が多い
293 :
269 :2008/04/19(土) 01:26:36 ID:???
お願いします
だから、必死になって代替案出せって何よ? 本当は知りたいくせに、煽っているってるって、 好きなくせに女の髪の毛引っ張って気を引こうとしている中年男と一緒だろw
池沼うざい
本当に知りたいと思ってる人はいないよ。
PCREのパターン展開エンジンを*PHPで*自前実装したい人だけが
高度な技術的考察をしとけばいい。
/^\d+$/ → ctype_digit()
/^Mozilla/ → strpos(), strstr()
>>256 のお題がこんな話に見える素質がなくてよかった。
>>294 いや、批判するなら最初からレスしなくていいと思ってる
>いや、批判するなら最初からレスしなくていいと思ってる 馴れ合いキモ
>>293 第4にPREG_OFFSET_CAPTURE入れて
0をunsetしれ
>>296 CTYPEはそれとイコールじゃないよ。
俺も昔つっかかった
【迷言ランキング】 1 : fscanfがおかしいです 2 : ここまで技術的な考察まで書いてやっているのに トップ揺るがず。
質問です。 <?php $word = $_POST['text']; $pointer=fopen("./log.dat", "a"); flock($pointer, LOCK_EX); fputs($pointer, $word); flock($pointer, LOCK_UN); fclose($pointer); ?> <form action="パス" method="post"> <input type="text name="text" size="30"> <input type="submit" value="送信"> </form> こんな感じのを応用して簡単な掲示板を作ろうと思うのですが、 更新すると何個も同じものを送信してしまいます。 どうすればよろしいのでしょうか?
>>303 同じものであるか判定する処理
↓
真だったら拒否,偽だったら書き込み
PDO+SQLite使えば楽なの何故いまだファイル使うかなぁ
307 :
303 :2008/04/19(土) 14:27:57 ID:EugqgBl5
>>303 更新すると同じものを送信するのはブラウザ側の問題なので、サーバで二重投稿かデータチェックする。
ケース1)
ログファイルの最後に書き込まれたデータと比較して、同じならアウトにする。
ケース2)
フォームにセッションを使ってユニークIDをhiddenに埋め込む。
サーバにhiddenで送られてきたユニークIDを見て、セッションと同じ値でなければアウトにする。
309 :
nobodyさん :2008/04/19(土) 15:46:00 ID:nFas9Qcl
? てst
310 :
nobodyさん :2008/04/19(土) 15:49:34 ID:nFas9Qcl
マックからフォームで〜を入力すると?(←2chではwinだとハテナに見えるかもしれません)となってしまいます。 これをログに記録すると、文字化けしてしまいます。 マックからの「〜」を文字化けしないでログに書き込むにはどのような方法がありますでしょうか?
文字コード統一汁(機種依存は論外)
>>310 外部、内部、それぞれの文字コードは何?
313 :
nobodyさん :2008/04/19(土) 16:18:13 ID:nFas9Qcl
314 :
nobodyさん :2008/04/19(土) 16:26:34 ID:nFas9Qcl
自己解決しました。
ログを開くのに使用しているエディタの内部文字コードがsjisのために起こった現象です。
使用してたのはサクラエディタでえす。
お気に入りのエディタでしたが、この機会に別のエディタに乗り換えます。
引用:
ttp://ja.forums.wordpress.org/topic.php?id=51 残念ながら、サクラエディタは、Shift_JIS なのに ISO-2022-JP と誤認した前科 (WPJ フォー
ラムのキャッシュ) があるので、今回は「紹介するべきではない」代物です。
単に「巨大なテキストを開けるエディター」として出すならいいんですが、
今回は文字コード変換に使うため、「文字コードを誤認するエディター」を選ぶのは、よろしくありません。
サクラエディタは内部文字コードが SJIS らしく、UTF-8 を扱うにはよいエディターとは
言えません (「波ダッシュ」が化けたりするらしい)。
そういう面ではマトモなのは EmEditor ぐらいしかなさそうです (TeraPad, K2Editor など、Windows のエディタの多くは内部コードが Shift_JIS)。
あと、質問者が Windows を使っているかどうか不明なので、「Windows ならば○○○」という限定を入れてほしかったです。Mac ユーザーだとすると「サクラエディタがおすすめ」と言われても困りますので。(Linux ユーザーは文字コード変換で悩むことはないでしょうが)
痴漢すればいいじゃん
ヽ(・ω・)/ ズコー \(.\ ノ
Emediterも半角英数字だけのファイルを保存すると ShiftJISで保存する糞エディタだな
terapad→サクラエディタと着たが俺も乗り換えるか・・・
>>317 ちょwww笑わすなwwww
BOM無しUTF-8とEUCとSJISの文字コードを判別する方法思いついたら教えてくれwwww
エディタ作ってやんよwwwwww
320 :
303 :2008/04/19(土) 18:12:34 ID:EugqgBl5
連続投稿は防げましたがタグを使われるとおかしくなります。 htmlspecialcharsで無効化しようと思ったのですが、 <font color="#ff0000">が<font color=\"#ff0000\">となります なせでしょうか?
ポストされたデータをどっかでエスケープしてるんじゃないの? 覚えが無いならmagic_quotes_gpcを確認
>>320 おまえはまず人からアドバイス受けたらありがとうの気持ちぐらいだせ
323 :
中沢 :2008/04/19(土) 20:02:45 ID:8RVDFTU7
こんにちは(^_^;) ログファイルに保存された配列を元に検索機能を作りたいのですがどうすればよいのでしょうか? 詳しく書きますと log.datに 155<>名前155<>年齢155<> 5<>名前5<>年齢5<> 4<>名前4<>年齢4<> 1<>名前1<>年齢1<> とあったとします。 検索では、完全一致した場合に表示させる、id検索と、部分一致した場合に表示される、名前と年齢検索ができるとして、 id検索で1 と検索すれば、$ken件マッチしました。 id:$id 名前:$name 年齢:$age と表示させ、見つからなかったらエラールーチンに飛ばさせます 次に、名前検索で部分一致したら表示させる場合は、 「前1」 と検索したら、今回は2件マッチするので $kenマッチしました と 2件とものデータを表示させたいです このような検索できるスクリプトを作りたいのですが、分かりません。よろしくお願い致しますm(_ _)m
>>323 わからないならまだ作るのは早いってことです
ここは宿題お手伝いのお部屋ではありません
325 :
nobodyさん :2008/04/19(土) 20:13:26 ID:+VgtfKgh
今、メモ帳でphpのプログラム書いてるんですが 専用のソフトとかってないですか? プログラム書いてて関数とか変数が色ついたり 見やすくしてくれるヤツです。
はじめまして、よろしくお願いします。 PHPでデリヘルによくあるような出勤表を作りたいと思っています。 女の子情報はMYSQLで管理しています。 ■欲しい機能 ・管理画面から出勤スケジュールを登録 ・本日の出勤一覧ページ いろいろ考えているのですが… ・女の子情報の登録時に『出勤フラグ』をラジオボタンで付けて フラグがtrueのときに内容(時間)を表示 とか。 →どうやってカレンダーと合わせる? 詰まっています。 ヒントでもいいのでお願いします。
>>325 phpエディタでもつかいなされ
メモ帳使いがいきなりIDEは厳しいとおもうけど
興味あるならEclipse PDTでも使ってみなされ
まず金払え。
330 :
>>323中沢 :2008/04/19(土) 20:24:08 ID:8RVDFTU7
array_serch を使うのはわかるのですが、中に正規表現をいれたいのです。 どうすればよいのでしょうか?
>>330 どうすればいいのですかではなく、自分で考えてコードを書け
332 :
326 :2008/04/19(土) 20:28:35 ID:???
ヒントだけでも。
学歴だけでPGすっ飛ばしてSEになるとわからないよなw
答:仕様書書いてPGに組ませる
これでもPGより給料多いんだぜ?
このスレはこの程度かよ ksg
ループかよ
340 :
中沢 :2008/04/19(土) 22:25:14 ID:8RVDFTU7
誰か答えクレクレ(^^)/ お願いいたします
ああごめん、デリヘル依頼者とごっちゃになってたわ
??? デリヘル依頼者と正規表現とどう関係があるの?
両方とも珠玉の一品に出会えます
>>344 よく分からない。珠玉の一品って、つまり締まりがいいマンコとかってこと?
あとは、でかいチンコも。
347 :
nobodyさん :2008/04/20(日) 15:51:29 ID:cb0wPZjr
配列$_POSTの中身の一つ一つにhtmlspecialchars($_POST, ENT_QUOTES, 'UTF-8')の様な処理をして 戻したいです。 arra_mapを使ったところ、第3引数のENT_QUOTESが配列では無いと怒られてしまいます。 $_POST = array_map('htmlspecialchars',$_POST, ENT_QUOTES, 'UTF-8'); どうしたら良いでしょうか。
怒られないようにしたら?
349 :
nobodyさん :2008/04/20(日) 16:52:53 ID:cb0wPZjr
>>348 ありがとうございます。
怒られないようにしたら出来ました。
亜鈴魚喰
351 :
Defort :2008/04/20(日) 17:11:16 ID:QNOTdt2p
フリーページ
http://tool-1.net/ について聞きたいのですが、index.cgiのスクリプトが丸見えみたいなのですが、どうやったらみれるのですか?
ヌルバイト攻撃使っているのですか?
gethostbyaddr() で得られるホスト名って信頼できる? たとえば、gethostbyaddr($hoge) で ***.yahoo.co.jp みたいなのが でたら、 $hoge は yahoo関連のIPと断定できる? yahooとは関係ない第三者のIPが ***.yahoo.co.jp みたいなホスト名を 返すことってありえませんか?
353 :
352 :2008/04/20(日) 17:33:32 ID:???
自己解決しました
354 :
nobodyさん :2008/04/20(日) 17:57:34 ID:Tze2JaW2
セッションのGCの挙動を変えたくて、session_set_save_handlerを使って gc_test()に置き換えようと思っています。 session_set_save_handler("", "", "", "", "", "gc_test"); session_set_save_handler(null, null, null, null, null, "gc_test"); と試してみましたが Warning: session_set_save_handler() [function.session-set-save-handler]: Argument 1 is not a valid callback in xxx.php on line 3 というwarningが出て目的が達成できません。 openその他の関数をデフォルトのままにするにはどのようにすれば良いでしょうか?
355 :
320 :2008/04/20(日) 18:38:39 ID:???
>>321 様
ありがとうございました!
magic_quotes_gpcがずっとわからなかったのですが
.htaccessで設定できるのですね!
文字化けの心配がなくなりました。
356 :
nobodyさん :2008/04/20(日) 19:26:38 ID:8958Dk4L
<form method="post" enctype="multipart/form-data" action="./uploader.php"> <input type="file" name="data" size="30"> <input type="submit" value="アップロード"> </form> <?php $filedir = "./file/"; $filename = $_FILES['data']['name']; if(file_exists($_FILES['data']['tmp_name'])){ $filesize = filesize($_FILES['data']['tmp_name']); if($filesize <= 1050000){ if(move_uploaded_file($_FILES['data']['tmp_name'],$filedir.$filename)){ echo "アップロードしたファイル・・・ファイル名:".$filename." ファイルサイズ:".$filesize."Byte"; echo "<br><br>"; } } else{ echo "ファイルサイズが大きすぎます!"; } } if($filename){ echo "<img src='./$filedir/$filename'>"; } ?> このような感じでアップローダーを作ってるのですが、 ファイル名がそのまま保存されるのをfile0001みたいな感じで保存することはできますか?
それ自分で書いたコード?
自分で書いてたらはじめから連番を振る仕様になってそうだね。 まあ、どっかのサイトとか本が $filename = $_FILES['data']['name']; で説明してたのを 使い回してるのかもしれない。
359 :
nobodyさん :2008/04/20(日) 19:47:01 ID:8958Dk4L
友達から教えてもらったです。
きめぇw
ら、らめぇ
じゃその友達に聞けばいいじゃん
めでたしめでたし
くだらない質問、お願いします。 OSはWinXP、webサーバはapacheです。 perl、phpは実行できる環境です。 ダウンローダーからのアクセスをhttpステータス403で 返したいです。その為、webサーバのログをcronで 調査し、ある条件(例えば1分間に60回アクセス) に合致したホスト(IPアドレス)を.htaccessの deny fromに追加したいです。 そのような、perl,PHPはあるでしょうか?
366 :
nobodyさん :2008/04/20(日) 21:29:20 ID:PJ8uyzSs
age忘れました。 くだらない質問、お願いします。 OSはWinXP、webサーバはapacheです。 perl、phpは実行できる環境です。 ダウンローダーからのアクセスをhttpステータス403で 返したいです。その為、webサーバのログをcronで 調査し、ある条件(例えば1分間に60回アクセス) に合致したホスト(IPアドレス)を.htaccessの deny fromに追加したいです。 そのような、perl,PHPはあるでしょうか?
WinXPでcron動いてるのか?
368 :
nobodyさん :2008/04/20(日) 22:10:51 ID:PJ8uyzSs
>>367 pycron.exeってやつで、
unixのcron相当を動かしてます。
cronって、結局時間で動かすだけのプログラムだろ、 本気でやるならJP1とか使えよ。 本気じゃねーのかよ。
>>369 ここは下らねぇ回答者のスレではありません。
>>370 異常系の処理も考慮しない馬鹿ですか?w
パソコンの電源がつかないのですけどどうしたらいいですか?
374 :
366 :2008/04/21(月) 07:24:16 ID:f7rHed3v
JP1とかはどうでもいいんで、 私の質問に対して、良い案は ありますか? お願いします。
phpでいくらでも.htaccess編集したればいいじゃん
377 :
nobodyさん :2008/04/21(月) 12:32:43 ID:8HZkrnGU
mail関数を連続で実行することで、 メールの遅延が発生したりするのでしょうか? お問い合わせフォームを作った時、管理者・問い合わせ者・保存用と 3つの箇所に送信するのですが、たまにメールの受信が遅かったり バラバラに受信したりします。
>>377 だから、そういう時のためJP1を使ってジョブの異常系を制御しろよ。
380 :
377 :2008/04/21(月) 13:08:39 ID:8HZkrnGU
>>378 「JP1」と言うのを検索しましたが、
メール処理とあまり関連しないような気が・・・。
>>379 「そんなもんだ」とは思っているのですが、
メールが届かない事による語弊もありますし、
プログラムに詳しくない人は「メールは必ず届くものだ」と
考えるので、お問い合わせフォームでそれが起きると不安がられます。
「遅れることがあるよん」と謳っておけ いつでもラグレスで届くシステム作ったらそれだけで億万長者になれるわw
>>377 SMTPサーバのログとキューを確認したら?
きちんとmail関数で送信できる?
それとPOP/IMAPサーバの方もチェックした?
>>378 JP1は無関係だろ?
一応は送信できているんだからジョブは生きてるだろ
週末から今日までのログを読んで笑わせてもらった。 ありがとう。
384 :
377 :2008/04/21(月) 13:36:11 ID:8HZkrnGU
>>381 それは注意事項に記載しているのですが、
いかんせん電話までしてくる人が多くて‥。
>>382 サーバの事は疎くてSMTPサーバのログとキューは確認してないです。
また、mail関数(厳密に言えばmb_send_mail関数)を使っていて
これまで問題なく送信、一括配信など行えていたのですが、
なぜか今作っているサイトでは遅延が発生します。
やっぱりサーバの問題もあるんですかね?
さくらインターネットのサーバなんですが。
385 :
377 :2008/04/21(月) 13:38:55 ID:???
少しググったのですが、もしかして サーバのPHPが4.3.9なのが原因なのかも・・・。
>>384 > これまで問題なく送信、一括配信など行えていたのですが、
> なぜか今作っているサイトでは遅延が発生します。
どちらも正常な動作ですよ。電話鳴らされるのはご愁傷様としか言えない。
メール配送の仕組みや MTA のご機嫌の問題を PHP で解決するのは大変そう。
てか、メール遅延なんて、自分の鯖だけで解決する問題じゃないだろ
その気持ちは分かるけど、俺も人を疑うことを止めて、 人を信じることから接してみたら? 俺もそうしたら、幸せなことが増えたと思う。 苦情をネガティブに考えないで、感謝する気持ちで捉えてみて。
389 :
377 :2008/04/21(月) 14:01:16 ID:???
>>386 やっぱり「普通のこと」なんですね。
さっきサーバに詳しい友人にも電話して聞いてみたのですが、
「メールの遅延や送られないことはある。でもPHPのバージョンを変えるとか
サーバの設定を変えるとかそういう操作は時期早々。やらない方が良い」
と言われました。ですので、このまま静観します。
ご回答いただいた方、ありがとうございました。
390 :
nobodyさん :2008/04/21(月) 14:01:53 ID:eazv5Nmh
error_reportingの設定って、みんなE_ALLとかE_STRICT使ってる?
送信数が多いならキューを分割してプロセスをリッスンして心太方式にするのもいいカモメ
>>389 プロなら、しょうがないで済まさないぞ。
メールが送信できないケースには様々な原因が考えられるが、
リターンメールが帰ってくるケースではそれに対処するプログラムを組む必要がある。
でないと、到達不能メールが無限ループを繰り返し、相手のサーバーは中継サーバーもダウンさせる。
そうなったら、威力業務妨害で捜査を受ける場合もあるし、賠償問題にも発展する。
かかる観点まで見通して実装するかどうかが、プロとアマの分水嶺だよ。
>>384 ログ解析したら、だいたのボトルネックが分かるものだよ
「問い合わせフォーム」にMAILER-DAEMONさんへ自動返信する機能を 実装するかどうかが分水嶺なのですね。わかります。
395 :
377 :2008/04/21(月) 14:19:08 ID:???
mb_send_mail関数を使ってもサーバのメールログに情報が残るんですか? お恥ずかしながら、sendmail送信の場合、ログが残らないと思っていました・・。 と言うことは、そのログを閲覧できるレンタルサーバを借りなければ いけないと言うことですよね?さくらじゃ無理そうだ・・・
共有レンサバじゃ厳しいだろな 送信関連の規制にひっかかってるんじゃね? スクリプトである程度調整できるかもしれないけど。
397 :
377 :2008/04/21(月) 14:25:00 ID:8HZkrnGU
>>396 1日10件もお問い合わせがないので、送信規制にかかってなさそうです。
アクセスも多くて500PVほどですし。
結構、簡単に考えていたのですが、色々と考えるべき事が多いのですね。。
398 :
390 :2008/04/21(月) 14:25:02 ID:eazv5Nmh
漏れの質問はスルーですか、そうですか。
スパムメールサーバーとして、ルートサーバーに登録されてしまったら、 そこから送信されるメールは一切受け付けてくれなくなるよ。 インターネットで死亡宣告を受けるようなもの。 数件ならいいけど、数百件にもなったら危険水域。
>>390 (PHP_OS != 'WINNT') ? error_reporting(0) : error_reporting(E_ALL);
401 :
nobodyさん :2008/04/21(月) 15:55:39 ID:tP2T0+Jy
phpmyadminのようにサーバ上のSQLiteデータベースファイルをブラウザで 編集できるアプリってありますか?
403 :
nobodyさん :2008/04/21(月) 16:21:47 ID:tP2T0+Jy
JP1JP1って日立の中の人なのか?
405 :
390 :2008/04/21(月) 16:47:11 ID:eazv5Nmh
406 :
366 :2008/04/21(月) 16:53:15 ID:???
自分で作りました。 ありがとございました。
粘着キティは通院日かな?
このスレ、回答者が釣りなのかマジなのかわかんねぇ。
無限ループって何だよ。
Fromを入力可能にするとか?ありえないし。
メールヘッダーインジェクション可能だと、サーバー止められるかもだけど。
>>390 作る時はE_STRICTでやってる。
なんか、本番環境でdisplay_errorがonの所多過ぎない?
ちなみにdisplay_errorはini_setしてもあまり意味無い。
iniでdisplay_error offで、ini_setでonにすると、
パースエラーの時、ini_set自体が実行されないのでパースエラーが表示されない。
逆も然り。
まあ、逆の場合は本番環境でパースエラーは無いだろうから良いっちゃ良いけど、
精神衛生上良くない気がする。
409 :
のし図 :2008/04/21(月) 23:17:05 ID:YYj5TAUN
ここはperlじゃないよ。 cgiは関連付けされてるから見えないみたい!?
411 :
のし図 :2008/04/21(月) 23:28:53 ID:YYj5TAUN
ここはperlじゃないよ。
そんな穴じゃ抜けない
414 :
nobodyさん :2008/04/22(火) 11:42:41 ID:dlLjXVhc
phpのsymlinkってアトミックなんでしたっけ・・・? DBがMysqlのmyisam使わなきゃで、行ロックの代わりをやる必要が・・。
アトミックで鉄腕アトム的ってこと?
このスレもこの程度か 相手になりませんでした
クォリティ高須クリニック
mkboardの穴なつかしすぐるw wwwlangとかあゆ板とかなゆ板にもあるんだよな
mkタクシュリティ
固定の拡張子を付けてテンポラリファイルを作りたいんですけど 何かいい手法はありますか? tempnamでprefixじゃなくてsuffixの指定ができれば悩む必要なかったのだが
>固定の拡張子を付けてテンポラリファイルを作りたい 何故に?
425 :
nobodyさん :2008/04/22(火) 22:31:44 ID:FtmTZwRr
一意の名前ということなら time() . '.tmp' じゃだめ?
一時的なファイルではあるんですけど、セッションの途中でブラウザに渡す必要があったもので コミットしちゃえば正式なファイル名を振るんでユニークなIDも付けるんですが time() . ".tmp"だと1秒以内に同時に作成されたときに一意性が保証されないですよね microtime()を使ってファイルを作ってみてダメならリトライを数回やるってのは よほどのアクセスが無ければ大丈夫な気はしますが泥くさいかなあ
uniqidは?
あ、microtimeを使うならuniqidでも一緒でしたね
uniqidでやってみます ありがとうございました
430 :
nobodyさん :2008/04/23(水) 02:18:22 ID:Wcjf8rbS
すみません、下記の2点がわからなくて困っています。 すみませんが対処法をお分かりになられる方がおられましたら教授よろしくお願いいたします。 1.PHPでフォルダ(中にフォルダ・ファイルが入っています)を削除(unlinkやrmdir)しようとrmdirコマンドを実行しましたが、「中にファイルなどが入っているので消せません」とエラーになりました。再帰的にファイルを削除するしか方法はないのでしょうか? 参考になる再帰的にファイル・フォルダを削除するロジックを ご存じでしたらご教授よろしくお願いいたします。 2.同様に、フォルダ(中にフォルダ・ファイルが入っています)をコピーしようとcopyコマンドを実行したら「権限がありません」とエラーが表示されました。 当方の環境はlinux環境ではなくwindows環境ですので権限とか関係ないように考えていたのですが、 windows環境でもディレクトリに権限の設定が必要なのでしょうか? (また、chmod関数で0777権限を設定しましたがコピーできませんでした・・・)
>>430 1.いい経験になるから自分で考えられるところまで作ってみるべし
>>430 そのあたりのファイル関数は単体に使うものなので再帰的に処理するのが普通
環境依存してもいいとかならsystem()で"rm -rf foo"等のCLIコマンドを叩く方法もあるけどオススメしない
opendir()とか使ってロジックを組んでみるといいよ
>>430 既出だが、異常系の処理をしっかりと対応するなら、JP1とかがお勧め。
そういうのを最初から実装するのは手間とお金が掛かるし、
なんでもphpという一つの技術だけで解決しない方がいい。
あらやだ。JP1君がいらしたわ。
JP1に敵意むき出しの富士通社員がいるね。
jp1にこだわりをみせるフリをした新米se君がいるスレですね
日本一()笑言語w
phpも極めてる人のソースはすごいけどね
__ ____ //  ̄ \\ //--.-- -─\\ // (● ●) ((●(●) \ 地震とかどこの田舎だよ .| |.| ( . ((_人_人__) | _ _== = \\ ⌒ ` /,/ | |  ̄ ̄ ̄  ̄| || ノ \\| | | | || /´ | | | | | l | | ||| ヽ -一ー_~、⌒)^),-、 | |_________| | ヽ ____,ノγ⌒ヽ)ニニ- ̄ | | | = =
>>439 の画像、より目にして、
黒の目玉を二つにすると、
なんと画像が立体に見えません。
php5を使っていると、不定期に「Out of memory (Needed 2095360 bytes)」 のエラーが発生していて困っています。 具体的には、MYSQLに接続してmysql_queryを発行した後に結果セットが返却されません。 このエラーが発生した直後の接続は、半分程度の確率で以下のエラーが発生してDBへの接続エラーが発生します。 :mysql_connect() [<a href='function.mysql-connect'>function.mysql-connect</a>]: Lost connection to MySQL server at 'reading initial communication packet', system error: 0 対処方法がありましたら、教えて下さい。 宜しくお願いします。
442 :
nobodyさん :2008/04/23(水) 23:31:14 ID:k1ODucws
441です。sageてました。
メモリ食いすぎの部分を直す
ファイルが存在する場合のみ処理を実行するため、 $fp = fopen("./$abc.txt", "r"); if($fp != null) 処理〜 というように組んでいるのですが、 この時、ファイルが存在しておらず、$fpの値がnullだった場合でもfcloseで閉じる必要はあるのでしょうか?
>>444 fopenでファイルの存在確認するのはお行儀が悪いですね
446 :
nobodyさん :2008/04/24(木) 00:59:05 ID:LaHdtlHM
>>439 の画像、目玉をトリプルクリックするとなんと目からビームを発射しません。
>>444 しかもfopenで失敗したのだからファイルは開けてないのに何故閉じる必要があるのだ
あけてないものを閉じる意味が理解不能
> fopenでファイルの存在確認するのはお行儀が悪いですね それは素人の意見ですね。 どうせfopenの前にfile_existsとかで調べろといっているのでしょうが、 file_existsとfopenの間にファイルが消されたらどうするんですか? マルチタスクOSなのだからありえる話です。
とりあえず・・・そんなあなたにfile_exist()
書く前に否定された。
file_exists(笑)
なんで最後に「マルチタスクOSだから!OSがマルチタスクなんだから!」という ネタを持って来るんだ。
どうでもいいところに突っ込むな
つーことは、お前、質問者に ダメ出しされてるのかよw
456 :
444 :2008/04/24(木) 01:32:57 ID:???
>>445 -
ありがとうございました。fcloseは必要ないようですね。
fopenで処理を分けるのもよく無さそうなので再考してみます。
ファイルの存在確認後に削除されてたなら、それが正しい「Worning」たる理由なんじゃね?
458 :
457 :2008/04/24(木) 02:09:11 ID:???
Warning.
何を言いたいのかさっぱりわからんw
460 :
nobodyさん :2008/04/24(木) 02:40:13 ID:LhY+BYrB
PHPでCのように 7 / 2 で整数の 3 が欲しい時は floor(7/2) とするのが一般的ですか?
>>460 C99 と合わせたかったら 0 に近付くように丸める。
intval(7/2) か整数型へのキャスト (int)(7/2) で。
file_exists、fopen、 両方で判別するのが大人。 どっちの方法とか言ってる時点でウンコ。
セーフモードも考慮するとfile_existsなんて使わないで別の関数があるだろ
>>462 それで満足気に話しているお前が痛々しいだけ。
file_existsで存在を確認した後に、fopenの処理をするまでの間に
ファイルが存在しなくなる可能性はある。
1日10万PV位のサイトを運営していると、そんなケースなんて日常茶飯事。
まぁ、素人に言ってもしょうがないがwww
煽りたいだけの奴はよそいってくれ
素人ども向けに「俺様がてめえらに教えてやる排他制御」でも書いてくれたほうが 煽りよりずっといいよ。
レスが増えてると思ったら煽るだけで提案しないバカがまた沸いたのか
469 :
460 :2008/04/24(木) 06:31:20 ID:1f8tGK11
俺はPerl出身なんだけど、普通、ファイルオープンするだけでも やっぱそこまでファイルの存在の確実性を意識しないとダメ? if(($IN = @fopen($file,'r+')) < 0) これじゃダメ? あと、書き込みの時は、物理的ロック(自作ロック)して、 ファイルオープンしてflockってしてるんだけど、これでもやっぱ不十分? 物理的ロックってのはロック用ファイル作成する方法です。
おれはデータベース使ってロックする方法を取り入れてる
データベースのロック機構使いながらファイル使うって、 レインコートを着ながら、傘を差すようなものだな。 頭にウジでも湧いているじゃないだろうか?
頭に蛆は湧いていないけど、風呂場に蛆が湧いているよw
474 :
470 :2008/04/24(木) 11:47:44 ID:???
いや、俺も最近はデータベースばっかだけど、 でもファイル使わないといけない時もあるしな。RSSとか。
>>472 君はいろんなものを作って知識を貯めたほうがいいよ
自分の無知を晒すことになるから
無知をさらしているのはお前だよw データベースも実体はファイル。 ファイルを操作するI/Fが違うだけ。 使うばかりじゃなくて、仕組みを理解しないと、応用が効かないよ。
477 :
470 :2008/04/24(木) 12:27:26 ID:???
で > if(($IN = @fopen($file,'r+')) < 0) これじゃまだダメだと思う?
479 :
nobodyさん :2008/04/24(木) 13:09:05 ID:RVXwLuUy
>>479 $_server['path_info']
481 :
479 :2008/04/24(木) 13:17:47 ID:RVXwLuUy
それかrewrite
こういう口の利き方の質問者は教えても感謝をしないから教えなくて良いよ
>>470 > やっぱそこまでファイルの存在の確実性を意識しないとダメ?
それは要求次第。
単純に読み取りしたい時は調べても無駄だからやらない。
状態が分かってもそれは fopen() を呼んだ時点の状態ではないから。
>>444 が言う「ファイルが存在する場合のみ処理」の場合は
存在が分かればいいのだから file_exists() がより妥当っていうお話でしょう。
質問にまともに答えず別の話にもってく奴が悪いんだけどな。
あと fopen() の返り値はリソース型もしくは論理型の false なので
比較は fopen() !== false または is_resource(fopen()) で。
> ロック用ファイル作成する方法
システムコールのロックが使えない、欠陥がある場合や
mandatory lock したい時は使わる一つの手だね。
485 :
nobodyさん :2008/04/24(木) 14:37:34 ID:WKXs89Ye
質問させてください ヘッダとフッタだけ出力する.PHPに 中身のコンテンツを表示させる.PHPを includeさせているとします。 このとき、中身のPHPにheader関数でリダイレクトさせる機能はつけられないんでしょうか? この機能はそれより前に何も出力してないことが条件とありますが、 (親の.phpが)ヘッダを出力してるから無理? テストしたところ動かないです。 これは上記の理由によるものですか?
こういう図か test.phpの中身 フッタ コンテンツ(ここは外部ファイルをインクルードして表示) ヘッダ んでtest.phpではじめの出力でheaderを送信させてリダイレクトさせたいということか?
質問の仕方としては15点
488 :
485 :2008/04/24(木) 14:57:52 ID:WKXs89Ye
<html> <header></header> <body> <?php include "nakami.php";//中身を読み込み。この中でリダイレクトさせてる(header()で) ?> </body> </html> って感じです(外側の.php) こういうやり方だと、リダイレクトしないんです。
489 :
485 :2008/04/24(木) 15:02:12 ID:WKXs89Ye
>>486 どうもです
リダイレクトの関数を設置してるのは、読み込まれている側(コンテンツ部分)の
.phpです
>>488 nakami.phpを読み込んでheader関数使う前にタグが出力されてんじゃん
>>488 で、なんでリダイレクトする必要があるわけ?
アフィ厨で不正やろうってわけじゃないよな
出力させたいページをそのコンテンツ部分に読み込ませればいいじゃん
493 :
485 :2008/04/24(木) 15:14:28 ID:WKXs89Ye
すみません、沢山の人に答えてもらって感謝してます
結局ムリってことですよね、親のphpに出力されてるから…
この場合はjavascriptを中身の.phpに入れるしかないですよね?
>>492 フォームで、アンケート.php に「トップ.php」「確認.php」「完了.php」を
読み込ませてるんです。(ブラウザに表示されるURLは常にアンケート.php)
完了まで行ったら二重送信防止にリダイレクトさせたくて。。 って事情でした
ファイルを分けたいのなら アンケート.phpにいろんなファイルを読み込ませて一つのファイルで処理してるように見せかけたいの? なんかあなたがやってるのは無駄な処理だな
495 :
485 :2008/04/24(木) 15:21:36 ID:???
>>494 どんなやり方がオススメですか? 良かったら聞かせてください
id隠れてるのは偽者?
>>485 ここまでの回答の流れをぶったぎってレス
ob_start 使えば実現できる
Smarty使えば一発で解決する
499 :
485 :2008/04/24(木) 15:36:55 ID:WKXs89Ye
>>496 僕のことですか?
>>495 も僕ですよ
本題とずれてきたのでsageたほうがいいかなと思いました
enq_top.php > enq_conf.php > enq_rewrite.php > enq_finish.php と、
トップから完了まで全パターンの.phpを(使いまわせるはずのヘッダやフッタ含めて)
作るのがめんどくさいのでincludeさせたんですが、、 他にどんな良い方法があったんだろうと
気になってます。 smarty使えば、ヘッダやフッタをテンプレートとして効率よく管理できるとは思いますが…
>>497 ありがとうございます 調べてみます
なんだか特殊な機能みたいで難しそうですが、、 ありがとう
500 :
485 :2008/04/24(木) 15:39:29 ID:WKXs89Ye
>>498 あ、やっぱりsmartyですか…
一度勉強し始めて、基礎も出来てないのによしておこうと思ってやめました
またやってみようかなぁ。。 プロはみんな使ってるんでしょうか?>smarty
ob_*なんてデフォで使えるようになってるだろ
$url="hoge"; を<a href=hoge>hoge</a>にする楽なやりかたないでしょうか?
echo "<a href=\"$url\">$url</a>";が面倒ですと?
こういうときは間違った方向に走るもんじゃないのか。 $str = '$url="hoge"; がいっぱい出てくる $url="hoge"; だらけの文字列'; echo str_replace('$url="hoge";', '<a href=hoge>hoge</a>', $str);
俺は printf( "<a href=\"%s\">%s</a>", $url, $url ); の人
メソッドっていうのか echo linkfy($url); こうできませんかね。。。
jibunndekannsuuwotukurebaiijannka
メソッドは知ってるけど関数は知らないのか?
ということはVBの人か。
なんだこの流れ・・・
素質ある技術者の技術的な考察とかJP1よりは、のどかでいいよ。
514 :
nobodyさん :2008/04/24(木) 20:18:10 ID:1f8tGK11
516 :
nobodyさん :2008/04/24(木) 21:15:56 ID:mjxa+9jc
本当にくだらない質問で申し訳ございません。 リンク先のa.phpに文法エラーが存在する場合、IE6:500エラー Firefox:syntax error が 表示されます。 上記の場合、IEでsyntax errorを出現させる設定等あるのでしょうか? どなたかご教示くださいませ。
IE側の設定だった気がす
メニューの [ツール] - [オプション] [詳細設定]タブ ブラウズ カテゴリの HTTP エラー メッセージを簡易表示する のチェックを外す これIE6ね。IE7はワカンネ
519 :
516 :2008/04/24(木) 21:35:25 ID:mjxa+9jc
>>517-518 IE6です。
>>518 の設定方法を試してみたところ syntax error が表示されました。
本当にありがとうございました。
どういたしまして。
JP1って流行っているの? 何なの、このJP1、JP1ってレス?
JP1を売り込む営業さんが数字伸ばすためにここで宣伝してるんだろ 営業へただからここで宣伝してるんだろ
525 :
nobodyさん :2008/04/25(金) 15:18:13 ID:ETeE5V7l
PHPからcronにジョブを足したり消したりできませんか?
>526が何を懸念してるのか知らないが、system使えば出来るんじゃ? やったことねーけど
phpでもperlでも、良いんですが、 フリーの掲示板のcgiを探しています。 条件は 1.英語の掲示板であること。 2.投稿時にCAPTCHA認証すること。 です。 知ってましたら、教えてください。
>>529 kentにcaptchaがついてた
日本語は自分で英語にすりゃできる
大文字JPはゆうメイトを思い出すからやめれくれ
とりあえずPHPエディタというエディタのスタンドアローン版でも使ってみたら?
あれは使えん
Emacs使ってるけど、ヒアドキュメントがちと書きにくい。
FlashDevelopは意外と快適。
JP1、JP1ってもういいよ。 確かに、一流のソフトであることは間違いないし、 色々な公共機関、金融システムで使われているし、 そんなことは周知の事実だと思うよ。
>>537 ってか、そういうレスしているのが逆に宣伝になっていると思うんだが・・・
>>538 537はJP1JP1ってうるさい奴だろ
批判するような感じで宣伝してるんだ
PHPからうまくメールが送れません。
というか、maillogをみると、Fromが変わらないので、localhost.localhostからメールが飛んでしまい
受信先に拒否されてる感じです。
もともと、ZendFramwork使っていたのですが、問題を特定するために
mail("
[email protected] ",'test','body','From:
[email protected] ' . "\r\n");
という最小限のコードで試しました。
php.iniのsendmail_from=なんかもいじってみましたが、Fromがlocalhost.localhostになってしまいます。
他になんか送らなきゃいけないheaderとかあるのでしょうか?
営業成績上げないと夏ボが危ういんじゃね?w
542 :
nobodyさん :2008/04/26(土) 13:20:52 ID:ZONOtLDh
>>540 そういうのは環境依存の可能性が高いんだから、環境を書くべき。
あと、騙られる前にあげとけ。
>>544 お前に、そんな偉そうにレスされる覚えはない。
>>545 質問者なのに、随分と偉そうですね。
そういう人には、誰も答えないと思いますよ。
547 :
nobodyさん :2008/04/26(土) 16:46:11 ID:eenghTEY
簡易的なウェブメールプログラムを作っています。
mb_send_mail でメールを送信する際に
あて先を
山田 <
[email protected] >
など使いたいのですが、
日本語や任意の文字列をアバウトに許可すると
セキュリティ的に怖いと感じます。
mb_send_mail のあて先部分は
この文字列を制限・エスケープかけておけばOKという
基準はあるでしょうか?
またお勧めの方法がありましたらお願いします。
>>547 入力文字のエスケープに関してのみならば
"メールヘッダーインジェクション"で検索すると
詳しいページが出てくる。
でも、その対策だけでは不充分。
掲示板で、htmlspecialcharsだけ使っても、大量の投稿であっという間に
荒らされるのと同じ。
一定時間内の多重投稿を防いだり、送信者のIPをメールの本文に記録したり
宛先がユーザーから入力可能な場合は、かなり対策が面倒。
ここでメールヘッダーに関して質問しているレベルで
メールの宛先をユーザーが入力可能なウェブメールなんてやると、
確実にメールサーバーがブラックリストに載る。
ググレば不具合があるmb_send_mailを何故貴様は使ってるのだ
550 :
nobodyさん :2008/04/26(土) 18:08:34 ID:TgkCKAum
サーバー部門からロードアベレージの原因はディスクI/Oが原因みたいだけど プログラム側で何とか軽減できないかって、相談をうけているんだすけど 出来るだけディスクへの負荷を減らす為のプログラムの設計だったり そんな素敵なノウハウをまとめているサイトてありませんかね
ググレカス
ククレカレー
クレクレカレー
554 :
nobodyさん :2008/04/26(土) 18:21:54 ID:iM9ZNRfW
コンパイル済みプログラム atract (バイナリ)をPHPから呼んで 動かしたいと思い、シェルスクリプトatr.sh #!/bin/bash /dir/atract を用意して、index.php中で <?php system("./attract", $ret); ?> として動かそうとしましたが、$ret=127が返ってくるのみで、 attract自体は動きませんでした。 もちろん、シェルで./atr.shと打つと atract が動きます。 どうしてphpから呼んだときだけ動かないのでしょうか? 環境はRed Hat Enterprise Linux v5、Apache2.2.3、php4.3.9(cgi)です。
場所は?
556 :
nobodyさん :2008/04/26(土) 18:39:38 ID:iM9ZNRfW
場所は/public_html/atract/にindex.phpとatr.shがあります。
557 :
nobodyさん :2008/04/26(土) 18:49:40 ID:uk8GT5CY
質問です。 PHPのオブジェクト指向を勉強できる書籍で、オススメなのありますか? ご教示ください。
"シェル本体 シェルファイル"
559 :
nobodyさん :2008/04/26(土) 19:09:33 ID:iM9ZNRfW
>>558 system("/bin/bash /dir/atr.sh", $ret);
ともしてみましたが、動きませんでした。
561 :
nobodyさん :2008/04/26(土) 19:30:51 ID:uk8GT5CY
>>560 ありがとうございます。
もう少し丁寧に解説しているものが欲しいです・・・
563 :
nobodyさん :2008/04/26(土) 20:19:06 ID:uk8GT5CY
常駐します。今日からよろしくお願いします。
PHPのオブジェクト指向とか基本がズレてる オブジェクト指向を学んでPHPに取り入れろ
>>564 オブジェクト指向を覚えることが偉いとでも(笑)
Java禁止
567 :
547 :2008/04/26(土) 22:58:04 ID:???
>>548 サンクスコ
>>549 ソースきぼんぬ
不具合って脆弱性でしょうか、
ちなみに現最新バージョンのPHPでも直ってないのでしょうか?
>>567 興味があるんなら自分で調べろよ
有名なんだからググればすぐみつかるし、プログラム書く人間なら知らないのが疑問
569 :
nobodyさん :2008/04/26(土) 23:54:09 ID:EXulrG+H
php3ってクラス使える?
571 :
nobodyさん :2008/04/27(日) 00:19:21 ID:TNTz3zy3
Zend Frameworkをちょっと勉強しているんだけど、 フレームワークって簡単なものは作れるけど、 結局、サイトによって独自関数やクラスを多用しなきゃいけないから わざわざフレームワークにする意味無いよね? 単に、「他者と作業する上で便利」なだけであって、 開発者が自分だけの場合は、気にしなくて良いのかな?
>>571 フレームワークにたよるのって気持ち悪くてやりたくない
自分だけのネイティブなコードだけ残したいから
>>571 一人で構築してるけど使ったほうが楽で助かる。抽象的に考えられるのがいい。
合わないと感じたなら無理に使わなくてもいいんじゃない?仕事ならともかく趣味の範疇なんだし。
一度Ethna使ってみたことがあるけど、 自作クラスの関数内から(Ethnaから呼ばれることを前提とした)既存クラスにアクセスするところで嫌気がさしてやめた。 その手の問題を起こさない(もしくは処理できる)スキルがあれば一人FWもいいかも。
中堅規模のサイトをいくつか製作したら 自然とFWが出来上がった漏れは天才。
JavaよりPHPやJavaScriptのオブジェクト指向の方が優れている件について。 PHPのバージョンが古い鯖に移植とかする際、関数毎にバージョン確認が面倒です。 ソース内の関数をリストアップして、バージョン○○以降で動きます、 みたいなチェック関数とかありませんか。 自分で作ればいいんだろうけど関数が数千もあるとさすがに面倒。 PHPマニュアルから自動取得するような技術力はありません。
自分で作れ
PHP4 以降で、関数の存在チェックだけでいいのなら、 token_get_all と function_exists で比較的簡単に作れんじゃないの。 まぁ関数名は、変数名と同じくシンボルとしてしかパースされなかったと思うから、判定が若干面倒ではあるけど。
579 :
540 :2008/04/27(日) 05:00:08 ID:pXevviUZ
>>544 遅レスですがサンクス
2chブラウザ使ってるんですけど、一回下げるとそれ覚えてるみたいで思いがけず下げちゃうことがあるんですよね。
すいません。
ちなみに
>>545 は別人です。
別サーバーで問題なく遅れてたんですけど、新しいサーバーかりてそこに入れてみたら
まったくFromを変えられなくなったんですよ。
ちなみにCentOS5+qmail+PHP5.1.6です。
サーバーの設定の問題かと思ってサーバー借りてるところのサポートに連絡取ってみたら
「PHPの問題だ、こんなことで連絡してくんな。ググれカス!」
って怒られて、いろいろ調べてみたんですけど、にっちもさっちも行かなくて。
やっぱりPHPの問題なのですか?
PHPの問題だ、こんなことで連絡してくんな。ググれカス!
sendmail_path か QMAILの設定の問題なのかなぁ。 とりあえずQMAILのエラーログも見てみたら?
583 :
nobodyさん :2008/04/27(日) 13:01:00 ID:EBk2n3bR
PHP開発5年ほどやってるが、あんまり他と交流ないのでチョット疑問なのですが、 $_SESSIONって、どれくらいの値を入れてます? $_SESSION['user_id'] だけ入れて、各処理毎にDB接続は鯖コスト高いだろうし、 俺はログイン処理後DBからパスワード以外(user_id, user_name, user_mail)は入れてます。 変数でいうと10個分くらいまで とか勝手な基準でやってたんですが、 $_SESSION['html'] とかで、膨大なデータ(文字列、配列)を入れたりしてる人もいますか?
はい?何のために入れんの?
セッションセーブパスにDBから受け取ったユーザー情報を 一度全部書き出して、処理後はガーベッジコレクションを待ったり、 あるいは自分で消したりする処理を書き加えたりしたいですか。
586 :
547 :2008/04/27(日) 13:18:03 ID:???
>>568 ぐぐっても現状で改善されていないmb_send_mailの
問題なんて見つからないから聞いてるんだけど。
まさか昔の脆弱性やバグの話持ってきて、
不具合が、、、とか言ってるんじゃないよね?
587 :
583 :2008/04/27(日) 13:22:27 ID:EBk2n3bR
あっー言葉足らずで非常に申し訳ないです。 $_SESSION['html']は喩えでして、 MySQLでユーザ情報テーブルがあり、そこに繋がるTEXT長のフィールドがあった場合でも、 通常DB接続は鯖コスト的に高いし、ソースコード的にも$_SESSION参照よりは冗長になるし セッションに格納したほうが見通しは良いのかなと思いました。 ※今は$_SESSION['message_id']と数値で保存して、表示の際にDB接続という処理を作る場合が多いです セッションファイル読み込む際に鯖メモリ使うわけだし、ケースバイケースですよね。 すんませんでした。
>>586 昔からバグなんて無いよ。
文字化けしてる奴はini設定間違ってるだけだろ。
>>587 前にいた会社はめちゃくちゃセッションに入れまくってた。
検索結果を全部セッションに入れて、それをページングして表示してたりした。
ログイン時にユーザ情報もほぼ丸ごとセッションに入れてたなあ。
まあそれほど規模が大きいわけでもなかったから別に問題はでなかったけど。
PHPがどこで動いてると思っているんだ?
PHPは医療業界を救えますか?
>>594 ∧ ∧ ┌─────────
( ´ー`) < シラネーヨ
\ < └───/|────
\.\______//
\ /
∪∪ ̄∪∪
>>593 ですよね。めんどいけどローカルで動くようprototype使ってjavascriptで書き直します
明日からインターネットが使えなくなるので 今入れといたほうが良いものってありますか? ちなみにfirefox2.0、php5.25、apache2.61,DWは入れてます
600 :
nobodyさん :2008/04/28(月) 02:38:25 ID:XDsHBgsJ
質問させていただきます。よろしくお願いします。
別ドメインのphpからjavascritpを出力させたいのですが、
<iframe marginwidth="0" marginheight="0"
type="text/javascript"
src="
http://example.com/example.php "
>
</iframe>
とすると、Javascriptがそのままテキストとして表示されてしまいます。
後で部分的に更新させたいのでフレームを使いたいのですが、
このような使い方は出来ないのでしょうか?
ほとんどスレ違いかと思いますがよろしくお願いします。
動的にスクリプトを読み込ませたいなら、scriptをcreateElement して、documentにaddChildするのが定石だと思う。 javascript 動的ロード とか Dynamic Script でぐぐって見て。 JSAN とかも参考になるかも。 詳しくは Javascriptスレでやったほうがいいと思う。
PHPでサイトを作っているのですが、携帯に対応しようと思っています。 そこでサイト閲覧の経過時間を表示したいのですが、 方法がわかりません。 携帯ではJavaScript使えないみたいなので。 スレ違いだとは承知していますがよろしくお願いいたします。
>>604 すみません。説明不足でした。
サイト閲覧時間をデジタル時計みたいに1秒区切りで
随時表示していきたいのです。
それともそれがSESSIONでできるのでしょうか?
無知で申し訳ありません
flashとか使うしかないんじゃないの?
>>605 SESSION使えば出来るでしょ。
別にSESSIONじゃなくても、初期時間を常に引き回せば良いのでは?
ページ表示中もリアルタイムでカウントアップしたいならFLASHも一緒に使いなはれ
>>606 flashを使うという手がありましたね。
参考になりました。
ありがとうございました。
>>607 ページ表示中もリアルタイムでカウントアップしていきたかったのです。
検討していただきありがとうございました
610 :
nobodyさん :2008/04/28(月) 09:21:50 ID:eHo0WZE0
認証しないと見れないページを作ってます。 ログインフォームにIDとパスを入力して、正しかったら$_SESSION['login']に1を格納してます。 認証しないと見れないページで$_SESSION['login']に1が入ってるか確認して、入ってたらページを見せます これはセキュリティ的にどうなんでしょうか? 改善するとしたらどのようにしたらよろしいでしょうか?
>>610 色々な意見は有るだろうけど、少しでもシビアにやる必要が有るのなら
私なら、少なくとも一緒にIPとUAぐらいは格納しておいて常時チェックします。
と、セッションの有効期限を短めに。
ま、セッションハイジャックされても大して困らないようなサービスだったら、
login=1だけでもいいと思います。
612 :
nobodyさん :2008/04/28(月) 11:58:35 ID:U6D2eVEj
VirtualHostを使って80とは別のポートで受けているのですが $_SERVER['SERVER_PORT']の値がおかしい時があります ポートを変えているのに、なぜか80が入っています URIを長くしたりすると、正しいポートの番号が入っていたりします その規則性が分からないのですが、 この問題についてご存じの方がいたら教えてください SetEnvを使って、代替となる環境変数を設定するか、 ホストを自分でパースすれば、 ポート番号を知りたいという要求は満たせるのですが、 奇妙な動作なので気になります。
613 :
nobodyさん :2008/04/28(月) 16:35:05 ID:ASacEEs/
PHPでSOAP使ってるんですが、Digest認証のページにアクセスするいい方法ってあります? Basic認証のページへはSoapClientのコンストラクタに引数渡してアクセス出来るんだけど、 Digest認証のところでひっかかって先に進めないのです。
echo '<table width="'.$width.'"'; echo ( $titleHeight )? ' height="'.($aaa-$bbb).'"':' height="'.($aaa-$bbb).'"'; プログラムが長すぎるのでエラーが出る行だけの書き込みです。 $titleHeight っていう値がないので削除したいのですが echo '<table width="'.$width.'"' height="'.($aaa-$bbb).'"':' height="'.($aaa-$bbb).'"'; とするとエラーでPHPが正常に処理してくれません。 どこがおかしいのでしょうか??
echo '<table width="' . $width . '"' height="' . ($aaa-$bbb) . '"' : ' height="' . ($aaa-$bbb) . '"';
三項演算子だお echo '<table width="'.$width.'" height="'.($aaa-$bbb).'"';
しかし糞汚ねえゴミソースだな
ヒント:太いにあって大にないものが足りない。
>>619 見本出してやるから元のコード出せ
つうかechoでhtml全部吐くな
ちゃんとviewと分離しろ
viewと分離ってどういう意味? 別ファイルにしろってこと?
太を 大と 、 に分けるってこと
<html> <head> </head> <body> <table width="<?php echo $width; ?>" height="<?php echo $aaa-$bbb; ?>"> </body> </html> こういうことだろ
埋め込み方式で<?php echo $hoge; ?>ってのを短縮するやつあったよな <?= $hoge ?>だっけ?
>>624 それだと掲示板みたいに増減する複数個のテーブルを、
内容を変えながら表示すること出来ないんじゃね。
>>624 期待して損した
これはヒドイw
ブログのテンプレートとか見て勉強してこいクズ
>>626 複数個のテーブルを表示したいなら
<?php foreach(ほげほげ){ ?>
<table width="<?php echo $width; ?>" height="<?php echo $aaa-$bbb; ?>">
内容
</table>
<?php } ?>
すればいいんじゃないの?
630 :
621 :2008/04/28(月) 22:11:27 ID:???
>>627 ブログのテンプレートが見本だなんて頭大丈夫か?
あんなスパゲティ糞コードいらね
お前みたいのはPerlでもやってろ
一番いいのはCakePHPのソースを見ること
命名規則やコーディングが若干気に入らないが勉強になるぞ
>>630 デザインと分離するんじゃなかったのか?
だいじょうぶか?あたま
632 :
nobodyさん :2008/04/28(月) 22:40:59 ID:ofPhinBe
会員制サイトで 仮登録→登録という流れのとき、 $reg_key = sha1(uniqid(rand(), true)); のように、メールを受信した人にしかわからないトークンを作り、 認証のアドレス.php?email=xxx®_key=yyy や、 認証のアドレス.php?id=xxx®_key=yyy としている場合が多いのですが、 パラメータとして渡すのは、reg_keyだけではだめなのでしょうか? uniqidが入っているので、問題ないかと思うのですが・・・ 説明が足りないところがあるかもしれませんが、 理解していただける方がいましたら、アドバイスお願いします。
それだけで賄えるならそれでいいじゃん
634 :
nobodyさん :2008/04/29(火) 00:08:00 ID:AbJjjUx5
以前php.iniについて質問したものです。 教えて頂いた方法で数週間試してみましたが、 全くエラーが出来なくなりました。 お礼が遅くなりましたが、どうもありがとうございました。 めちゃ助かりました!
635 :
597 :2008/04/29(火) 00:15:02 ID:UrbOD/FY
だれかおねがいします
coLinux
何ヶ月もつなげられないような僻地にでもいくのか? とりあえずマニュアルをオフラインでも見れるようにダウンロードしといたほうがいいんじゃね? あとDW使ってPHP書いてるんならそれでもいいけどEclipseとかのIDE入れたり あとはMySQLなりPostgreSQLなりDBもちゃんと入ってるか? phpMyAdminやphpPgAdminなどのWebから使えるDBの管理者ツールとか 必要ならDBのマニュアルなんかもダウンロードしといたほうがいい メール開発するならメールサーバも必要 XAMPPなら全部入ってるが自力で各個いれて設定できるなら余裕だろ
>>515 レス遅くなり申し訳ありません。
ちゃんとサイト内にあったのですね
ありがとうございます
>>613 コンストラクタの $options に
'authentication' => SOAP_AUTHENTICATION_DIGEST
を追加してみるとどうでしょうか。
ドキュメント化されてないので確証はないですが。
>>632 reg_key が一意なら使えます。
見直す点は uniqid() も sha1() も返り値が一意的でない事。
642 :
632 :2008/04/29(火) 08:57:25 ID:QM2GtqNT
>>633 >>641 回答ありがとうございます!
>>見直す点は uniqid() も sha1() も返り値が一意的でない事。
そうですか・・・uniqidだけではだめなのですね。
一応、データベース側でreg_keyをユニークに指定してあるので、それほど問題はないかもしれませんが、
やはりエラーがでてしまうのは避けたいです。
お手数ですが、
もしよかったら、値が一意になる具体例(こうすれば一意になるというもの)を教えていただけないでしょうか?
よろしくお願いします。
rand()だけでなくユーザIDも一緒に
644 :
641 :2008/04/29(火) 12:53:49 ID:???
>>642 データベースに UNIQUE KEY 制約が指定してあるなら sha1(uniqid()) で問題ないですよ。
一意かどうかは集約側に問い合わせるまで保証できませんので、
適当に生成→クエリが成功するまでトライするぐらいしか思い付きません。
データベース側で生成できるならそちらで。
MySQL の場合は UUID() とストアドプロシージャで出来そうな気もします。
詳しくないのでやり方はDB板にお任せします。
UNIX/Linux系OS上において、PHPでの開発実務経験者 っていう求人に応募したいのですが、これはlinuxが入ってるパソコンでコードを書いて開発してる人だけってことですか? windowsでコードかいてlinuxにアップロードして開発するのはこの枠には含まれないのでしょうか?
WINEつかって開発すればいいんだよ。
>>645 こんなところで聞いている時点で何だかな〜って気がするけど、
応募先に質問すればすぐに分かることじゃない
質問先が明確にあるなら、まず聞く
以上
だからここで聞いてるだろ?
募集先ってことじゃないの? ここで聞いて 「そっか!大丈夫なんだ!るんる〜ん♪」 と応募しても、 先方が却下だったら却下なわけだしね
あんなマゾいlinuxだけで完結して開発してる人なんているわけ?
UNIX/Linux系OS上において(動く)、PHPでの開発実務経験者 って意味だろw
>>645 は
知るかボケ、と言われるのが好きなマゾ。
653 :
初心者 :2008/04/29(火) 17:09:19 ID:o9+cl7aK
質問です。 aaaa aaab aaac . . . zzzy zzzz とこのようにaからzまでの4文字の数字を全種類表示させるにはどうしたらいいでしょうか?
for($i='aaaa'; $i<='zzzz'; $i++){ echo $i."\n"; }
こんなのもね。 <?php foreach(range(a,z) as $str1){ foreach(range(a,z) as $str2){ foreach(range(a,z) as $str3){ foreach(range(a,z) as $str4){ print "{$str1}{$str2}{$str3}{$str4}<br>\n"; } } } } ?>
656 :
初心者 :2008/04/29(火) 17:24:33 ID:o9+cl7aK
初心者のくせに何で否定してるんだよw
>>656 試しもしねーアタマの硬いクズは二度と来るな
661 :
nobodyさん :2008/04/29(火) 18:06:48 ID:FcuzQKHA
index.html <html><body> <form action="index2.php" method="post"> <input type="text" name="keyword" size="40"> <input type="submit" value="送信"> </form> </body></html> index2.php <html><body> <?php echo $keyword ?> </body></html> こういった単純なプログラムなのですが、index2.phpにて入力した文字が表示されません。 本来ならばindex.htmlで入力した文字が変数$keywordに代入されて、index2.phpで表示されるはずなのですが・・・。 何が原因なのでしょうか?
まだ、覚え始めたばかりで基本を勉強している方なんだろうけど、 そんなコードが生み出せる勉強方法があるのかと不思議に思う。
665 :
nobodyさん :2008/04/29(火) 18:24:39 ID:TMlzPliF
wordpressを導入しようと思い、phpにも取り組み始めたのですが、phpファイル内に直接日本語を記入すると出力時に文字化けしてしまいます。 例えば <h1><a href="<?php echo get_option('home'); ?>/"><?php bloginfo('name'); ?></a></h1> だと正常に表示されますが <h1><a href="<?php echo get_option('home'); ?>/">テスト</a></h1> だと化けてしまいます。 charsetはutf-8にしています。(wordpressもMySQLも統一してます) 対処法がありましたらアドバイスお願いします。
>>665 エディタはちゃんと内部文字コードがunicodeのやつをつかってるよな?
669 :
664 :2008/04/29(火) 18:31:56 ID:???
671 :
665 :2008/04/29(火) 18:53:49 ID:???
>>665 どうもそういう問題だったようです。
DreamWeaverで書いていたのですが、sakuraでUTF-8で開きなおして保存したら表示できました。
ありがとうございました。
Dreamweaverも文字コード指定できると思うんだが
>>667 $i<='zzzz' この書き方はダメかもしれないね
文字列に++するのは問題ないんだけど
>>671 サクラとかterapadは内部文字コードsjisだから〜←とかの文字が化けるぞ
いまからでもエディタは秀丸とかemediterとかunicodeのやつを使ったほうが良い
>>661 って要はPOSTで値を変数に格納してないのが間違いなんだよな。
register_globalsがデフォルトでonだった危険極まりない頃なら間違いじゃないんだけど php3を勉強しかかってる人を止められてよかったね、と
676 :
665 :2008/04/29(火) 20:36:21 ID:???
>>672 指定していたつもりだったのですが、「エンコードを指定していない〜」という欄にチェックが入っていたためか、コピペして使っていたファイルに適用されていなかったようです。
ただ、プロパティで変更できることに気づきました。
>>671 助言ありがとうございます。
ちょっとした変更は秀丸を使うことにします。
>>672 >$i<='zzzz' この書き方はダメかもしれないね
だめじゃないって。試してからレスしようよね。
だめだろう。おまえ本当に試してから書いてるのか?
>>654 を試したら止まらないのだがどう修正すればいい?
ネタをどこまでひっぱるんだい
for($i='aaaa'; $i!='aaaaa'; $i++){ echo $i."\n"; }
682 :
nobodyさん :2008/04/29(火) 23:08:02 ID:8TiTMo6p
PHPプログラムに限った話ではないかもしれないのですが、PHPで開発してる のでここで質問させてください。 if($ext != "jpg" && $ext != "jpeg" && $ext != "gif" && $ext != "png") { ... } 上記のif文の中身を美しく書き換えたいのですが、($ext !=の繰り返しをなくしたい) どのようにすればいいか分かりません。教えてください。お願いします。
if(!in_array($ext, array('jpg', 'jpeg', 'gif', 'png'))
$ary= array('jpg', 'jpeg', 'gif', 'png'); if(!in_array($ext,$ary)
685 :
682 :2008/04/29(火) 23:40:33 ID:???
>>683 ,684
ありがとう。配列にしないといけないのか。
今環境ないので明日やってみます。ありがとうございました。
配列にしないといけないわけではないけど、こっちのほうがいい
MYSQLでデータベースを構築しようと考えてます。 まず何から始めればいいのか分かりません。 PHPの知識はもちろんあります
まずMysqlのホームページからプログラムをダウンロードしてきてください
>>688 インストールしました。
PHPMYADMINも導入しました。
はじめてこのスレを覗いたのだが、ここの住人は親切で向上心があって素晴らしい。 PHPやってて良かったと思った。
>>689 よし、つぎはphpmyadminからデータベースをつくれ
692 :
nobodyさん :2008/04/30(水) 00:55:18 ID:+RqiWmec
ちょっとスレチかもしれませんがお願いします。 URLを開きたいのですがphpのfopenと同じ関数はperlにありますか?
694 :
nobodyさん :2008/04/30(水) 01:11:11 ID:+RqiWmec
>>693 はい。そこ見ましたがURLを開く関数が載ってなかったのです。
phpのfopenと同じ関数はperlにありますか と URLを開く はイコールじゃないんだが
URLを開くことができるphpのfopenと同じ関数はperlにありますか?
「URLを開くことができるphpのfopen」 これ理解できませんか?
やっと理解できたみたいですね(笑) PHPのfopenはURLを開けるんですよ。 はいはい。初心者は消えた消えた
ここはphpもロクにできない集まりかよw perlもわかんないやつ多すぎてフイタ
なんでperlスレで聞かないんだ? それにURL開くならfile_get_contentsとかcurlとか使うだろ
Perlもわかんないって別物だから当然だろ
706 :
nobodyさん :2008/04/30(水) 07:55:55 ID:UIHB9PA8
っていうか、 「URLを開く」って表現がおかしいんじゃないか? 「URLを読み込む」の方がいいような気がする・・。
「URLを読み込む」ってなんだよ ってレスが3つは付くね
「URLを読み込む」ってなんだよ
「URLを読み込む」ってなんだよ
>>692 Perlならソケット使うしか俺は知らん。
「URLを読み込む」ってなんだよ
完全論破w このスレはこの程度かwww
職場の花でしかない女性PGは黙ってろwww
URLをfopenで開くやつは素人
じゃあ何で開くんですか
ケイコの夢は夜ひらく
ケイコの股も夜ひらく
718 :
nobodyさん :2008/04/30(水) 15:05:21 ID:C5WTvXyu
すみませんちょっと質問です。 PHP×MYSQLで検索システムを作ってるんですけど、外部のページからもフォームから 検索したいと要望がありました。MYSQLのポート開けて、外部から接続するのは条件的に 厳しいです。何かいい方法ありませんでしょうか?API的なものを用意できれば良いのでしょうけど。
>>718 フォームから検索したいのになぜ外部にポート解放する必要があるのか逆に質問したい
>>718 アプリケーション層(PHP)ですべて解決しようとせずとも、
TCP/IP や VPN で解決してはいかがでしょう?
統合型 Firewall などを導入していれば、
パケットを転送してあげればよいと思います
ネットワーク板あたりで該当スレを探してみては?
レスありがとうございます。
>>719 検索対象のDBは、Webサイトの置いてあるサーバーと違うところにあるんですね。
DBの置いてあるサーバーに、検索キーワードを投げて、XMLやJSONで返り値を
もらうような仕組みを書けばいいのかなーと、漠然と考えておりました。
>>720 なるほどですね、そうすればセキュリティを保ちながら通信できそうですね。
パフォーマンスなども考えつつ、再度検討してみます。ありがとうございます。
722 :
nobodyさん :2008/04/30(水) 16:01:14 ID:itZeUQTn
携帯サイトで、php_value session.use_trans_sid の機能使ってURLにPHPSESSIDを自動でくっつけてるんだけど、 この値が毎回ころころ変わるんだよ。 家鯖環境だと大丈夫なんだけど、レンサバ(ファーストサーバ)にUPしたとたんに変化する。 なにが原因かおしえて。
726 :
松田 ◆QkRJTXcpFI :2008/04/30(水) 16:48:57 ID:k+045YDQ
HTMLとPHPの初心者です。
すみませんが教えてください。
(index.phpの記述)
<form action="hoge.php" method="post">
<input type="text" name="MMM" size="40"value="" tabindex=1>
<input type="submit" value="送信"tabindex=2>
</form>
hoge.phpから、またindex.phpにリンクで帰ってきた時に、ぐーぐるのTOPのようにすぐに文字を入力できるようにカーソルを入れたいのです。
現状では、index.phpが開いたら、カーソルは何処にもなくて、TABキーを押すと、テキストBOX内にカーソルが現れます(当然なんですよね?)
OS WindowsXP
バージョン PHP-5.2.4(セーフモード)
サーバー会社
http://atpages.jp/ 入力者が最初にTABキーを1回押せば済む話ではあるのですが、出来るのならやりたいです。よろしくお願いします。
>>726 <ぼdy 音ロアd=”どくめんt。げtElementById(’ほげ’)。ふぉくs()”>
>>726 ここでは初心者と自ら名乗る行為は嫌われるのでご注意を
本題ですがそれはJavaScriptを使ってやるのでPHPは関係ありません
例えばこのようにします
<body onload="document.foo.MMM.focus()">
<form name="foo" action="hoge.php" method="post">
<input type="text" name="MMM" size="40" value="" tablindex=1>
<input type="submit" value="送信"tabindex=2>
</form>
次からはJavaScriptスレでどうぞ
730 :
松田 ◆QkRJTXcpFI :2008/04/30(水) 17:20:52 ID:k+045YDQ
731 :
nobodyさん :2008/04/30(水) 18:01:08 ID:8kfJ8k7x
$in{'mode'}="ins"; 恥ずかしながらこういう書き方初めて見たんだけど、 これって何をしてるんですか?配列に代入?
>>731 #!/usr/bin/perl
require './cgi-lib.pl';
ReadParse(*in);
そのスクリプトにこんな記載はないですか。
735 :
731 :2008/04/30(水) 18:18:04 ID:ln6uHZdx
ありがとう!チェックしてみます。ハッシュかー
736 :
731 :2008/04/30(水) 18:26:36 ID:ln6uHZdx
>>735 いや、phpの掲示板スクリプトを読んでるんです。今までそんな書き方見たことなかったからハテナ?でした。
ん?ハッシュ?
>>736 Perlがその書き方で、PHPでも動くんよ
739 :
734 :2008/04/30(水) 18:41:28 ID:???
自分宛てだと思うので。
>>736 Perl だと
・配列=添字が数値。 $array[0] で要素を扱う。
・ハッシュ=連想配列。添字に文字列使える。$hash{'mode'} で要素を扱う。
なんですよ。$in{'mode'} は
>>734 な時代のおやくそく記法。たぶんオチは
>>732 。
ところで PHP では連想配列もひとくくりで「はいれつ」だと思う。
740 :
731 :2008/04/30(水) 18:42:24 ID:ln6uHZdx
へー、pealも動くんだ。全然知らなかった。。 733のリンクにヒントがあるんですよね。今携帯からだからリンク先読めないんだけど。。 戻ってチェックしてみます。ありがとうございました!
741 :
731 :2008/04/30(水) 18:48:39 ID:???
>>739 丁寧にありがとうございます。perlの記法なんですね。なるほど
PerlとJavaとCの記法がごっちゃになっててカオスなんだよなPHPは 俺はJavaユーザなんでもっぱらオブジェクト使ってるけど
743 :
__ :2008/04/30(水) 19:03:55 ID:???
画像投稿後の完了ページでF5を押すと同じ画像が投稿されてしまいます。 これを防ぐにはどうしたらいいでしょうか? headerで飛ばす以外でお願いします。 僕が考えたものとしては以下になります。 具体的にはどうすればいいかお教えください。m(_ _)m 投稿時にパラメータを埋め込み内部で照合→あわなければNG
二重投稿チェックすればいいじゃん
745 :
ぴよ :2008/04/30(水) 19:27:35 ID:LQbFwuBs
質問させていただきます。 ホームページをPHPにしてincludeで、ヘッダーやメニューを呼び出そうと思っています。 PHPで可能かどうなのか分からないのですが メニューのところを、CSSで、フレーム風にし、スクロールできるようにします。 通常のフレームでは、スクロールして、ある項目をクリックした場合 スクロールした状態が保たれますが、CSSのフレーム風では スクロールした状態が保たれません。 これをPHPでスクロールした状態を保つことはできますでしょうか? もしできるのならば、やり方、もしくは、参考サイトを教えていただけないでしょうか。 どのようなキーワードで検索すればいいのかも分かりません。 どうぞよろしくお願いいたします。
できません ていうかどう考えてもCSSでの擬似フレームの話でPHP関係ないでしょ
そういう見た目てきにどうこうしたいがHTMLじゃ無理そうってのは たいていJavaScriptなんだよ PHPは見た目とかUIの機能とかに関しては全く無関係で そういうのはHTMLとかJavaScriptでどうにかするしかない PHPは言ってみれば単にHTMLのソースを条件等によって処理して吐くだけ
つflash
749 :
747 :2008/04/30(水) 19:55:03 ID:???
>>748 そういえばそんなのもあったな
すっかり忘れてたぜ
750 :
ぴよ :2008/04/30(水) 19:56:47 ID:???
てっきりPHPでできると思ってました。 すみませんでした。 JavaScriptで質問してみます。 flashは、ソフトがないのと、勉強に時間がかかりそうなので・・ どうもありがとうございました。
flashは無料ソフトでも作れます
752 :
鯖術 :2008/04/30(水) 19:59:56 ID:FX5sdMAt
xrea.comのs336鯖を借りています。 PHPで、パーミッションを666にしてファイルを作成するスクリプトは動くのですが、mkdirでtestというディレクトリを作成することまでは可能なのですが、パーミッションを777にしようと chmod("test",0777); を指定するとエラーがでます。教えて下さい
xreaはsafemodeかかってるんでcgiとして動作させてみ phpの1行目に #!/usr/local/bin/php っていれて拡張子をcgiに変えてパーミッションは755で動作させる
754 :
nobodyさん :2008/04/30(水) 20:08:06 ID:itZeUQTn
>携帯サイトで、php_value session.use_trans_sid の機能使ってURLにPHPSESSIDを自動でくっつけてるんだけど、 >この値が毎回ころころ変わるんだよ。 >家鯖環境だと大丈夫なんだけど、レンサバ(ファーストサーバ)にUPしたとたんに変化する。 >なにが原因かおしえて。 すまん。情報が足らなかったようだ。 PHPバージョン云々より設定とか問題と勝手に思い込んでた。 問題の起きているレンサバの環境はPHP5.2.5 DSO版 問題が起きなかった頃のレンサバ環境はPHP4.4.8 DSO版 ちなみにソースは.htaccessも含め全部一緒。(php_value session.use_trans_sid 1) 単純な実験ページを用意してやってみても同様。 なんでこんなことがおこるんだ??
>>752 パーミッション777はsuexecのせいだと思う
鯖の仕様だからそれ以外にする
757 :
nobodyさん :2008/04/30(水) 20:35:05 ID:itZeUQTn
>>756 え?2chってこういう風に書くのが良いって聞いたんだけど?
あれは嘘?やっぱ普通に書いた方が良かったの?
で、なにか知ってるの?
ネタにはしったのか残念 ID:itZeUQTnはスルーしますね
759 :
nobodyさん :2008/04/30(水) 20:42:54 ID:itZeUQTn
>>758 やっぱ2chってキモチワルイネ。
そんじゃ、普通の言葉で普通の場所で聞くことにするよ。
知ってるなら教えてくれればいいし知らなければ無視すればいいだけだろ?
「おまえが気に入らないから教えてやらない」的空気で悦に浸ってるのか?
程度が低いな。
はい次。
ID:itZeUQTn=ゆとり
762 :
nobodyさん :2008/04/30(水) 20:50:40 ID:itZeUQTn
ゆとりってwww 話には聞いていたが、会話が成立しなくなったら相手を「ゆとり」扱いってのは本当だったんだなw なにかコンプレックスでもあるのか?w
答えてもらえなかった途端煽りに走るとかゆとりの典型 ガキ向けのスレじゃないのでお帰り下さい 以下何事もなかったかのようにどうぞ
もうね、顔が真っ赤になってますよね
phpで乳首タブルクリックしたらエロサイト立ち上がる関数はありますか? また自作する場合どのような点を気をつければいいか教えてください。
766 :
nobodyさん :2008/04/30(水) 20:57:45 ID:itZeUQTn
答える気もないのに、上から仕切るなよ。 そっちこそ知らないなら最初から無視しろよ。 「まず気持ちよくしてもらわないと、僕おしえてあげないよ」ってか? ここあんたの所有か?勘違いもここまでくるとほんとに気持ち悪いな。 どこにでもいるんだなこういう人間って。
どっちが勘違いなんだか
2chだから何でもありとかどんだけゆとり脳なんだよ
人に物を聞くときは態度をわきまえるのは実社会でもネット社会でも同じ
スレのルールは
>>1 に明示されいるとおり
理解できるまで
>>1 を読み返したあと巣に帰れ
質問の態度を指摘された時点で、素直に謝って、質問しなおしてればよかったのに。 ・ 質問者として、態度をわきまえること。
このスレはこの程度か どうもありがとうございました
どこもこの程度ですよ こちらこそありがとうございました
773 :
鯖術 :2008/04/30(水) 21:43:18 ID:???
>>753 ありがとうございました。
次なのですが、ディレクトリをパーミッション737で作成して、FTPをログアウトしたら、再度ログインした際に、パーミッションが755に勝手になるのは、xreaだからですか?
分かる方お願いいたします
>>771 俺が最初に言った言葉なんだけどマネしないでくれる?
質問させていただきます。 【前提条件】 ・各種レンタルサーバでの動作を想定しているため、多くのサーバが 対応していると思われるPHP4での動作を想定 ・仕様の都合上、サーバの設定はいじらない (続く)
(続き) 【問題その1】 設定ファイルを以下の方法でプログラム上で作成するのですが、 あるサーバ(以後「相手サーバ」)で、このファイルが所有者nobodyとなり ffftpでのファイルのダウンロードや削除ができないようです。 [ソース] if(!file_exists([ファイルパス])){ //書き込む内容を定義 $writeStr = "〜〜〜〜〜〜"; //ファイルを作成し、パーミッションを変更 touch([ファイルパス]); chmod([ファイルパス],0666); //ファイルに書き込み $fp = fopen([ファイルパス],"w"); flock($fp,2); fwrite($fp,$writeStr); fclose($fp); } (続く)
(続き) ちなみに私がテストで使用しているロリポップのサーバ(以後「自サーバ」) では、ファイル所有者が「apache」になりffftpでのファイル操作も 問題なく行えます。 相手サーバは直接確認できていないので、詳細はわかりませんが、 おそらくnobodyにchmodの実行権限がないためかと思われます。 前提条件にあるように、サーバの設定をいじれないため、プログラムのみで これを動作可能にする方法があれば、教えていただきたく思います。 無理なようなら、空の設定ファイルをffftpでサーバに上げ属性変更を行う という対応を考えていますが、可能な限り自動で行いたいです。 (続く)
(続き) 【問題その2】 このプログラム、 ・利用者に動作しているのを意識させない ・ブラウザを閉じられても動作を終了しない という動作を行うようになっています。 現時点では以下のように実装してあります。 [execute.php] <?php System("php [実際の処理を行うPHPのパス] > /dev/null &"); ?> [HTMLファイル(該当箇所のみ抜粋)] <iframe src="execute.php" style="display: none;"> </iframe> こちらも自サーバでは動作を確認していますが、相手サーバでは動かないようです。 本来cronを使うべきなんでしょうが、これも前提条件のため、この方法で 実現しています。 何かよい解決策があれば教えていただけると幸いです。
処理を指定した行かラベルに飛ばしたいのですが、どうすればいいのでしょうか? 検索しても調べ方が悪いのかまったくヒットしませんでした。
781 :
780 :2008/04/30(水) 23:52:06 ID:???
文章だとわかりにくいですね。要は A地点 echo "A地点を通過" B地点 echo "B地点を通過" C地点 echo "B地点を通過" というプログラムで、A地点の中にC地点までジャンプさせる命令をしたいんです。
>>779 775〜778です。
すみません、見落としていました。
使用するサーバはLinuxだと思われますが、あちこちのレンタルサーバでの
動作を想定しているため、Webサーバ、PHPバージョンは不特定です。
(PHPファイル自体を配布して使用してもらうようになっているため)
可能な限り多くのサーバで動くようにしたいです。
テストに使っている自サーバはロリポップで契約したレンタルサーバです。
LinuxでWebサーバはApacheですが、バージョンはどこで見るのか……
PHPはver.4.4.6だそうです。
ただこの自サーバではうまく動作していて、問題は相手サーバなのですが、
相手サーバのほうの環境は把握できていません。
これで回答お願いできないでしょうか?
783 :
nobodyさん :2008/05/01(木) 00:20:11 ID:lhcqDE2k
素人ですがどなたか教えて下さい。 フォーム(TEXTAREA)を入力し、確認ボタンを押すと確認画面に行き、戻るボタンを押すと 元の入力画面に戻るようにしています。入力画面に戻ったとき、直前に入力した内容を表示 させたいので、最初は<INPUT type='button' value=' 戻る ' onclick='history.back()'> で戻らせていました。しかし、その後セッション管理を追加したところ、入力内容が保持さ れなくなってしまいました。 そこで素人ながら色々考えて、hiddenでTEXTAREAの内容を受け渡してみたのですが、入力内容 に改行があると画面がおかしくなります。(戻るボタンや改行以降の内容がずれて表示されます。) しかも、受け渡された内容は改行よりも前の文字しか入っていません。 ■確認画面 $textdata = htmlspecialchars(stripcslashes($textdata)); $body .= "<FORM action='$PHP_SELF' method='POST' enctype='multipart/form-data'> <INPUT type='submit' onSubmit='FldChk()' value=' 戻る '> <INPUT type='hidden' name='textdata' value=$textdata> </FORM>"; 入力内容に改行が入っていると、これを表示した時点で戻るボタンの横に改行 された内容が表示されたりします。 ■入力画面(戻ったとき) $textdata = htmlspecialchars(stripcslashes($textdata)); $body .= "<TEXTAREA COLS=82 ROWS=15 NAME=textdata>$textdata</TEXTAREA>"; $textdataには、改行より前の文字のみ入っています。 入力→確認画面→戻る という画面構成はよくあると思うのですが、一般的には どのように制御しているのでしょうか?hiddenとか使わなくても良い方法がある のでしょうか?よろしくお願い致します。
なんか宿題がまざってきたな
>>782 >>11 >>1 のトリップ出せって言うのは勝手に付け加えられた文言で
スレ的に質問者はageてちゃんとID出さないと答えてもらえないことになっている
1日に同じ質問を何回してもいいので(ただし小出しよりはまとめて質問すべし)IDは必ず出してくれ
786 :
◆butDCCtu7M :2008/05/01(木) 00:36:37 ID:LcM9SKUi
>>785 ご指摘ありがとうございます。了解しました。
ageて再度質問いたします。
小出しというか、入力文字数制限で入りません。
質問させていただきます。
【前提条件】
・各種レンタルサーバでの動作を想定しているため、多くのサーバが
対応していると思われるPHP4での動作を想定
・仕様の都合上、サーバの設定はいじらない
(続く)
787 :
◆butDCCtu7M :2008/05/01(木) 00:37:50 ID:LcM9SKUi
(続き) 【問題その1】 設定ファイルを以下の方法でプログラム上で作成するのですが、 あるサーバ(以後「相手サーバ」)で、このファイルが所有者nobodyとなり ffftpでのファイルのダウンロードや削除ができないようです。 [ソース] if(!file_exists([ファイルパス])){ //書き込む内容を定義 $writeStr = "〜〜〜〜〜〜"; //ファイルを作成し、パーミッションを変更 touch([ファイルパス]); chmod([ファイルパス],0666); //ファイルに書き込み $fp = fopen([ファイルパス],"w"); flock($fp,2); fwrite($fp,$writeStr); fclose($fp); } (続く)
788 :
◆butDCCtu7M :2008/05/01(木) 00:38:49 ID:LcM9SKUi
(続き) ちなみに私がテストで使用しているロリポップのサーバ(以後「自サーバ」) では、ファイル所有者が「apache」になりffftpでのファイル操作も 問題なく行えます。 相手サーバは直接確認できていないので、詳細はわかりませんが、 おそらくnobodyにchmodの実行権限がないためかと思われます。 前提条件にあるように、サーバの設定をいじれないため、プログラムのみで これを動作可能にする方法があれば、教えていただきたく思います。 無理なようなら、空の設定ファイルをffftpでサーバに上げ属性変更を行う という対応を考えていますが、可能な限り自動で行いたいです。 (続く)
789 :
nobodyさん :2008/05/01(木) 00:39:01 ID:0ps46wqd
setlocaleで'ja_JP'なり'Japanese_Japan'なりした時に %a で曜日を出力する際、出力される文字コードはどこで設定されるん? なんかwindowsだとcp932で固定っぽいんだけどどうなの?
790 :
◆butDCCtu7M :2008/05/01(木) 00:39:39 ID:LcM9SKUi
(続き) 【問題その2】 このプログラム、 ・利用者に動作しているのを意識させない ・ブラウザを閉じられても動作を終了しない という動作を行うようになっています。 現時点では以下のように実装してあります。 [execute.php] <?php System("php [実際の処理を行うPHPのパス] > /dev/null &"); ?> [HTMLファイル(該当箇所のみ抜粋)] <iframe src="execute.php" style="display: none;"> </iframe> こちらも自サーバでは動作を確認していますが、相手サーバでは動かないようです。 本来cronを使うべきなんでしょうが、これも前提条件のため、この方法で 実現しています。 何かよい解決策があれば教えていただけると幸いです。
792 :
◆butDCCtu7M :2008/05/01(木) 00:40:24 ID:LcM9SKUi
【補足】 使用するサーバはLinuxだと思われますが、あちこちのレンタルサーバでの 動作を想定しているため、Webサーバ、PHPバージョンは不特定です。 (PHPファイル自体を配布して使用してもらうようになっているため) 可能な限り多くのサーバで動くようにしたいです。 テストに使っている自サーバはロリポップで契約したレンタルサーバです。 LinuxでWebサーバはApacheですが、バージョンはどこで見るのか…… PHPはver.4.4.6だそうです。 ただこの自サーバではうまく動作していて、問題は相手サーバなのですが、 相手サーバのほうの環境は把握できていません。 これで回答お願いできないでしょうか?
793 :
ID出します :2008/05/01(木) 00:41:35 ID:Qhoj/T/S
処理を指定した行かラベルに飛ばしたいのですが、どうすればいいのでしょうか? A地点 echo "A地点を通過" B地点 echo "B地点を通過" C地点 echo "B地点を通過" というプログラムで、A地点の中にC地点までジャンプさせる命令をしたいんです。
>>792 サーバのバージョンが違うだけでそうそうプログラムが180度違う処理をすることなんてないんじゃない
PHPのバージョンなら4にあわせてコード書くとかマジッククォートの設定の有無に左右されないようにコードを書く
あとglobalなんとかってやつは対応するかしないかはあらかじめ決めたほうが良い
で、問題1のファイルが削除できない件は、ローカルでファイルを作ってそれをサーバにアップしたら削除できるんじゃない
>>783 よくわからんけど、そういうときは対象のファイルの<body>タグのスグしたあたりに
以下を出力してデータを確認してみれ
echo "<pre>";
echo "ポストデータ";
print_r($_POST);
echo "セッションデータ";
print_r($_SESSION);
echo "</pre>";
>>793 HSPのgoto文みたいなことがやりたいのかわからんが
switch ($_POST['key']) {
case "a":
a();
break;
case "b":
b();
break;
case "c":
c();
break;
}
function a() {
echo "aの処理";
}
function b() {
echo "bの処理";
}
function c() {
echo "cの処理";
}
797 :
789 :2008/05/01(木) 00:55:17 ID:0ps46wqd
>>791 ID:itZeUQTn?のことでしょうか?
すいません、証明は出来ませんがそれは私ではありません。
失礼いたしました。
PHP 5.2.3 CLI
Windows XP SP2
以上の環境で
mb_internal_encoding('UTF-8');
mb_http_output('cp932');
ob_start('mb_output_handler');
setlocal(LC_ALL, 'Japanese_Japan');
とした場合、
strftime('%a');
とすると日本語での曜日が出力されるのですが
strftimeの出力がsjisになっているようで文字が化けてしまいます。
strftime -> (1. sjis) -> mb_output_hander -> (2. utf8) -> 出力
※2. の部分で化ける
strftimeの出力する日本語文字コードを変更したいのですが
どのようにすればよいのでしょうか?
また、変更は出来るのでしょうか?
798 :
◆butDCCtu7M :2008/05/01(木) 00:56:04 ID:LcM9SKUi
>>794 回答ありがとうございます。
サーバのバージョンはさほど気にしなくてもよいということですね。
コードはPHP4に合わせて書いております。(テスト環境もPHPはver.4.4.6)
問題1の件は
>>788 の最後で書いてあるように、想定はしているのですが、
利用者が操作せずに行えるのならそうしたいとの要望があり、プログラム上で
実現できる可能性を質問した次第です。
読解力がなくて申しわけありませんが、「globalなんとか」っていうのは
どの部分への回答でしょうか?
cp932ってsjisを拡張したものだから・・
>>790 設定ファイルがなんの設定ファイルなのかわからないけど
PHPからは、環境変数からどこまでの権限を自分が持ってるかを
知る事はできても権限を越えることは無理だから無理。
出来ることは、環境変数しらべて、条件があわなかったら
お使いのサーバーは条件を満たしておりませんのエラーで終了。
>>798 ファイルをサーバ側で作るんじゃなくて、ローカルからサーバにうpしたほうがいいよ
>>797 mb_internal_encoding('UTF-8');
mb_http_output('cp932');
ob_start('mb_output_handler');
setlocal(LC_ALL, 'Japanese_Japan');
の条件ならcp932で出力されるのは当たり前だと思うけど?
なんでutf-8で出ると考えてるの?
804 :
◆butDCCtu7M :2008/05/01(木) 01:08:34 ID:LcM9SKUi
>>800 回答ありがとうございます。
無理ですか……残念です。
問題1の方はftpでのアップロードで行うことにします。
805 :
nobodyさん :2008/05/01(木) 01:10:02 ID:Qhoj/T/S
>>796 なるほど、switchを使うんですか。
ありがとうございました。
806 :
789 :2008/05/01(木) 01:13:56 ID:0ps46wqd
>>799 はい、それは把握しています
>>801 出来ないことはないとはどういうことでしょうか?
大元の定義ファイルがあり、それの文字コードを変換してからコンパイルし直す
といった類のやり方でしょうか。
動的に変更出来ないのであれば諦めますが
可能性があるならヒントでも頂けると助かります。
>>803 mb_output_handlerの部分で ( utf8 -> cp932 ) 変換が掛かるのですが
strftime からの出力は cp932 なので
cp932をutf8としてcp932に変換するので文字が化けてしまいます。
書き方がわかりにくかったですね。
すいません。
>>798 4.2.0以前ではデフォルトでOnになっている設定のことだと思われます。
http://php.benscom.com/manual/ja/security.globals.php
807 :
789 :2008/05/01(木) 01:29:22 ID:???
ああ、わかりました。 windowsだと日本語のロケールが一つしかないんですね。 Unix系だとja_JP.SJISなりeucJPなりUTF-8なりで対応すると。 ありがとうございました。
>>806 つiconv
これでできなければそれ以外のやりかたは知らない
今更なのですがピュア中部の2ショットで、ログが残せて管理者が確認出来るタイプのCGIを探してます。
配布終了になってサイトも無いので、お持ちの方はいらっしゃらないでしょうか?
# 2SHOT-RIGHT v1.02 (フレーム専用、sjis用) <FreeSoft>
#
# by RIGHT
http://herz.pobox.ne.jp/cyder/doc/right_top.htm # Original Script "2SHOT-CHAT version 4.1"
# By RESCUE www.rescue.ne.jp
これを今使ってるのですが、前メッセージが残っていたりと微妙に使いにくいのです。
ほかに2ショットでチャットログを残せるタイプのものは無いでしょうか?
810 :
nobodyさん :2008/05/01(木) 03:02:47 ID:jmqAlJjw
携帯サイトでよくあるPHPのログインをどうやったら破れるか考えて いるのですが、外部からログファイルを取得するしか方法はありませんか?
>>810 犯罪に荷担してしまう可能性のあるご相談はお受けすることができません
ご了承ください
$a = 0; class HOGE { var $a = $a; } これって通らないの? なんで? クソ言語過ぎない?
お前は何を言ってるんだ
814 :
810 :2008/05/01(木) 08:49:53 ID:Bd+Jl0DJ
>>811 それでは1つ教えてください!
自分なりには入力された文字をテキストファイルなどの形式でサーバーに送って
それをログファイルと比較しているのかなと思ってます。
それでサーバーにアクセスするにはどうすればいいのか
アクセスしたところで拒否されないだろうかと考えています。
この仮説は正しいですか?
犯罪に荷担してしまう可能性のあるご相談はお受けすることができません ご了承ください
816 :
nobodyさん :2008/05/01(木) 08:58:50 ID:Bd+Jl0DJ
>>815 しつこくて申し訳ありません。他人に頼らず自力で勉強するしかないということですね。ありがとうございました。
>>816 私怨たっぷり3流クラッカーさんですね、わかります
一応書いておきます
ブルートフォースアタックをかける結論に至ると思いますが、
対象サーバのアクセスログに著しく情報が残る+その結果対策もとりやすいため、
パスワード解析以前にすぐバレてお縄になってしまうでしょう
したがって、潔く諦めることをお勧めします
>>816
ID:Bd+Jl0DJよ 貴様が厨房であることは分かったからさっさとこのスレからうせろ
>>812 これは釣りだよな?どの言語のクラスでもこんな書き方しないだろ。
動的にクラスを生成するのをよくやる言語や環境ならやるかも。
質問がないとひまだお
うーん、いまのとこないw
825 :
816 :2008/05/01(木) 19:42:34 ID:Bd+Jl0DJ
自己解決しました。なんとかサーバーにアクセスしてもcryptされていたらダメなんですね。 やっとこの関数の重要性を理解しました。 結局ブルートフォースしかないんですね。
827 :
816 :2008/05/01(木) 20:06:55 ID:Bd+Jl0DJ
怒られない程度に遊びたいだけで、三流クラッカーにさえなれない厨房です。
4桁パスワードの掲示板で、手動で総当りアタックでもやればいいじゃない
まだいたのですね…
ブルートフォースアタックについて補足します
昨今の Firewall は統合型のものが多く、
侵入検知、自動防御などの機能が同居していることがほとんどです
外部から調査しても一見すると Firewall がないように感じる場合がありますが、
Stelth 機能を使って Firewall を隠蔽するような、無いように振る舞っているだけです
したがって、どこの企業、組織、レンタルサーバ類でも確実にログが採取されており、
ブルートフォースのようなことをしかければ確実に足跡を追跡できると覚えておいてください
つまり、潔く諦めることをお勧めします
>>816 =825
まあ、やらせといて捕まってもらえるほうがうれしいけどね 厨房は生きる価値ないから
4桁のパスワードか。 数字10個、アルファベット26個×2(大文字小文字)で62個の場合で考えると 総当りで14776336パターン。 俺が作ったシステムは、一回のパスワード認証で 一秒ウェイトを入れているから最悪でも171日で突破できるな。 記号も考慮すると1年ぐらいか。 だから何?といわれても困るがw
短時間に認証エラーを繰り返したIPはブラックに自動登録、 以降のアクセスは警視庁・インターポールにリダイレクトしてる漏れは天才。
>>833 そういうのが Firewall にとっては最も検知しやすかったりします
スレ違いな話題だし、問題児はそろそろネットワーク板にでも誘導するか…('A`)
最近はログイン条件にパスの他にプロバイダ入れるのが主流だな。 国内の特定のプロバイダからしかアクセスできないようにしておけば 万が一の時もすぐタイーホ。 銀行なんかは重要な手続きは携帯からやらせて、 端末ID使ってる所もあるね。
主流・・・なのか?
ログイン情報って無駄なものを入れないためにいつも1っていれて判断してたけど プロバイダいれるメリットは?
主流かどうかは知らんが、アカウントに許可IPアドレスを設定するのは普通にある メジャーなプロバイダならログもちゃんと管理してるだろうから、パスワード漏れ等でログインされても 追いやすいって話じゃね つうか1で判断ってセッションハイジャック防止とかノーガードか?
国内の特定のプロバイダからしかアクセスできないようにする 大変すぎだろ? 海外からのアクセスなんて当たり前にあるし、 プロバイダが増えたり減ったりしたらどうするんだ? 個人ブログじゃないんだしさ。
>>840 認証ページ(ディレクトリ)だけにアクセス制限をかければいいだけですよ
843 :
nobodyさん :2008/05/02(金) 00:32:23 ID:ESOY+ESo
うまくすりぬける人はパスワードなんか無視してURLをゲットするの?
>>842 だからそれじゃ特定のプロバイダ人しか
認証できないだろ。
それに悪意のある人間が日本国内から
アタックしたらどうするんだ?
意味無いじゃんか。
845 :
nobodyさん :2008/05/02(金) 01:39:52 ID:71gb5g2D
遅レスだけど
>>654 えー!!!!こんなことできんの!?
プログラムはCから覚えた俺には強烈な型柔軟性に吃驚だよぅ
C言語でも、同じようなことはできるがな。
C言語に文字の配列はあっても文字列変数なんて概念はないぞ ましてそれをインクリメントなんてできんの?
文字列をそのままできなくても文字のインクリメントはできる。
文字列のインクリメントができるのが驚きなんじゃないか さらに言えばCは文字のインクリメントができるんじゃなくて 文字コードを数値としてインクリメントができるだけだし ってまあスレ違いだからどうでもいいか
話してる内容自体には個人的には賛成なんだが 散々自分の意見言っといて 最後に「スレ違いだからここまで」って 典型的な荒らしの書き方じゃないか。
スレチは他所で。 まともな意見だと思うがな。
コンパイラとインタプリタをの優劣を論じても意味はない。 スレチ以前の話。
上で出ているPHPの認証画面とは任意の人間に認証させるようなページ? わたしは管理者だけが認証できればよいと理解していました 何らかのサービスを管理するための認証画面だと思っていたのですが 例えば、掲示板の書き込みを一括削除したり等する画面への認証など であれば、管理者だけが管理画面に対して認証できればよいだけなので、 特定のRemote host(日本国内の限定されたISP)からのアクセスのみを .htaccessなどで許可しておけばさらに安心だと思うのですが
phpって文字列に対して(int)とか、 不正なキャストを行った場合の処理ってどうなる仕様なのでしょうか?
うむ、ごくろう。
860 :
nobodyさん :2008/05/02(金) 15:22:43 ID:eCOkp8a7
変数名に変数を使うことって出来ないのでしょうか? $hoge = "bcd" $a$hoge = "abcd" だとしたら、 $hogeの内容が変数名に代入されて $hoge = "bcd" $abcd = "abcd" となるようにしたいのですが・・・やっぱ無理でしょうか? 別の方法があれば教えてほしいです。
あまり薦めないけど $hoge = "bcd"; eval( "\$a$hoge = \"abcd\";" ); echo $abcd . "\n";
evalなんぞ使わなくても ${'a'.$hoge} = 'abcd';
>>862 なるほど、中括弧で括るのですか。
ありがとうございました。
865 :
nobodyさん :2008/05/02(金) 16:38:44 ID:1oP7bnHx
変数名に変数ねぇ。 やろうと思ったことすらない。 難読化に役立つんじゃねぇかなぁ。
変数名に変数か、考えた事すら無かったわ
同じく変数に関する質問なのですが、 「echo "あいうえお"; echo $ABC; $A=$C+$D」というプログラムをひとつの変数に収めることって出来ないんでしょうか?
志村〜
>>867 $foo = 'echo "あいうえお"; echo $ABC; $A=$C+$D;';
で、なにがしたいんだ?
「eval したいんです!」 「だからなんで eval が要るんだ?」 「使ってみたいだけなのに、なんで要るのか訊かれても…」 こんな感じじゃないのかな。
変数名に変数、普通に使ってますが・・・だめですか・・
普通は連想配列(PHPだと配列と区別ないが)を使って $a[ $hoge ] = "abcd"; とか書く 変数名に変数を使うと便利な状況が思いつかない
こういうのは実際に"便利な状況"に遭遇してから分かるのであって、 初めから頭で考えても思いつかないだろ
876 :
nobodyさん :2008/05/02(金) 18:19:24 ID:nE3gn/Rr
Perl 関係のスレにも ${$varname} したい人がときどき来るんですけど
自分も
>>874 な感覚で $array[$key] (PHP) / $hash{$key} (Perl) で済むように
思うことが多いなあ。${$varname} したい状況がわからない。
でも、言語仕様としては用意されてるから駄目ではないし(…です。
>>873 )
今の自分は「C のポインタって何が便利なんすか?」って人と変わらん状態なのかな。
うん、みんなが優しいのは分かったけど、
例外を作りつづけてもよくないと思うぞ?
>>1 ・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。
質問者も質問するなら最低、
テンプレにくらい目は通そうぜ?
うぅ〜んまんだむ!
GETでもPOSTでも動くように可変変数使って書いたことがあるけど それが最初で最後だなぁ
881 :
nobodyさん :2008/05/02(金) 21:02:31 ID:CcSXHmXb
動的に関数を定義するにはどうしたらいいですか?
if(){ function b(){} } else { function a(){} }
PHPで、どんなセキュホがあれば、スクリプトみられたり するんですか?
教えて下さい。
http://z-z.jp/ なんでここはスクリプトみられてるのですか
教えて下さい
phpじゃないじゃん
そこのスクリプトの見方を教えてくれれば、 PHPのも教えてあげるよ
887 :
nobodyさん :2008/05/02(金) 22:47:59 ID:vDcZA+4C
おまえら友達居ないだろ?
>>887 自分を攻撃すると意味の分からない話にもってくゆとり乙
889 :
nobodyさん :2008/05/02(金) 23:00:15 ID:vDcZA+4C
>>888 俺はたしかにゆとり教育受けてるが、おまえみたいに友達いないよりはマシだ。
こんなところにずっと張り付いてて楽しいか?
>>889 会ったことも無いのに友達がいないといえるところがゆとりだな
友達いないけど彼女いるから
893 :
nobodyさん :2008/05/03(土) 00:38:01 ID:cJNbL5n/
php 5.2.3 windows xp sp1 apache2な環境ですが コマンドラインの php -l ファイル名 と同じ動作をする php 関数かなんかはないでしょうか。 プライベート用のテスト鯖でDBにソースを保存して簡易CMS的に使おうと考えており DBに保存する前にソースが動くかどうかの確認をしたいのです。
PHPで、どんなセキュホがあれば、スクリプトみられたり するんですか?
教えて下さい。
http://z-z.jp/ なんでここはスクリプトみられてるのですか
教えて下さい
897 :
nobodyさん :2008/05/03(土) 01:17:15 ID:3FEggVxI
ブログのテンプレートでよく見かける <a href="{$BBSPATH}">掲示板トップ</a> のようなことをしてデザインとプログラムを分けたいのですが、 どのような仕組みで作ればいいのでしょうか?
正規表現を覚えて\{(\$[A-Za-Z_-]+)\}でマッチングさせて\1で 帰ってきた変数名で、その部分を置き換える。 っていうのは#FF0000なFALSEで、何も考えずにincludeして使えば良い。 {$変数}の"{"と"}"は、周りの文字にくっつかない為の方法で表示はされない。 単に変数埋め込んでるだけ。
899 :
nobodyさん :2008/05/03(土) 01:38:21 ID:3FEggVxI
>>898 さんの説明が難しくて私には・・・まだやすぎるのかな・・・
自分なりに考えたのですがこういうやり方はどうなんでしょうか?
プログラムファイルからスキンファイルをfile_get_contentsで読み込んで、
str_replaceを使ってスキンファイルに書かれている変数(たとえば{BBSPATH}など)を置換。
っていうのはダメですよね・・
ありがとうございます。この方法なら自分にもできそうなので取り組んで見ます
・・・まだやすぎるのかな・・・
file_get_contentsでやっても、evalすれば $varは展開されるけど、それで出来るのは、単一の値を持つスカラーしか置き換えられないから smartyみたいなのはstr_replaceとか正規表現使ってるっぽい気がする。 ソース見てないけどあれってifとか使えるし、<option>タグで 中身ぞろぞろ引き出せるんだよね?…ってやっぱevalでも出来るかな? まあ、自分で置換すれば、<option>で項目が増減するのも タグに独自ルール作って扱えるよね。 ちなみにZendFrameworkは普通に<?php ?>だよ <?php if(hoge): ?> <?php endif; ?>って{}使わない方のもう一つのifの書き方を 使ってるのが見やすくてなるほどと思った。 常に表示枠固定じゃない限り、foreachはどうしても 使うことになると思うし、それ考えるとZendのやり方が良いと思う。
904 :
903 :2008/05/03(土) 02:13:06 ID:???
ごめん、開始タグと終了タグあるのはstr_replaceじゃ無理だ。 単に置き換えるだけなら出来るけど、それならevalした方が断然良い。 やっぱ正規表現必要。
906 :
nobodyさん :2008/05/03(土) 04:22:31 ID:Bi5B2zuj
>>891 >友達いないけど彼女いるから
ワラタwww彼女いる事自体はなんの自慢にもなんないだろwww
妥協すればだれでもできるwww
907 :
nobodyさん :2008/05/03(土) 08:52:05 ID:IxjoBmKw
preg_match("/<title>(.*)<\/title>/",$file_data,$file_title); これで読み込んだファイル内のtitleタグのテキストを取得しています。 しかし、<title></title>の間に改行が入ると取得できなくなります。 改行が入っていても、取得するにはどうすればいいのでしょうか? 改行を削除する方法以外でお願いします。
>>907 .
↑は改行を含んでませんよ
ちゃんと改行も含めないと
\nと.
909 :
873 :2008/05/03(土) 11:22:48 ID:???
遅レスだけど、変数名に変数を使うことってそんなに頻繁にはないけど
(言われてるように、連想配列で済む場合が多いから)
>>898 みたいな正規表現と組み合わせる場合とか、変数と他の何かが
一定のルールで名称付けされてて、かつそれが膨大な量の時とか、
あとはリファレンス的に使ったりとか、そんな場合です。
これはPerlの時から使ってた。
確かにこれらの場合も、他のやり方とか、配列で済ませられるかもしれないけど、
簡単な方を選んでしまった。
てか普通にsmarty使えばいいんじゃね?って言うのはなしなの? なんでわざわざ車輪を再発明すんの?
phpのプログラマーって、論文とか書いたことがない奴ばかりか? 論理的思考もなく、単に関数と関数をパズルのような感覚でつなぎ合わせれば、 それなりのものが出来てきて、さぞ自分は有能なエンジニアだと錯覚を起こしているのではないですか? 有能か似非かを分ける方法は簡単。 設計書orテスト仕様書を書かせてみればすぐ分かる。 もっと言えば、作っているシステムを誰でも分かりように1枚の絵にまとめろ、という課題を出せばいい。 たちまち、化けの皮が剥がれる。
掲示板のスキソのように使うまでもない小物とか、 テンプレートエンジンがない環境とか 実は俺もスキソのためにSmartyをダウソして中を見てみた訳だが、 何が何だかワケワカメだったw
>>913 Smaryのコード自体は大してレベル高くないんだけどphp4仕様で書かれてるから非常に読みにくい
メカニズムが車輪の再発明でも、雪道に強いタイヤとか 自分の欲しい物を作るのは、間違いじゃないと思うよ。 smartyみたいに、大した事出来ないのに無駄に大きいライブラリは 拡張するより、一から書いた方が早いだろうし。 今の風潮で何作るのにも出来合いのライブラリを使っていく発想だと 9割のクラスが使われないまま読み込まれていたりとかおかしな事になる。
四角い車輪の再発明乙
>>916 雑誌とかに惑わされずにsmartyの中見てみれば、
smarty自体が四角い車輪な事がすぐわかるはずだけど。
あれは、個人が適当に作ったのを公開してるのとレベルあまり変わらない。
「見ればわかるはず論」はいらない。 理由を言え。
php自体で書かれてるんだから見て分らないやつは使うな。
>>919 そういう暇は無いんで、
どこを見ればよいかと、そこを教えてください。
だから、君達は技術者じゃないだよ。単なる組み立て屋。
>>922 だから聞いてます?どこがと聞いてんだけど。説明できないんだw
書き方が凄く汚い。 $varへの代入とdefineの使い方が曖昧。 define使ってると思えば、弄る事の無いsmartyバージョンナンバー $varに入れてるし。 php4で書かれてる時点でphp5からextendする気は起きないだろ。 smartyプラグインで決められたオレオレ使用にしたがってカスタマイズするか? 突っ込みどころは一杯あるけど、コード内にvimのタグ入ってる時点で、 書いてるやつが自分のためだけに作ってるオレオレエンジンだって気付けよ。
お前ら暇だな!
だが、これは 下らねぇ煽りあいはここに書き込みやがれ 1の序曲にすぎなかった
>>924 書き方wwww
まぁな、書き方は目立つし突っ込みやすいからな。
人が作ったコードを使うこと、いや使い方すらわからなくて人に聞いている状態なのに、 俺は技術者だと威張り腐っているって何? 人間として腐ってんじゃねーの?
書き方が気に食わないっつー話かw
930 :
924 :2008/05/03(土) 14:17:25 ID:???
>>922 技術者だと威張ってる奴なんてどこにもいないだろw
ここにいるのは「パーソナルホームページ」を作ってる趣味人が大半だから
おちけつ。
彼らは、「お前は技術者じゃない」って言われても、困るだろ。
夕飯作ってる主婦にいきなり、「お前は料理人として失格だ」
って言ってるくらい暴言だ。
技術者だからこそ人が作ったコードを使うんだけどなあ 趣味なら全部自前で書いていくら時間かけても楽しければいいけど
932 :
873 :2008/05/03(土) 14:28:52 ID:???
俺は一応技術者だけど、ほとんどライブラリは使ったことないな。 技術者としても会社の一員としても正しくないかもしれないけど、 やっぱ他の人が作ったものを心底信用することができないのと、 自分で開発するのが楽しいから。 ま、言っても全部自分でってわけにもいかないし、自分が作ったものが 完璧だとは断言できないけど、でもまぁ、そうやって成長していってるってのもある。
_, ,_ <[;゚Д゚]> ア゙ー!? なんでおまいの楽しみや成長のために [_] つかいづれえ心底信用できねえものを使わせられにゃならんのよ < >
ホントに会社の一員なのか? いつも一人で開発してんのか?
一画面いくらって感じの仕事ならともかく、もうちょっと複雑なシステムの開発になんかだと、 どれだけライブラリ化、ソースコードの再利用がされてるかは、かなり怪しい話題だと 思うけどなぁ。
936 :
873 :2008/05/03(土) 14:54:14 ID:???
>>934 一人で開発してる。ま、規模が小さいってのはかなりあると思う。
あと、もうできる限り一つ使わない理由としては、バージョン依存が怖いってのもある。
だから結局、自分でライブラリ開発してる。
937 :
873 :2008/05/03(土) 14:55:23 ID:???
スマソ、日本語かなりおかしくなってたw ×もうできる限り一つ使わない理由としては ○できる限り使わないもう一つの理由としては
難しいことを行っても分からないようだから、 車のエンジンを開発するのがエンジニア、 車の部品を設計図に基づいて組み立てるのは組立工。 で、君達は、組立工に過ぎないということだよ。
秋葉原で、パソコンのパーツを買ってきて組み立てて、 俺はパソコンを作れるなどと馬鹿丸出しで初心者に自慢しているのと同じだってこと。 そろそろ自覚しろよ。
PM工程からUTくらいまでだけをやるのが組立工 PDまでとかもやるのがエンジニア ライブラリとか関係ないから 君が煽りたいだけなのはよくわかった GWで暇なら外に出るといいよ
>>924 smartyのもっとワクワクするようなお話が聞けると思ったのに、
まことに残念無念。また無駄な時間を消費してしまった。
>>940 俺が担当教官なら、お前は停学処分にするよ。
大体、PrograMing工程と、ProjectManagement工程と紛らわしいから、
通常は、PM工程とは言わずPG工程と言うところだが、
そういう無神経さも君の気質をよく体現していると思うよ。
ProjectManagement工程って初めて聞いたわ そうか、ProjectManagementは工程の一つだったのか
よそでやれよ目糞鼻糞ども。
もっと、テレビのニュースネタになるようなデカイ発言をしろよ。 ↓↓↓ 明日の朝のテレビのニュースのネタをどうぞ!!!
>>938 おーい。設計図を書いている人がいないぞwwww
947 :
873 :2008/05/03(土) 15:51:09 ID:???
みんな!アタシのために喧嘩するのはやめてーーーノシ
車のエンジンを作る人(下請けライブラリを作ってくれる人)が 車の設計図(アプリケーションのソースコード)を書いてくれるんじゃねwww らくだなぁ。打ち込むだけでいいんだろ? おら、早く仕事しろwww
東郷平八郎は、命を掛けて日本を守ったのに、 ここに住民はこんな下らないことで時間つぶしですか? どうりで、GNPで2位から18位に転落するわけだ。先祖に会わす顔がないよ。
そこまで戻らなくていいから
>>897 からやり直そうよ
いまどき命をかけて日本を守るとかあほだろw
最低な国、日本
>>951 OSがないとアプリケーションが動かないことを忘れるタイプですか?
そんなときこそマルチプラットフォームだろ
>>953 人民いてこその国ぞ。
人がいなくなった国に何の意味があろうか。
戦争に狩り出されたのは貧乏な家の男達だ。 そして主の居なくなった家はもっと貧乏になった。 それが忘れてはいけない真実。
ゆとり乙w
人民について熱く語り合いたいなら どこか別の板にいけ でなきゃーPHPスレなんだから 語りたい奴が掲示板作って晒せw ---------------------------------------------- では気を取り直して、次の方質問ドゾー
PHPで戦争は止められますか?
960 :
nobodyさん :2008/05/03(土) 18:33:44 ID:Q1whB2fu
すみません。質問です。
YOMIサーチのPHP版を設置し下記URLを参考に静的URLにしたいと思いましたが
どうしても404になってしまい、うまく出来ませんでした。
tp://legendlink.com/php/url_seitekika.html
XREAのs79サーバーを使っています。
設置したいURLは
http://aaa.example.com/bbb/です 。
この際、RewriteBaseはどう表現したらいいのでしょうか?
よろしくお願いします。
>もし、表示されていなければ、サーバー事態が.htaccessに対応していなかったり、mod_rewriteが組み込まれていない可能性があ >詳しくは各サーバー管理者にお尋ねください。 > >なお、Yomi-Search自体をサーバーの特定フォルダ内にインストールしている方は、 RewriteBaseのパスを書き直すか、 >記述を削除して確認してみてください。
オナニーレスを繰り返した火とって生きていて恥ずかしくないの?
少なくとも直前の答えるべき問題は
>>897 だよねぇ
それに答えることもしなくて、独りよがりのレスを積み重ねてる人ってw
963 :
nobodyさん :2008/05/03(土) 19:37:06 ID:6T5yZm8J
と自分も答えないニートが熱く語っております。
965 :
960 :2008/05/03(土) 21:25:03 ID:Q1whB2fu
考えてみればスレ違いの質問にお答えくださったありがとうございました。 サーバーさんに問い合わせてみて、駄目ならサーバー変えようと思います。
ちょw誰も答えてなくね? 上にあるのはニートの妄想レスだからw 俺は就職してるぞーみたいなw
>>966 その通り
論点ずれまくりのレスをしているところからして、
当たりだな
GW中ずっとこの流れなの?
データベースに画像を記載する場合どうすればいいんでしょうか? CDの画像とか、本の画像とか
1. ファイル名だけDBに保持して画像はファイルで持つ 2. BLOBを使う 3. スレ違い
>>970 ありがとうございます。 すれ違い失礼致しました。
975 :
nobodyさん :2008/05/04(日) 06:34:25 ID:RevwzEgI
unixタイムって64ビットマシンになったら寿命伸びる? その頃には間違いなく64ビットかそれ以上になってるから 気にせずunixタイム使うプログラム書いておk?
それは誰もわからんよ
977 :
nobodyさん :2008/05/04(日) 08:55:41 ID:z+IlApFp
phpのmicrotimeの関数ですが、 一度取得した後、再度取得しても同じにならないという保証はありますか? microtimeの返り値をキーに利用したいと思っています。 ちなみに、私は染色体異常でバセドウ病を患っていますので、 高度なパソコン操作ができません。 ご迷惑お掛けしますが、宜しくお願いします。
関数を呼び出した時点の値を返すから同じにはならない
精度については、OS依存じゃないのかなぁ。 あと、自分のショボイPCでも microtime実行するのに 10マイクロ秒ぐらいだから、 連続して呼び出す場合はマイクロ秒以下になる環境もあるんじゃない。 CPUがマルチコアだと、それも影響するかもしれないし。
>>975 将来はRFC2550が標準の日時フォーマットになります。
>>960 xreaはRewrite使えるよ
たぶん
http://aaa.example.com/bbb/ bbbの部分を付け加えてないからだと思う
しかしs79は俺がガンガンcgi使ってるからこれからそこにYomiを入れてずっと運営していくなら
運営する前に新しい鯖に移った方がいいと思うw
というかs79はかなり古いよな
もし移れるならs300番台とかにいったほうがいいぞ
PHP5だし鯖の性能もいいし
俺も移れるなら移りたいがサイト詰め込みすぎて引越すのがマンドクセんだw
ブラウザからダウンロードさせるスクリプトですが header('Content-Disposition: attachment; filename="test.txt";'); header('Content-Length: '.filesize("./test.txt")); header('Content-Type: application/octet-stream'); readfile("./test.txt"); こうした場合、クライアントがブラウザのダウンロードダイアログではいを選んでDLが完了するか いいえを選ぶまでサーバー側のPHPのプロセスは存在したままになるのでしょうか
require するファイルが存在しなければ例外を発生させたいんですが 以下のコードでは何も表示されませんでした。 どうすれば例外を起こすことができるのでしょうか? try { require_once 'detarame.php'; } catch (Exception $e) { echo '例外です: ', $e->getMessage(), "\n"; }
読み込めたか判定してthrows
>>984 >>986 file_exists でチェックできるんですね、ありがとうございます
できれば全体を try で囲って
どんな予期しない事が起きようとも
何かエラーメッセージを出すようにしたいのですが
そういうことは しない もしくは するべきではない ものなのでしょうか?
別に構わないんじゃね?
991 :
983 :2008/05/05(月) 03:48:36 ID:???
>>990 難しそうですね。。。
とりあえず色々試してみることにします。
ありがとうございました
>>988 メッセージを出した後どうするのかが問題だろ。
予期しないことがないようにしておくのが開発だ。
適当に作ってメッセージ出して終わりじゃ素人。
またJP1が出たか。
JP1とかどうでもいいが基本だろ?
JP1君いらっしゃ〜い
ここは富士通営業マンの工作活動がひどいインターネッツですね
>>996 富士通じゃなくて、NECソフトウェアだと思うんだが。
998 :
nobodyさん :2008/05/05(月) 13:18:43 ID:cSW0xQhq
某スレに居たけど、俺の良さを分からないようだったので、 こっちに北。俺は、分子生物学の権威だけど、何か聞きたいことある?
ない
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。