【PHP】下らねぇ質問はここに書き込みやがれ 70at PHP
【PHP】下らねぇ質問はここに書き込みやがれ 70 - 暇つぶし2ch1:nobodyさん
08/06/25 10:14:08
まず読め→【PHP マニュアル】URLリンク(www.php.net)
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは970が立ててください立たなかった場合は980よろ

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 69
スレリンク(php板)
◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。

◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくは質問時のトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで


2:nobodyさん
08/06/25 10:14:38
【簡易FAQ】 (1/3)
1.文字コードは何を使えばいいの?
 →1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
 → URLリンク(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)、起動&再起動あたり


3:nobodyさん
08/06/25 10:14:52
【簡易FAQ】 (2/3)
11. SQLの質問はどこで?
 → データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
 → ctype_~()が手軽。複雑なパターンはpreg_~()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
 → 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
 → よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
  URLリンク(www.faqts.com)
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.を参照

4:nobodyさん
08/06/25 10:15:02
【簡易FAQ】 (3/3)
21. 画像処理一般 or GDの限界
 → ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
 → 好きにしてください

5:nobodyさん
08/06/25 10:15:15
関連リンク
■本家マニュアル   URLリンク(www.php.net)
■日本PHPユーザ会 URLリンク(www.php.gr.jp)
■PEARマニュアル  URLリンク(pear.php.net)
■メーリングリスト   URLリンク(ns1.php.gr.jp)
■ZFマニュアル    URLリンク(framework.zend.com)

(以下英語)
■Smarty       URLリンク(smarty.php.net)
■Zend本家      URLリンク(www.zend.com)
■Zend Framework  URLリンク(framework.zend.com)
■php | architect   URLリンク(www.phparch.com)
■Smartyマニュアル URLリンク(smarty.php.net)
■PECL本家(英語) URLリンク(pecl.php.net)

6:nobodyさん
08/06/25 10:16:09
■過去ログ
【PHP】下らねぇ質問はここに書き込みやがれ 69
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 68
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 67
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 66
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 65
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 64
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 61
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 62
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 61
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 60
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 59
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 58
スレリンク(php板)
【PHP】下らねぇ質問はここに書き込みやがれ 57
スレリンク(php板)

7:nobodyさん
08/06/25 10:19:00
■関連スレ
くだすれPHP(超初心者用)4
スレリンク(php板)
PHP関連の書籍 第6版
スレリンク(php板)
【PHP】フレームワーク CakePHP 4ホール目【v1.2】
スレリンク(php板)
【PHP】 Smarty 隔離スレ 【テンプレート】
スレリンク(php板)
PHP総合雑談スレ
スレリンク(php板)
【PHP】フレームワークについて語るスレ10【総合】
スレリンク(php板)
【PHP】Ethna part.2【国産フレームワーク】
スレリンク(php板)
ZendFramework Part2
スレリンク(php板)
フランチョスとsymfony
スレリンク(php板)
最強のPHPエディタはなに?
スレリンク(php板)

8:nobodyさん
08/06/25 10:21:49
【PHP】PEAR Part3
スレリンク(php板)
【PHP】フレームワーク Akelos
スレリンク(php板)
正規表現道場
スレリンク(php板)
正規表現 Part5
スレリンク(tech板)
MySQL 総合 Part14
スレリンク(db板)
Oracle 総合 Session6
スレリンク(db板)
SQLite 6
スレリンク(db板)
Microsoft SQL Server 総合スレ 6
スレリンク(db板)
PostgreSQL Part.5
スレリンク(db板)
データベース
URLリンク(pc11.2ch.net)

9:nobodyさん
08/06/25 12:12:15
MediaWikiのテキスト変換部分ってどのへんなんだ
全く見当たらない

10:nobodyさん
08/06/25 12:45:34
>>9
=== MediaWiki 管理者の集い 第2版 ===
スレリンク(php板)
こちらへどうぞ

11:nobodyさん
08/06/25 15:49:00
>>1テンプレ変えるなタコ
トリップつけてもageてなければ答えないのが昔からのスタンスだろ

12:nobodyさん
08/06/25 15:52:40
まず読め→【PHP マニュアル】URLリンク(www.php.net)
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 69
スレリンク(php板)

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで

13:nobodyさん
08/06/25 17:26:02
こんにちわ。php5 の simplexml関数について教えて下さい。

・取得したいXMLの内容

<results>
<SAVE_COUNT u="http%3A%2F%2Fblog.katsuma.tv%2F" ct="1"/>
</results>

・どうしたいのか?
上記の u= と ct= の値を simplexml 関数を使って取得したいのですが、うまくいきません。

print_r($xml->SAVE_COUNT);



SimpleXMLElement Object
(
[@attributes] => Array
(
[u] => http%3A%2F%2Fblog.katsuma.tv%2F
[ct] => 1
)

)

となるのですが・・・。
ct と u っていうのは要素になるのでどうやれば取得できますでしょうか。
教えて下さい。よろしくお願いします。


14:nobodyさん
08/06/25 17:33:26
$xml->SAVE_COUNT['u']

15:nobodyさん
08/06/25 17:37:56
>>13
です。すいません。自己解決しました。
板汚し失礼しました。

16:nobodyさん
08/06/25 18:01:57
>>11
過去に縛られ生きてるんですね
トリップが駄目な理由なんだよ

17:nobodyさん
08/06/25 18:19:49
>>16
先人が議論して作りあげてきたものを独断で変えるなよ
トリップがだめなのはトリップをつければsageたままでいいという馬鹿が生まれるからだ
質問者はスレをあげるのがここでのマナー
あげれば回答者は質問があることがわかるしスレも上位にあると際立って人がきやすいからだ
有効な回答をほしいと思ってるのならageて当然
つまりsageたままでは適当な回答でいいと言ってるようなもの
偽者防止だけが理由だと思ってるなら100年ROMってろ

18:nobodyさん
08/06/25 18:33:30
専ブラ使ってりゃageだのsageだの激しくどうでもいい

19:nobodyさん
08/06/25 18:39:18
>>18
お前がよいかどうかなど関係ねー

20:nobodyさん
08/06/25 19:56:42
>>17
先人が議論ってどこにあんのよ?
過去スレ以前に読んだ事があるが
議論らしい議論はなかったが?

それにageて当然とかお前の思い込みも良い所
それに議論しようとしても全く聞く耳も持ってねーし


21:nobodyさん
08/06/25 20:00:09
質問どころかスレですら低レベルな煽り合いかよw
PHPユーザーしょうがねぇな。

22:nobodyさん
08/06/25 20:44:50
質問です。

チェック項目の条件に応じた店舗を表示するさいに
各店舗の情報をXMLでデータベースを作りたいのですが
XMLでのテキストファイルが3000行ほどになってしまいます。

そこで店舗ごとに1つのファイル化を考えたのですが
3000行あるひとつのファイルを読み込み検証するのと
60行ほどのデータを50コ開いて検証するのとでは
どちらが軽量で負荷が少ないでしょうか?
また設計上どちら望ましいでしょうか?

23:nobodyさん
08/06/25 20:46:16
全部まとめてでおk

24:nobodyさん
08/06/25 20:48:58
>>20
手持ちの過去ログが45までしかないが、
今のテンプレにガラっと変わったとき前後に、
そんな話をしていた。
もう2年ぐらい前だったと思うけど。

25:nobodyさん
08/06/25 20:55:50
回答者の煽りや自演は、一切無視して質問者の負担だけ増やすのもどうかと思うよ。
回答する気もないくせに、回答者ぶって煽る奴が、このスレは多すぎる。
ID表示必須なら回答者にもそう義務づけるべきだな。

26:nobodyさん
08/06/25 21:03:01
いや別に回答者にはいらない

27:nobodyさん
08/06/25 21:10:46
>>20
あげるのがルール
それが気に入らないなら他いくかスレ作って一人で答えてやれ

しかし何度とあったループだなこれ

28:nobodyさん
08/06/25 21:16:20
本当腐ったスレだね

29:nobodyさん
08/06/25 22:01:00
>>22
パフォーマンスで言えば一括の方が有利。
IOにおいてシーケンシャルリードの効果をより期待できるし、
実行時間ではパーサの複数回初期化によるオーバーヘッドが減る。
メモリでは最大消費量が多くなる場合がある。
それはパーサがXML文章全体をDOMに変換する場合。
対処としてXMLReaderといったAPIの利用が考えられる。

設計で言えば、分割する必要はない。

30:nobodyさん
08/06/26 00:12:55
旧本スレまでみてきた

>>24
議論は一度も無い
くだ質スレでテンプレが変わったのが23から
22では次スレのテンプレに関して旧本スレのを貼っておく
というレスがあってその後議論されていない

旧本スレでIDに関する注釈が入ったのが17から
16のスレでもIDに関して議論は別にされていない
(この時点ではただage進行でと言う事のみ)

で、旧本スレのテンプレが現行の物に変わったのが34からだけど
旧本スレは34で終了しくだ質スレに統合

>>27
その上げるのがルールはどこから出てきたんだ

まともな理由がどこにも無かったわけだが
そして上げるのがルールと言ってる奴に聞いてもまともな回答がない

31:nobodyさん
08/06/26 01:31:36
こいつは何一人でがんばっちゃってるの?
質問者はageろって言われ続けてるんだからおとなしくageればいいんだよ。
ageてない質問者に回答する回答者はただの荒らし。

32:nobodyさん
08/06/26 02:00:27 LMAVX0ml
モジュール版PHPと、FastCGI+PHP(CGI)使った場合と、
どっちが速いですか?

33:nobodyさん
08/06/26 02:14:33
試せ

34:nobodyさん
08/06/26 05:51:28
IISでPHP標準サポートされるようになったんだね
知らなかった

35:nobodyさん
08/06/26 06:41:08
>>29
はいって何だよ。出来んのかよ。さっきから何度も。何がはいなんだよ。
出来もしねえ奴が軽々しくはいなんて言うんじゃねえよ。
わかってんのかよ。はいって言う事の責任の重さを。
社会勉強のつもりでやってんだったら辞めろおまえ。

36:nobodyさん
08/06/26 07:35:18
>>35
はい

37:nobodyさん
08/06/26 09:08:22
>>31
なにそのとりあえずやっとけみたいなのw

元々議論すらされてないのに
ageてない質問者やそれに答えるのが荒らしとか

38:nobodyさん
08/06/26 09:49:37
なんか前から思ってたけど、結構前から粘着質のキチガイが棲み着いてるよね。
やたら仕切るくせに、質問に答えることはほぼ皆無で、
毎回毎回、質問の形式にひたすらクレームを付ける。

こいつか……。

39:nobodyさん
08/06/26 10:06:02
>>37-38
とりあえずこっち池
スレリンク(php板)

40:nobodyさん
08/06/26 11:53:10 FZ89xb6m
ロボットハンドと画像認識装置を使って生産システムを構成する場合どのような制御システムになるか誰か教えてください


41:22
08/06/26 12:03:25
>>36
池沼氏ね。

>>37
全くそのとおりだなageてなくても答えろよなカス回答者しかいねえんだから。

>>38
お前もそんなくらだねえレスしてる暇があったら早く俺の質問に答えろ。

>>39
行かせる前に俺の質問に答えてからにしろ。

42:nobodyさん
08/06/26 12:03:46
んなもん全く知らないが、PHP向きではなさそうだな

43:nobodyさん
08/06/26 12:06:14 FZ89xb6m
わかりました、すんません


44:nobodyさん
08/06/26 12:26:59
>>41
>>29

45:nobodyさん
08/06/26 12:28:50
>>22
XML生成は無いんだよな?

46:nobodyさん
08/06/26 13:55:23
>>29
ありがとう。一括の方向でいきます。

>>45
とりあえずXMLは手書きで作ります。
余裕があればデータ編集も作りたいですが

47:nobodyさん
08/06/26 15:55:43
簡単に登録できるphpが使えるフリーのサーバーか、ブログありませんか?

48:nobodyさん
08/06/26 16:24:04
レン鯖板で聞け

49:にんにく ◆cxt6jyx9JU
08/06/26 17:42:16 8GCvPVyj
2ch tripper
のソースコードをみつけました。

URLリンク(nullpo.biz)

これの、検索結果を表示するページに、
いくつトリップが見つかったか表示したい
($triplist)の数を数えたい

のですがどうしたらよいのですか?
count($triplist);
では、配列じゃないので1と返されます。


50:nobodyさん
08/06/26 17:45:08
遅レスだが前スレ1000はいいセンスしてる

51:nobodyさん
08/06/26 17:49:39
>>49
数カウント用の変数作って、見つかったときに++
最後にそれを表示。

52:nobodyさん
08/06/26 18:01:06 xST1VWMi
dateでtime()のデータを年月日にすることは出来ますけど、
その逆はどのようにすればいいでしょうか?

53:nobodyさん
08/06/26 18:05:02
>>52
mktime
strtotime

54:nobodyさん
08/06/26 18:05:51
>>53
なるほど、よく分かりました

55:nobodyさん
08/06/26 19:41:59 4CdQjp6e
PEARのImage_Graphで棒グラフを作ると、
デフォルトでは縦の棒グラフになるのですが、
これを横にする方法はありますでしょうか?

Image_Graphは便利なのですが、日本語の情報が少なくて困ります;;
よろしくお願いします。

56:nobodyさん
08/06/26 20:17:38
>>55
URLリンク(pear.veggerby.dk)

57:◇832bhO5Akc ◆832bhO5Akc
08/06/26 20:41:15
PHPで、Z-Z BOARD
URLリンク(z-z.jp)
のトリップを作りたいのですが、作り方どうしたらいいかわかりますか?

どうやったら、作り方がわかるか教えてください。

58:nobodyさん
08/06/26 20:59:35
PHPでわら積み作業を助けてあげる事は可能でしょうか?
スレリンク(mnewsplus板)l50


59:nobodyさん
08/06/26 21:21:55
>>57
そこのソースを見る

60:◇832bhO5Akc ◆832bhO5Akc
08/06/26 21:34:06 8GCvPVyj
>>59
2CHトリップの作り方は晒してあったから簡単に作れましたが、
URLリンク(z-z.jp)のトリップはソースが見れないので作れません。
CGIソースの見方教えてください。

61:nobodyさん
08/06/26 21:39:46
管理人さんにメールする

62:◇832bhO5Akc ◆832bhO5Akc
08/06/26 21:42:26 8GCvPVyj
>>61
そう簡単には見せてくれなさそうです。
直接CGIソースの見方教えてほしいです。

63:nobodyさん
08/06/26 21:44:58
ソースが公開されてないのにわかるわけねえだろ
ハッシュのような不可逆な一方向関数で作られてるのが多いのに
解読しろっていうのも不可能
直接CGIのソースってなんだよw
サーバでもハッキングする気か?

ほんとこれだからコテトリップは嫌われるんだよ>>1氏ね

64:nobodyさん
08/06/26 21:46:07
管理人が見せないなら仕方ないだろ。
盗もうってことか。

65:nobodyさん
08/06/26 21:46:49 ythtWhVe
特定のサイトの仕様をここで聞くなんて変な奴だな
俺たちをエスパーか何かと勘違いしてないかw

66:◇832bhO5Akc ◆832bhO5Akc
08/06/26 21:59:06 8GCvPVyj
某トリップツールをハケーンしたのだが、ここの管理人はどうやってトリップ作ってるのだか…
URLリンク(brown.0web.cjb.net)

そういや前聞いた話なんだけど、セキュリティホールがなんとかでURLリンク(z-z.jp)のindex.cgiソースが見れるとか言ってた人もまたトリップ作ってたんだけど、セキュホあるなら誰か見てほしいぜ
お願い(´・ω・`)
#と幇助


67:nobodyさん
08/06/26 22:02:53
またお前かw
4桁の英数字らしいから、2chトリップを半分にすればいいじゃんw

68:nobodyさん
08/06/26 22:44:00
そう簡単には見せてくれないなら、
教えてくれる可能性もあるんだからメール出してみればいいじゃん

69:nobodyさん
08/06/26 22:50:19
てかググれば

70:nobodyさん
08/06/26 23:08:22
>>66
自分で適当に入れてできたトリップをでDBに突っ込んでるだけのお粗末なもの
それに気づけないようじゃ仮に生成方法がわかってもお前じゃどうもできないから諦めろ
好きなトリップを生成するためにソースが見たいとかいってるならなおさら諦めろ
無限ループで適当な文字列つっこんで好きなトリップと一致するまでやり続けるシミュレーターなんかは
作れるだろうがPHPじゃそういうのは向いていない
そしていい加減スレ違いなんだよ糞野郎

71:nobodyさん
08/06/27 00:34:24
・・・?

72:nobodyさん
08/06/27 02:00:18 Fo33kr6K
iframeでサイトを読み込んでいるのですが、
たまに物凄く重くてなかなか表示されない時があります。

例えば、一定時間以上かかった場合、途中までしか表示しない
と言う事は出来るのでしょうか?(PHPだけで
出来る場合、参考になる関数などを教えて下さい。


73:nobodyさん
08/06/27 02:05:47
flush

74:72
08/06/27 02:21:03
ありがとうございます。

ページの末尾(</body>の上)に
ob_flush();
flush(();

を追加したのですが、iframe内のサイトは
ページが全て読み込むまで表示されません。
やはり無理なのではないでしょうか?

75:nobodyさん
08/06/27 02:57:31
他のサイトを読み込んでるんだろ
そりゃ、あっちのサーバのレスポンスによるわな
つうか、凄い迷惑行為なんだけど?

76:nobodyさん
08/06/27 06:59:29
迷惑行為かどうかはその状況によるから何ともいえないが、
外部のサーバの読み込みを制御できるかどうかは論ずる間もないな

77:nobodyさん
08/06/27 08:56:23
fileでいったん読み込むようにしておいて、タイムアウト設定
って手が無いわけでもない。

78:nobodyさん
08/06/27 09:15:09
サーバ側でそんなこと可能なのでつか

79:nobodyさん
08/06/27 09:49:07
そもそもiframeの参照先を
PHPでどうこうできると思う思想がめでたいなと思う。

PHPで参照した参照先のHTMLを
そのままレスポンスとして吐き出すなら分かるが。


80:72
08/06/27 11:14:24
皆さん、ご指摘ありがとうございます。

サイトに登録されているリンク集を
ランダムで表示したいと思っていたのですが、
読み込み先の表示が遅くて一定間隔でページが
切り替わらないので、それで困っていました。

file_get_contentsでリンク先の内容を取得しようかともおもったのですが、
フレーム内に入れるのであれば、結局同じ事だと思いますし、
CSSでの疑似フレームでも<html>~</html>のソースが入ると誤表示されるので、
iframeを使うしかないと思い、「もし出来たら」というおめでたい発想でした。

とりあえず、無理なのが分かったので、諦めます。

81:nobodyさん
08/06/27 11:31:18
debian + apache2 + PHP Version 5.2.0-8+etch11
定義済みの文字型変数の中の$から始まる文字列に値を代入したい。
とりあえず例を作りました。

$arg = 'testString';
$parse = 'this is $arg';

var_dump($parse);
//string(12) "this is $arg"

eval('$outputString="'.$parse .'";');

var_dump($outputString);
//string(18) "this is testString"


$parseの中身を再評価して$argをtestStringにしたい、ということになります。
$parseの定義時にダブルクオーテーションでくくれよ。となると思いますが、たとえば関数の外から$parseが来る場合にはその手法は使えません。
正規表現で$arg等変数名を抽出して置換か、例のようにevalを使うか。
例で出したevalは微妙に重そうだし、コードの実行なので変な文字列が入ったら致命的な結果になりかねないので躊躇。
(たとえば何らかの拍子に
$parse = '";exec("Malicious command");echo"';が外部から入ってくるとか。)
それ用の関数とか用意されてないのかなと思い調べましたが見当たらず。

ダブルクオーテーションの文字型変数への代入時のパースがコンパイラの仕事かも・・・
$argがオブジェクトで__toString()の定義とかもありえるわけで、当然単純なパースだけでは無理かも・・・などと挫折気味。

どなたかお時間のある方、教えて頂けないでしょうか。

82:nobodyさん
08/06/27 11:33:50
正規表現で$で始まる変数を抽出したうえでevalして置き換えてみては

83:nobodyさん
08/06/27 11:38:49
>>80
読み終わらなくても次に切り替えちゃえばいいじゃないか?
javascriptの話しね。

84:nobodyさん
08/06/27 11:51:14
>>82
ご返答ありがとうございます。
悪意のあるコードが入ってくる可能性があるのは$parseの方なので正規表現で変数抜き取ってもeval使う時点でNGというか。
安全面では単純に正規表現の置換が良いのですけどね。

$parseがヤバイ事を忘れなければevalかなぁ。と思うんですよね。
でも三日経ったら忘れちゃうよなぁ・・・とか。
あとは$parseでダブルコーテーションのチェック入れるか。
それとたかが文字列組み立てるのにあまり処理コストかけられないという悲しき内情。

これは泥臭いコードにならざろうえないのですかねぇ

85:nobodyさん
08/06/27 12:24:34
正規表現でとって
定義済みの変数取得して
同じものがあれば置き換えでいいんじゃ

86:nobodyさん
08/06/27 12:37:16
>>80
html取得して中身編集してから出力するか
javascript使えばいくらでも制御できるんじゃ?

87:nobodyさん
08/06/27 15:24:53 H/xGfrQF
どなたか『Excel_Reviser』の最新版v0.30alphaをお持ちの方いらっしゃらないでしょうか?
現在配布を中止しているようで、どうにも入手できません。
もしいらっしゃったら、どこかへアップロードしていただけませんか?
よろしくお願い致します。

88:nobodyさん
08/06/27 15:30:03
>>87
今週末をメドに配布再開って言ってたけど。


89:nobodyさん
08/06/27 15:33:34 H/xGfrQF
>>88
それは確かな情報なのでしょうか?
実は仕事で使いたいと考えておりますので、入手の可否が重要なのです。
返答をいただいておいて失礼ですが、信じてよろしいでしょうか…?

90:nobodyさん
08/06/27 15:34:50
気になるなら、情報源を聞いて自分でも確かめりゃいいだろ

91:nobodyさん
08/06/27 15:39:47 H/xGfrQF
>>90
そうですね、大変失礼しました。

では >>88 殿、情報源を教えてはいただけないでしょうか?

92:nobodyさん
08/06/27 15:44:46
>>91
Excel_Reviserのフォーラムだよ。
Macで作ったXLSのテンプレートで
メモリ食いつぶす現象が出たらしい。


93:nobodyさん
08/06/27 15:47:35
途中でPOSTしてもたwww

俺も最新版欲しくて見に行ったんだけど、
そんな理由でまだ取れてないwww

Mac版のEXCELのファイル提供して、
そのときのコメントがそういう内容だった、
ってことがソース。
脳内ソース乙と言われても仕方ないwww



94:nobodyさん
08/06/27 16:02:18 H/xGfrQF
>>93
ありがとうございます!
またこまめにチェックしてみます。

予定通り、無事配布再開されることに期待…

95:nobodyさん
08/06/27 16:48:43 K7e2dC+6
すみません、質問します
var_dump()で
array(1) { [0]=> array(12) { ["title"]=> array(1) { [0]=> string(14) "タイトル11" }
["artist"]=> array(1) { [0]=> string(13) "出演者11" } ["musicGenre"]=> array(1) { [0]=> string(1) "2" }
["url"]=> array(1) { [0]=> string(5) "URL11" } ["kaisetsu_text"]=> array(1) { [0]=> string(24) "解説・レビュー 11" }
["DELmujiPic"]=> string(1) "1" ["DB_mujiPic"]=> string(1) "1" ["myWork"]=> array(1) { [0]=> string(1) "0" }
["act"]=> string(6) "確認" ["genre"]=> string(5) "Music" ["mode"]=> string(6) "modify"
["modifyId"]=> string(2) "26" } }

を返す配列 $postAry があります
この配列から"mode"抜き出して出力するにはどうしたらいいでしょう?
echo $postAry["mode"] としても何も表示されません
どなたか回答よろしくお願いします

96:nobodyさん
08/06/27 16:52:30
$postAry[0]['mode']

97:nobodyさん
08/06/27 17:49:38 K7e2dC+6
>>96
ありがとうございました
あと、本当に恥ずかしいんですが"title"を出力するにはどうしたらいいんでしょう?
echo $postAry["title"][0] でも echo $postAry[0]["mode"] でもうまくいきません


98:nobodyさん
08/06/27 17:52:15
$postAry[0]["title"][0] かな?

99:nobodyさん
08/06/27 17:55:40
print_rで整形して見れ

100:nobodyさん
08/06/27 18:20:09
文字列の配列を , で連結するにはimplodeだけど
連結するときにそれぞれの文字列を ' ' で囲いたい。

泥臭く書くのはいくらでもできるけど 余計な変数を使わずに
エレガントに格好よく書ける?

101:nobodyさん
08/06/27 18:22:15
>>100
echo "'".implode("','",array('a','b'))."'";

102:JS
08/06/27 18:27:42
2chの掲示板の最新版スクリプトをダウンロードしたいのですが、どこかありますか?

103:nobodyさん
08/06/27 18:29:33
ぐぐる

104:JS
08/06/27 18:30:40
2007/12
から更新がな(ry

うらるあったら教えてください

105:nobodyさん
08/06/27 18:35:07
やふる

106:nobodyさん
08/06/27 18:36:25
>>101
これはひどい

107:nobodyさん
08/06/27 19:24:05
>>100

function add_quote($value){
return "'".$value."'";
}

implode(", ", array_map("add_quote", $array));

108:nobodyさん
08/06/27 20:00:06 FgqYA5k2
windows版PHP 5.2.6入れてみたのだけど、どうしてもphp_pgsql.dllの読み込みエラーになってしまうので、
windows版のPHP 5.2.5を探しています!

どなたか情報下さい


109:nobodyさん
08/06/27 20:04:48
>>108
URLリンク(www.php.net)

110:nobodyさん
08/06/27 20:18:42 FgqYA5k2
>>109
本当にありがとうございました!

111:nobodyさん
08/06/27 20:31:31 XX5w51Rl
php6やMYSQL6の話題が全然出てこないけど、
みんな使っていないの?

使っていたら、不具合の感じや良かった点とか聞きたいけど。

112:nobodyさん
08/06/27 20:41:41
どっかの廃スレで自演でもして盛り上げる

113:nobodyさん
08/06/27 20:45:27
ゲームの新作感覚かよ

114:nobodyさん
08/06/27 20:48:54 XX5w51Rl
っているか、php6は名前空間が使えるようになって、Javaと肩を並べる位になっているし、
MYSQL6だって、新しいデータタイプが増えた上に、処理が格段に早くなっているらしい。

なのに、話題にならない方が可笑しいだろ?
枯れた技術が最高だとか、詰まらない執着心を持った人の集まりかと勘ぐりたくなる。

115:nobodyさん
08/06/27 21:02:17
じゃあ話題出して

116:nobodyさん
08/06/27 21:04:05
仕 事 で 使 っ て ま す

117:nobodyさん
08/06/27 21:04:30
いや、だから>>114で話題書いたじゃん。

118:nobodyさん
08/06/27 21:07:24
ここはくだ質
雑談する場所ではない

119:nobodyさん
08/06/27 21:11:12
>>117
そんなの遥か昔に語りつくされてんだけど

120:nobodyさん
08/06/28 02:38:35
MySQLは板違いで論外として
PHP4/5はcurrentでまだ随時アップデートされてるんだけど
枯れた技術ってどういう意味?


121:nobodyさん
08/06/28 06:13:03
枯れた技術っていい意味で使うけどイメージ悪い感じがするね

122:nobodyさん
08/06/28 12:43:30
PHP4は枯れたと言っていいと思うが・・・
あとはセキュリティフィックスぐらいだろ?


123:nobodyさん
08/06/28 12:53:42
>>122
あれは枯れる前に捨てられたという感じが強いので
あまり信用する気にはなれない

124:nobodyさん
08/06/28 13:35:38
◆◆◆◆◆◆◆◆◆毎日新聞社による日本人への誹謗中傷◆◆◆◆◆◆◆◆◆

・母親は受験勉強をする息子の学力向上のためにフェラチオをする
・日本人女性の55%は、出会ったその日に男と寝る
・ファストフードは女子高生たちを性的狂乱状態におとしいれる
・ティーンたちはバイアグラを使ってウサギのようにセックスをする
・女子高生は、刺激のためにノーブラ・ノーパンになる
・日本の最新の流行 : 70歳の売春婦
・老人の売春婦の人気にもかかわらず、日本では小学生の売春婦にも仕事がある
・日本の若い看護婦は売春婦に勝る
・24時間オルガズムが止まらない病気で苦しむ日本人女性の数が増えている
・15未満の子供を対象とした疑似ポルノが日本に蔓延している
・OLの72%が、セックスをより堪能するために何らかのトレーニングを受けている
・人妻は気分転換の目的で昔の恋人に抱かれに行く
・主婦は郊外のコイン・シャワーで売春をしている
・日本男子は柔道や空手の部活で男相手に童貞を捨てている
・ほとんどすべての漁師は海でマンタとSEXしている
・まだ10代の少年から退職した老人までみんな2980円の手コキを利用している
・六本木のあるレストランでは、食事の前にその材料となる動物と獣姦する

※同社が全年齢向けコーナーで七年以上にわたり世界に向けて配信していたものの一部です
※同社の行為は日本人への偏見や人種差別、婦女暴行、幼児虐待を助長するものです

◆毎日新聞の英語版サイトがひどすぎる まとめ@wiki
 URLリンク(www9.atwiki.jp)
◆毎日新聞問題の情報集積wiki
 URLリンク(www8.atwiki.jp)

つまり日本人なら
URLリンク(www.vipper.net)

125:nobodyさん
08/06/28 14:55:55
PHPの吐いたバイトコードを見るにはどうすれば良いですか?
どんな風にコンパイルされるか知りたいです。

126:nobodyさん
08/06/28 18:08:12 Eb3UB5kL
質問です。
みんな、アップロードファイルのタイプ判別ってどうやってますか?
$strVal = $_FILES['upFile']['type'];
if($strVal != "image/jpeg"){
//JPGじゃないです
}
…というやり方で判別してるんですが、firefox2or3とsafari3では判別できてるのに
IE6ですべてを「JPGでない」と判定してしまいます
問題点やうまいやり方があれば教えてください。お願いします。

127:nobodyさん
08/06/28 18:15:28
>>126
やったこと無いけど、自分ならまず、
IE6の場合に$strValが何になってるか見ますけども。

128:nobodyさん
08/06/28 18:24:27
各フォーマットを調べ一致するか確かめる
画像ならGDがエラーにならないか確かめる
セキュリティの点から、ブラウザから送られた付加情報を信用してはいけない

129:nobodyさん
08/06/28 18:49:36
>>126
image/jpegが
image/pjpeg
にでもなってんじゃないの。

130:nobodyさん
08/06/28 18:55:47
拡張子でいいじゃん
いちいちバイナリを解析するなんてキチガイ沙汰

131:nobodyさん
08/06/28 20:42:10
>>130
URLリンク(d.hatena.ne.jp)
こんなエントリが。

RFI(リモートファイルインクルード)とかやられると困ったりするんじゃね。

132:126
08/06/28 21:14:07
>>127-130
ありがとうございました 対応できました
助かりました

133:nobodyさん
08/06/28 22:19:13 VC7dBI7a
session_start()でエラー出ちゃいますー
php5.2.6です

Warning: session_start() [function.session-start]:
Cannot send session cache limiter - headers already sent (output started at C:\web\test\jisaku.php:6) in
local\test\test.php on line 6

単なるソースはセッションによるアクセスカウンターです
<html>
<head>
<title></title>
</head>
<body>
<?
session_start();
if (isset($_SESSION["counter"])) {

$_SESSION["counter"]++;

print($_SESSION["counter"]."回目の読み込みです。");

} else {

$_SESSION["counter"] = 0;

print("はじめての読み込みです。");

}
?>
</body>
</html>
長くなってすいません。お願いします

134:nobodyさん
08/06/28 22:19:45
>>133
マニュアル

135:nobodyさん
08/06/28 22:24:47
早漏

136:nobodyさん
08/06/28 23:00:20
>>133
エラーメッセージに書いてある通り、HTTPヘッダが出力された後にsession_startしてもエラーでる。
<html>の前に処理して下さい。

137:nobodyさん
08/06/28 23:10:51 6GRXIQcO
しつもんです。
php5.2.3です。
LAN内の話なんですが、
サーバからクライアントのMACアドレスを知りたくて、

$arp = `arp クライアントIP`;
echo "$arp";

っていうphpを
クライアントからアクセスしてみたんですけど空の結果しか返ってきません。
arpってphpじゃ実行できないんですか?
ちなみにarpじゃなくてlsとかなら普通に結果が表示されます。
あとサーバではarpは問題なく実行できます。

138:nobodyさん
08/06/28 23:52:39
apacheの枠で軽労働しかしていないPHPに無理難題を言ってやるなボケ。

139:nobodyさん
08/06/29 00:23:07 no0HV7ZX
PHP5で、UTF8でプログラムしてます
hoge.php?category=パスタ、スパゲッティ でリンクされたページで、
$var = $_GET['category'];
print htmlspecialchars($var);
としたところ、
「パスタ、スパゲチEィ」と出力されます
IE6です。fx3やsafariではなりません、正常に書き出されます。
どこが問題なのでしょう? 教えてください、よろしくお願いします

140:nobodyさん
08/06/29 07:01:51
そもそもURL欄に全角文字入れるのが間違いで、urlencode()しておくべきかと思われます。

141:nobodyさん
08/06/29 08:26:52
PHPはスクリプト自体をメモリにキャッシュして高速に動作できますが
それでもpythonには速度で負けますでしょうか。いろいろ調べても見つからなかったので
ご存知のかた教えてもらえればうれしいです。

142:nobodyさん
08/06/29 09:24:33
>>141
URLリンク(golf.shinh.org)


143:139
08/06/29 10:40:30
>>140
なるほど firefoxで無事に動いてたんで気づきませんでした
知らなかった  ありがとうです

144:nobodyさん
08/06/29 11:24:46
質問:basic認証以外で各ディレクトリに閲覧制限をかける方法はありますか?
   目的としては、アップロードした各会員専用画像ファイル置き場を、本人と管理者以外からアクセスできなくしたいです。
   会員は複数で、会員同士が共有するわけではなく、あくまで個人用ファイル置き場、という条件です。

145:nobodyさん
08/06/29 11:32:55
このスレ的に解答するなら、各ディレクトリはhttpdが直接アクセスできない場所にして
phpで会員の有効チェック後に画像を出力するコードを書け

146:nobodyさん
08/06/29 11:37:53
なるほど。早速その方向性でやってみます。ありがとうございました。

147:nobodyさん
08/06/29 13:19:40
>>146
自分は使ったこと無いけど、Apache なら mod_xsendfile 使うとパフォーマンス的に幸せになれるかも。

148:nobodyさん
08/06/29 17:48:58
>>142
これってコード見れないの?

149:nobodyさん
08/06/29 20:47:57
mod_xsendfileについてもっと詳しく書け

150:nobodyさん
08/06/29 21:00:10 96o86FsF
phpが有名なサイトでは全く実績がないのはなぜでしょうか?

ことごとく、Javaで作られていると聞きます。
派遣で仕事をしている人間に聞くと、
phpはソースが筒抜けで、ユーザーに見えてしまうと言っていました。

私のサイトのphpで作っていますが、
プロがみると、ソースが見えてしまっているのでしょうか。

ただ、ソースが見えなければブラウザをレンダリングできないわけですから、
見えること自体ごく自然のことだとも思いますが、
それを仕様として提示していないことが、大手制作会社の不信感を招いているのかもしれません。

151:nobodyさん
08/06/29 21:23:49
お前は何を言ってるんだ

152:nobodyさん
08/06/29 21:53:42
日本語でおk

153:nobodyさん
08/06/29 21:56:36
これはひどい

154:nobodyさん
08/06/29 21:58:14
有名なサイトと言われても曖昧で判らないな。
Javaの需要があることは認める。
ソースが筒抜けって誇張表現なんじゃない。
ソースが見えなければブラウザをレンダリングって意味不明。
大手制作会社の不信感?

155:nobodyさん
08/06/29 21:58:18
マジレスする気も失せるなw

156:nobodyさん
08/06/29 21:59:51
まずJavaで作られている有名サイトを列挙していってもらいたいな

157:nobodyさん
08/06/29 22:10:42
> 有名なサイトでは全く実績がない

ヤフーって無名サイトだったんだ・・・

158:nobodyさん
08/06/29 22:12:51 96o86FsF
言葉足らずですみません。
たとえば、派遣会社の求人検索サイトで、
PHPよりもJavaの方が検索数が多く、
また、内容も保険や金融など大規模なサイトと思われるものばかりです。

Javaも同じインタープリタ言語ですし、
中間コードにコンパイルしたから速度が優位だといっても、
PHPだってeAccelelatorなど中間コードにコンパイルして速くする方法が存在するわけで、
速さ優位だとは思いません。

で、結局はソースが見えるか見えないかですが、
ブラウザがサーバーからソースを受信してレンダリングする際に、
ブラウザにとってはソースが筒抜けになるわけですよね。Javaにしても。
パケット透過ツールを使用すれば一目瞭然です。

だから、それを仕様として挙げていないphpの不透明感が、
大手制作会社がクリティカルミッションに使おうとする気に
させないのだと考えたのですが。開発会議でクライアントに突っ込まれる可能性もありますし。

159:nobodyさん
08/06/29 22:14:17
お前開発しちゃ駄目、絶対

160:nobodyさん
08/06/29 22:14:57
楽天もPHPでしょ?

161:nobodyさん
08/06/29 22:15:58
>>159に同意

162:nobodyさん
08/06/29 22:20:12
>>158
発注や求人はJavaが多いかもな。
Javaでサイト作る需要>JavaでWebサイト作れる人ってことでしょ。

それなりのところなら自分でPHPでサイト作れるだろ。
レンタルでPHPが使えるサイト多いしプロじゃなくても作れる。

JavaもPHPもブラウザが実行しているわけじゃないよ。
Webサーバで実行してその出力が送信されブラウザはHTMLを表示してるんだよ。
ということでそれ以降の発言はクライアントにまだしてなくて良かったね。

163:nobodyさん
08/06/29 22:20:46
あまりにかわいそうだからマジレスするけど・・・

PHP(or JAVA)のソースと、HTMLソースの違いがわかってからここに来てね♪
おたふくソースとも違うからね☆

164:nobodyさん
08/06/29 22:22:11 96o86FsF
phpのスレでphpを否定するような発言をしてすみません。
ずっと疑問に思っていたので、ぶつけてみたのですが、
期せずして反感を買ってしまってしまって申し訳ありませんでした。

私は純粋に技術論をお聞きしたかっただけです。他意はないです。
この質問は撤回します。

お騒がせしました。

165:nobodyさん
08/06/29 22:22:46 3JlRTfJh
.

166:nobodyさん
08/06/29 22:26:20
>>150におすすめなオライリー本↓

167:nobodyさん
08/06/29 22:26:37
test

168:nobodyさん
08/06/29 22:27:45
ユーザからphpのソースが見えるとか言ってる人とどう技術論を語ればいいんだ

169:nobodyさん
08/06/29 22:30:32
クライアント側で実行すると勘違いしちゃってる人だろ>>164
なんで、こんなところにいるんだろう

170:MEH
08/06/29 22:30:38 3JlRTfJh
どうもこんにちは。

メタルミッキーというサイトにある通常レス式掲示板を、スレッド式掲示板にしようと頑張っているのですが、スレッド一覧をどのように取得したらよいかわかりません。

よし、やって教えてやろう!という方は是非教えてください。待ってます。
参照:
URLリンク(metalmickey.genin.jp)



171:nobodyさん
08/06/29 22:31:40
>>158
俺は趣味でPHPをちょっと勉強しているだけでよくわからないが、
PHPやJSPなどのHTMLのなかにスクリプトとかを混在して書くタイプは大規模に向いてないかもね。
PHPのバージョンでだいぶ違うとかも関係してるかな。
Javaでのは大規模が多いから人手がいるのかもね。
>>164
反感買ったのはその通りと思うけど
俺個人的には撤回でなかったことにすることよりも
ブラウザがJavaやPHPを実行しているわけではないと判ってくれたよね。

172:nobodyさん
08/06/29 22:38:15
反感は買ってないと思うぞ
どちらかと言うと呆れて開いた口が塞がらない感じ

173:nobodyさん
08/06/29 22:39:00 96o86FsF
たびたびすみません。

ソースが見えるというのは、たとえば、
共通のphpとしてinclude("./common.inc");とした場合に、
エラー表示が、common.incの何行目にエラーが出てしまうと、
悪意のユーザーがcommon.incを直接指定すると見えてしまうからです。

もちろん、Javaでもエラー画面でstacktraceで表示されますが、
それをたどってどこのクラスでNullPointerExceptionが出ているとわかっていても、
直接ソースをみる方法はありません。それはコンパイルされているからです。

あと、Javaはwebサーバーで実行されるという発言されている方がいましたが、
Javaのコードは通常アプリケーションサーバーです。

ソースが見える見えないという点で言えば、やはりJavaであり、
クリティカルミッションに使われる理由なのではないかと思った次第です。

色々とご意見を頂きましてありがとうございます。

174:nobodyさん
08/06/29 22:41:21
>>173
一つだけ忠告しておくとだな、開発会議に参加しないほうがいいぞ
特にクライアントがいる会議にはダメ絶対

175:nobodyさん
08/06/29 22:42:43
俺はPHPは無理強いされない限りは絶対に使わん超アンチPHPな人間だが、別にJavaより劣るとも脆弱だとも思わんよ。
単に、使う人間がPHPしか使えず、PHPで入門したプログラミング初心者ばかりだから、PHPは低く見られるんだよ。
悪いのはPHPではなく、使う人間のスキルが低過ぎること。
たとえば、PHP界隈では、rfc2616やrfc2822を熟読していたら、ほとんど神扱いだろ。
他のWeb系の言語・開発環境では、ありえない。だって、それが最低限度だから。

176:nobodyさん
08/06/29 22:48:45
>>173
common.incはパーミション変えたりcommon.phpに変えるべきだってどっかで見かけたことある。
普段そんなこと忘れてるけど。

Javaはwebサーバーで実行されるって俺が言ったんだけど
>Javaのコードは通常アプリケーションサーバーです。
俺には難しくてわかりません。
Javaアプレット?

Javaが使われていることは認めるがソースが見える見えないに拘るのがよくわからない。
Javaのよさってそこ?

177:nobodyさん
08/06/29 22:50:09
>で、結局はソースが見えるか見えないかですが、
>ブラウザがサーバーからソースを受信してレンダリングする際に、
>ブラウザにとってはソースが筒抜けになるわけですよね。Javaにしても。
>パケット透過ツールを使用すれば一目瞭然です。

よく分からんのだが、これはどういう意味?

178:nobodyさん
08/06/29 23:00:26
なんだよビビったじゃないかよ。
(アプリケーションサーバを調べてみた)
そりゃ3階層システムのミドルにPHPはないね。

179:nobodyさん
08/06/29 23:00:26
>>175
> たとえば、PHP界隈では、rfc2616やrfc2822を熟読していたら、ほとんど神扱いだろ。
> 他のWeb系の言語・開発環境では、ありえない。だって、それが最低限度だから。
技術者の善し悪しって、別にそんなところじゃないだろw。
RFCなんかを例に出して奴の方が痛い。

javaがphpに比べて優れているのは大規模な開発の設計がやりやすい事。
あとは、堅牢性や分散処理する際など、色々メリットは大きい。

180:nobodyさん
08/06/29 23:00:28
>>173
見られて困るものは見られる場所に置かねーよwwww

181:nobodyさん
08/06/29 23:02:28
圧倒的にphp、ひいてはインタプリタ言語の知識が足りないんでは。

182:nobodyさん
08/06/29 23:06:24
>>178
URLリンク(itpro.nikkeibp.co.jp)

183:nobodyさん
08/06/29 23:10:03
>>173
ミドル層のJavaとフロント層のPHPを比較することがおかしくない?

PHPを使うことがありえないけどミドル層ならPHPのソースがユーザに見えないでしょ。
フロント層で変な文字受け取ってエラーでしょ。

俺って煽っていると思われて反論されたのかな。

184:nobodyさん
08/06/29 23:11:42
趣味でやってる俺でも、見られちゃまずいものはドキュメントルート外に置いたり、.htaccessでdenyするよ……。
Webアプリのセキュリティの知識足りないんじゃ。

185:nobodyさん
08/06/29 23:12:21
>>182
XSSって怖いね

186:nobodyさん
08/06/30 00:38:40
ところでサーバーでそのまま出力できるファイルをincludeしてはいけません。かしこ

187:nobodyさん
08/06/30 00:49:40
このスレの住民って、評論家タイプばかりで実務やったことない人ばかりのようだね。

188:nobodyさん
08/06/30 00:52:38
私の統計によればプログラマの90%は自称です。

189:nobodyさん
08/06/30 00:53:07
>>173
納品先のクライアントがソースコードを見れるってことの間違いではないの。
PHPは確かにソースそのまま納品するから、内容見られるかなぁとか思うけど。

190:nobodyさん
08/06/30 01:11:01
ぜんどがーどがあらわれた

191:nobodyさん
08/06/30 02:12:26
だいたい本業でphpやっている奴がここに来るわけないじゃん。
こんな残業続きで、2chすらみている暇がないんだから。
俺は、今は過労によるパニック障害で休養中だ。

192:nobodyさん
08/06/30 04:14:37 7Iaq6WLH
apache1.3と2.2
PHPを走らせるのに適したバージョンはどっちですか?

193:nobodyさん
08/06/30 04:15:37
>>192
好きなほうどうぞ
今更1.3xを入れるやつはいないと思うが

194:nobodyさん
08/06/30 05:13:01
【やりたいこと】
テンプレ通りに作ったhtmlファイルが50個ある。
各ファイルのn行目とm行目のデータだけを取り出し、別ファイルにまとめたい。

///////////////現在のアルゴリズム//////////////
1.fgetsをn回空ループ
2.N行目でfgets。
3.空ループ
4.M行目でfget。
array[][n.m]に保存
///////////////////////////////////
array[][n,m]をファイルに出力
///////////////////////////////////
とやっているのですが、無駄が多いように感じます

fseek()も試してみたのですが、ファイル先頭からのバイト数は変動するので、中々うまくいきません。
ファイルポインタを任意の行の先頭に移動させる関数はないのでしょうか?

195:nobodyさん
08/06/30 05:34:32
file関数

196:194
08/06/30 05:58:21
>>195
fileを使うとソースは綺麗になるのですが、ファイル全体を変数に収納してしまうため、処理速度が極端に低下してしまいました。


197:nobodyさん
08/06/30 06:15:27
それならその空ループが一番軽くて早いと思われ

198:nobodyさん
08/06/30 06:15:58
>>194
別ファイルに書き出すだけの処理ならPHPでやるようなことでもない
処理速度を求めるのであればPHPでやることじゃないね

199:nobodyさん
08/06/30 09:43:52
こんなことするバッチ作って連結
100行目だけ出力
head -100 ファイル名 | tail -1

200:nobodyさん
08/06/30 09:52:37
↓のようにしてファイルをダウンロードさせています。
これをブラウザで「保存」を選ぶと正常に保存できるのですが、「開く」を選ぶとうまく開けません。
どうもアプリケーションが開こうとしたときにはテンポラリファイルがなくなっているようです。
「開く」を選んでも正常に動作させるにはどうすればいいでしょうか?

header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Content-Type: application/octet-stream');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.$filesize);

$fp = fopen($filepath, "rb");
while (!feof($fp)) {
$contents = fread($fp, 1024*1024*5);
echo $contents;
}

201:nobodyさん
08/06/30 12:46:25
どうして肝心な所の情報を書かないんだろう

202:nobodyさん
08/06/30 13:06:05
どうして予想される場合わけがたった3つなのに答えられないのだろうか。

203:nobodyさん
08/06/30 13:17:50
質問者が煽ってるなw

204:nobodyさん
08/06/30 13:21:19
>>201
お前さんだって知りたい情報(肝心な所)が何なのか書いてないじゃないか。

205:nobodyさん
08/06/30 15:02:15
ダウンロードにコンテンツタイプって変な話だよな

206:nobodyさん
08/06/30 15:16:50
そうか?

207:nobodyさん
08/06/30 16:02:23
Content-Typeの指定がないとブラウザに内容表示したりメモ帳開いたりするかもしれないじゃないか。

208:nobodyさん
08/06/30 17:08:50
とりあえず、こちらで。
MySQL連携のプログラムを、UTF-8で作っています。
で、文字エンコーディングを変更するコード SET NAMES は アプリケーションから使うとSQLインジェクションの脆弱性につながる、
との記事を見つけました。
幸いにも、自分が使っているサーバーは mysqli_set_charset() が使えるので助かりましたが、この先の参考にも聞いておきたく思います。
本当に アプリケーション内で SET NAMES を発行するとSQLInjectionの脆弱性につながるのでしょうか。
また、もし、mysqli_set_charset 等が使えないサーバーの場合、どうすればよいのでしょう?

PHPなのかスレスレですが、ご助言いただけると幸いです。

209:nobodyさん
08/06/30 17:12:08
コンテンツタイプがコンテンツタイプでなくダウンロードの命令としていつまでも利用される歪みに疑問
仕方ないでしょうけど

210:nobodyさん
08/06/30 17:13:29
ダウンロードするためのアプリケーションが起動する、、、無理があるかなあ

211:nobodyさん
08/06/30 17:22:56
>>208
何で危険なのかがわかってればいいよ。
特に問題になるのは、エスケープ関連(SET NAMESだとエスケープAPIは
現在どのエンコーディングを使ってるかわからない)だし、
自分のとこの運用でどうしてるのか把握して問題ないのならいいでしょ。

212:nobodyさん
08/06/30 17:35:21
ほんとに下らない質問ですまん。
PHPでWEBの仕事してるプログラマーって、よくある一般的なイメージな残業、休日出勤な
プログラマーよりは残業時間とか少ないの?
人によりけりだと思うが、軽い気持ちで答えてほしい。

213:nobodyさん
08/06/30 18:00:50
スレ違いどころか板違いですよ

214:nobodyさん
08/06/30 18:15:19 LUnLRZ5m
URLリンク(nullpo.mobi)の仕組みが知りたいです

215:nobodyさん
08/06/30 18:28:19
1.クエリ取得
2.ランダムで1個選択
3.飛ぶ

216:208
08/06/30 18:45:53
>>211
まだSQLの知識が薄く、照合順序とか多すぎてよくわからないので、理解に時間がかかりそうですが……。
とりあえずは、SET NAMES は使わずに mysqli_set_charset なり mysql_set_charset なりのAPIレベルのもので、設定することにして、
SQLの知識をある程度蓄えてから、対策を練ることにします。

お早い回答、ありがとうございました。

# でも、持ってる参考書とか読んでも、文字コードの設定は SET NAMES...

217:nobodyさん
08/06/30 18:56:15
参考書に書いてあることなんて10%くらいしか当てにならないぜ?

218:nobodyさん
08/06/30 19:19:20
10冊買えば大丈夫

219:nobodyさん
08/06/30 19:25:18
>>212
案件の1つにPHPが入ってくるというのはあるが
だいたい普段は.他の言語でWeb以外のことをやっていたりする
つまり一緒だ
プロジェクトに遅れが出れば残業も休日出勤もあるし
そもそも早く終わったからといってノルマ達成で帰っていいよというわけにはいかない
やることがなければ自習になるが普通は何かしら手伝ったりすることになる
PHP専門でやってるような会社はないに等しい
大学生のベンチャーならありえるが
そういうところも将来的にはPHPのみってことはなくなってくる
まぁそんな都合のよい仕事はないので諦めてください
給料は都会のバイト並でよければ地方で探せばまったりな会社あるかもね

220:nobodyさん
08/06/30 19:48:51
>>215
クエリは取得出来るんだけどランダムに分割させる仕組みがどうしても分からないんです…

221:nobodyさん
08/06/30 19:59:29
array_rand

222:nobodyさん
08/06/30 20:05:31 Eb0PY41u
ちょっとした図書検索やりたいのに
意外にサンプル少ないんで泣いてまつ

書籍追加(確認窓もほすぃ
編集
削除
検索

モヌヌメの書籍、webあったらおしえて~
apache2
php5
mysql5
linux


223:nobodyさん
08/06/30 20:09:16
PHPなんとかスーパーサンプルとかいうやつは?読んだことないけど

224:nobodyさん
08/06/30 20:20:34
>>200
何でだろうね?
小さいサイズのテキストファイル
Content-Transfer-Encoding指定なし
Content-Length指定なし
readfile($filepath);
だと開けた。

225:nobodyさん
08/06/30 20:41:23
>>223
立ち読みしたけど厚いだけだった
orz
筋肉痛になるじゃねーかw

226:nobodyさん
08/06/30 21:44:30
>>>222
基礎PHP。
DBとの連携が、まんま、それ、図書検索。

227:nobodyさん
08/06/30 23:08:40
>>226 ㌧クス!さっき紀伊国屋で立ち読みして買ってきたお!
たしかにこれはそのままだ~!

ってか書籍スレもあったのねw

228:nobodyさん
08/07/01 00:35:17 A4l+wdTU
require()でテキストファイルを呼びたいんですが
HTMLの前に$textfile="todo.txt"; として
書いてるんですが

require($textfile)で呼び込むと
todo.txtは呼んでるがそのままソースが全部出てきてしまいます
<HTML>
<HEAD>
<BODY>
内容・・・・

</HTML>
みたいな感じです。PHPの設定なんでしょうか?


229:nobodyさん
08/07/01 00:36:43
テキストファイルを呼んでるのにソースが出来たらまずい?ワケワカメ

230:228
08/07/01 00:37:45 A4l+wdTU
あ、すいません
勘違いしてました・・・
癖でTODOリストなのに・・・HTMLで書いてしまってました
申し訳ありません・・・


231:nobodyさん
08/07/01 00:39:30
HTMLではないということ?todo.txtの中身が表示されてはまずいの?何をどうしたいの?

232:228
08/07/01 00:45:06
すいません簡単なことで質問してしまって
テキストエリアにtodo.txtの編集書き込みが出来るようなソースを
書いていたんですが、todo.txtはテキストなのに
HTML文章で書いてしまっていただけです
HTMLで書いてたからタグが出てきたので気づいて消したら普通に
文章だけ表示されました。すいません

233:nobodyさん
08/07/01 14:51:09
たまにURLで
test.php?test
という形式で値の受け渡しをしているのを見かけるのですが
どうすれば受け取れるのでしょうか?

234:nobodyさん
08/07/01 14:56:17
環境変数QUERY_STRING

235:233
08/07/01 15:05:09
>>234
「php 空 name 値」とかでぐぐってて涙目でした
ありがとうございました!

236:nobodyさん
08/07/01 16:03:57
PDO SQLiteで、トランザクションを開始すると、PDO::ATTR_TIMEOUTが無効になるんだが
これってバグ??

237:nobodyさん
08/07/01 16:17:22
PDOを使うのはやめておけ。
原因不明のメモリーエラーで落ちる。
MySQL使った時、それで原因が特定できず大変な目にあった。

preparedを使いたいなら、自分で実装してくれ。それくらい簡単だろ?

238:nobodyさん
08/07/01 16:20:14
>>237
prepared statement使うならMDB2でいいじゃん。

239:nobodyさん
08/07/01 16:27:58
>>237
236ではないが、マジか。
この前使ってみて使いやすかったから、今度からこれ使おう、とか思ってたのに。
まだ、取れてないの? そのバグ。

240:nobodyさん
08/07/01 16:49:37
>>237
落ちたときのバージョンを教えて欲しい

241:nobodyさん
08/07/01 17:09:30
>>240
バージョンは、5.1.6

WindowsXP、BSD6.2の両方で使って、どちらでも落ちた。

起動してから時間が経つと、突然DBへ接続できなくなる。
再起動すると直る。永続的コネクションを利用しても利用しなくても落ちる。
で、同じ構成でphp標準のmySQL関数でやったら直った。

242:nobodyさん
08/07/01 17:57:28
今Linuxの5.1.6でPDOを使ってるけど、その現象は出てないな
5.2.1でprepareの無限ループバグをfixedってあるけど、使うSQLによって発生するんかね

243:241
08/07/01 19:06:47
思い出した、接続時にエラーは起きないけど、
参照するとデータがかえってこない。更新すると失敗する。っていう現象。
何回もデータが可笑しいのかと確認しちゃって原因究明にすごい時間がかかった。

速度が上がったわけでもないし、プリペアードのためだけだったから、すぐに標準関数に変えた。
それ以内何も起こらず、DBは連続稼働78日目。

244:nobodyさん
08/07/01 19:26:12 r/sMGUKq
データベース関係の話があがっているので、質問させて下さい。

私のシステムは、データベースへ接続するクラスを用意していまして、
あとは、各業務クラスに以下のようなコードを書いています。

$sql = "INSERT INTO ...";
$databaseClass->($sql);

あちらこちらの業務クラスに生のSQLが書いてあります。
抽象的なご質問ですが、このような実装をどう思いますか?

市販されている解説本を読むと、テーブル毎にデータベース接続用のクラスを分けろと
書いているものもあるのですが、それだと複数のテーブルをjoinする場合、
どちらのクラスに入れるべきか迷うので、そのような実装はしていませんでした。
結構、正規化しているテーブルが多いので、joinするSQLが少なくありません。

データーベースに関する良いクラス設計指針があればアドバイスお願いします。

245:nobodyさん
08/07/01 19:37:44
テーブル毎のCRUDを行うクラスは分けるとして
joinしてるSQLを発行するクラスは業務毎に纏めてクラスを分けてるな、俺は
業務モデルから業務DAOとテーブルDAOを呼ぶ感じで

246:nobodyさん
08/07/01 22:52:13 ZeCzXD4I
IIS+PHPでサバ立ててPHPにアクセスしたら認証がかかるんですが、これってどうすれば解除されるんですか?
普通のhtmlにアクセスしたら認証なんてないのに

247:nobodyさん
08/07/01 23:45:17 FRuokrT4
すみません、質問です
\1000という表示がIEとSafariで バックスラッシュ+1000 になってしまいます
\部分はSQLから引き出してるのではなく、PHPに直書きしてます
winXP、apache2、PHP5.2.3でUTF8を使っています どう対応すればいいでしょう?
アドバイスお願いします

248:nobodyさん
08/07/01 23:58:57
>>247
PHPはブラウザに依存しないサーバサイド言語で
すべて同じ結果が得られるようになっている
ブラウザによって表示が違うなどの不具合は
PHPとは関係ない
バックスラッシュになるのはブラウザの言語指定がおかしいからとか
そういったことが要因
\ではなく文字参照&yen;(&は半角で)で出力するなど工夫すべし

249:nobodyさん
08/07/02 00:42:01
>>236
エラーが起きる最小限のソースを。
>>241
5.2.0から5.2.6でPDOに関する数十ものバグが修正されているし、MySQLでおきたエラーがSQLiteで起こるとは限らない。

250:nobodyさん
08/07/02 00:45:28
>5.2.0から5.2.6でPDOに関する数十ものバグが修正されているし、
そんな情報どうして知っているの?
関係者?それとも逆コンパイルしてソースをcompareしたとか???

251:nobodyさん
08/07/02 00:55:51
お前は何を言ってるんだ

252:nobodyさん
08/07/02 00:58:37
バグ修正したって、もしかしてお前のプログラムのバグかよ???w

253:nobodyさん
08/07/02 02:09:08 TfVbJDoG
>>248
ありがとう! 感謝します!

254:nobodyさん
08/07/02 02:29:28
>>250
ChangeLogとか見ないの?死ぬの?

255:nobodyさん
08/07/02 05:51:58
>>246
IISの設定変更汁

256:200
08/07/02 10:40:54
header ("Cache-Control: must-revalidate, post-check=0, pre-check=0");
でできました。
URLリンク(jp2.php.net)

257:236
08/07/02 10:42:53
DBは a.db で、テーブルはcreate table a (i ingeger);とする

コマンドラインより、a.phpを実行後すぐに別端末からb.phpを実行する。
b.phpにおいてbeginTransaction();をコメントインすると、
PDO::ATTR_TIMEOUTが無効になる。
と、まぁこんなかんじです。

a.php ---------------
<?php
$pdo = new PDO('sqlite:a.db');
$pdo->setAttribute(PDO::ATTR_TIMEOUT, 5);
$pdo->beginTransaction();
$pdo->exec("insert into a(i) values(5)");
sleep(100);
$pdo->rollBack();
?>

b.php ---------------
<?php
$pdo = new PDO('sqlite:a.db');
$pdo->setAttribute(PDO::ATTR_TIMEOUT, 5);
//$pdo->beginTransaction();
$sth = $pdo->prepare("insert into a(i) values(10)");
if (!$sth->execute()) {
var_dump($sth->errorInfo());
}
//$pdo->rollBack();
?>

258:nobodyさん
08/07/02 10:47:24
ATTR_TIMEOUTはデータベースとの通信に対するタイムアウトです

259:nobodyさん
08/07/02 11:42:57
>$pdo->setAttribute(PDO::ATTR_TIMEOUT, 5);
>sleep(100);
ここは笑うところか

260:236
08/07/02 11:56:55
>>258
う~ん、そういわれると仕様通りなのかなぁ
でも、トランザクションを開始しないときは、ちゃんと5秒待機するんだよな
sqlite_busy_timeout()と同じように動作させたいだけなんだが・・・

>>259
ソース見てわからないなら、笑ってたらよいと思いますよ

261:nobodyさん
08/07/02 11:59:11
なんだこのふてぶてしい態度w

262:nobodyさん
08/07/02 12:05:15 LR4oDanJ
phpで、
function array_collect($key, $array) {
$list = array();
foreach ($array as $arr) {
$list[] = $arr[$key];
}
return $list;
}
のような関数が標準であったりしませんか?

263:nobodyさん
08/07/02 12:06:18
トランザクション中じゃなかったら通信してない状態なのでは。

264:nobodyさん
08/07/02 14:44:04
>>262
array_fill_keysは?

265:nobodyさん
08/07/02 15:20:48
暇だったからJavaScriptでジャンケンゲーム作った

<html>
<head>
<title>じゃんけんぽん!</title>
<script type="text/javascript" language="javascript">
<!--
function Janken()
{
alert("あなたの負けです!");
}
-->
</script>
</head>
<body>
<input type="button" value="グー!" onclick="Janken()" />
<input type="button" value="チョキ!" onclick="Janken()" />
<input type="button" value="パー!" onclick="Janken()" />
</body>
</html>

266:nobodyさん
08/07/02 15:32:33
うーん、負けたぜ。

267:nobodyさん
08/07/02 15:40:56
>>265
ちょーつえー
どんなアルゴリズム使ってんだ?

268:nobodyさん
08/07/02 16:06:21
×アルゴリズム
○アルゴニズム

269:nobodyさん
08/07/02 16:15:23
>>268
何それ?

270:nobodyさん
08/07/02 17:18:28 YKp2VoP0
/htdocs
  |
  +-/admin  <- 要認証
  |
  +-/form
     |
     form.php

こういうディレクトリ構造になっているところに、
/admin以下にBASIC認証やDigeset認証をかけました。
認証されていないform.phpから、認証がいるadminディレクトリ以下のファイルに書き込むことは可能ですか?

試してみるとOKだったのですが、もしかして事前に自分で認証してしまってそれで通ってしまったのかな?
と不安になったので質問しました。

271:nobodyさん
08/07/02 17:22:13
書き込むときにhttpd通ってないでしょ?
影響するのはパーミッションですね。

272:nobodyさん
08/07/02 17:41:28 l+FlpTuR
IMGのアクセスカウンタにリファラを付加することはできないでしょうか?

URLリンク(localhost)
<img src="URLリンク(example.com)" />

PHP側でリファラを取得すると、リファラが「URLリンク(localhost)」になってしまいます。
直接PHPを埋め込まないとダメなのでしょうか・・・?

273:nobodyさん
08/07/02 17:51:45
>>272
これでどう?
<img src="URLリンク(example.com)'HTTP_REFERER']" />

274:nobodyさん
08/07/02 17:53:53 l+FlpTuR
>>273
それって「$_SERVER['HTTP_REFERER']」という文字列を渡してるから意味なくね?

275:nobodyさん
08/07/02 17:59:20
それをヒントに意味あるものにしてみると言う発想はないのか

276:nobodyさん
08/07/02 18:00:03
書かれたまんまにしか理解できないのかよ・・・

277:nobodyさん
08/07/02 18:22:59
  おチンチンびろーん
   ∩___∩
   | ノ      ヽ/⌒)
  /⌒) (゚)   (゚) | .|
 / /   ( _●_)  ミ/
.(  ヽ  |∪|  /
 \    ヽノ /
  /      /
 |   _つ  /
 |  /UJ\ \
 | /     )  )
 ∪     (  \
        \_)

278:nobodyさん
08/07/02 19:15:19
>>274
お前はどこのスレでもダメだなぁ。


279:nobodyさん
08/07/02 19:40:20
俺もわからん
phpなのか

280:nobodyさん
08/07/02 19:55:08
そもそも呼び出し元がPHPならIMGタグ無くても解析できる。
JavaScriptが使える条件になるがJavaScriptで取って渡す。

281:nobodyさん
08/07/02 22:07:13
phpで仕事を2年くらいしていますが、
データベースと接続して、文字列操作するだけの仕事に尽きるのですが、
phpというかwebの仕事って、みんなこんな単調な仕事なのでしょうか?

もっと、特許がとれる位のアルゴリズムを考えるのが、
プログラマーの仕事だと思っていたので、
仕事に対するマンネリ感が積もっています。
大学で専攻した知識もほとんど役に立ちませんし、がっかりです。

282:nobodyさん
08/07/02 22:08:42
phpでやってるからだろw

283:nobodyさん
08/07/02 22:12:39
>>282
phpのスレで、phpの悪口を必死に昼夜分かたず書き込んでいるって何?馬鹿?バッカ?ハッカ?

284:nobodyさん
08/07/02 22:28:36
>>281
早く独立して会社おこしてphpで特許を取れるアルゴリズムを開発しなよ
仕事を貰ってる立場で、しかもどうせ自分で営業した案件じゃないんだろ?
それでがっかりとか、いい身分ですなあ

285:nobodyさん
08/07/02 22:29:16
自分のふがいなさを、言語のせいにしたいお年頃

286:nobodyさん
08/07/02 22:31:07
自分で志願して発明して特許取れ
待って与えられた仕事してたら何時の間にか特許取れてたなんてことない

287:nobodyさん
08/07/02 22:34:58
web関係でも特許取ってるじゃん

288:nobodyさん
08/07/02 22:35:57
そのつまらん仕事を楽しくする特許を取る。
で、特許申請に金かかったが誰も使ってくれない。

289:nobodyさん
08/07/02 22:41:11
あのグーグルですらほとんどの社員は単調な仕事だそうな

290:nobodyさん
08/07/02 22:50:56
もっと面白い意見をお伺いできるかと思って投稿したのですが、
うちの会社の上司と大して変わらないご意見ばかりでした。

思うに、言語のような言語の壁がなく、労働集約型のプログラマーの仕事は、
数年後にはほとんど安い外国の労働市場に持って行かれるのではないでしょうか?
職業としてプログラマーとして従事している方は、もう少し向学心をお持ちになられた方がいいと思います。

少なくても、生産資源が乏しく技術を売りするしか世界で存在価値を示せない日本が、
このような低付加価値の仕事ばかりをしていたら、ますます国力が衰えていくだけです。

291:nobodyさん
08/07/02 22:53:06
その低付加価値の仕事をしてる人に言われても説得力が全くありません

292:nobodyさん
08/07/02 22:56:28
ここはPHPの技術的な質問をするスレですよ
スレ違いなので、というより板違いなので仕事の愚痴は別板でお願いします。

293:nobodyさん
08/07/02 22:57:41
散々レスした挙げ句、都合が悪くなるとすれ違いとか板違いといって逃げるのですね。

294:nobodyさん
08/07/02 23:02:14
>>290
そんな仕事してるのはお前の能力が足りなかったせいだw
まぁこんなところでわざわざ釣り乙www

295:nobodyさん
08/07/02 23:09:19
だから勝手に取れ
特許料もらえるまで赤字だから研究・特許なんてそうそう許可できん。
いい特許アイデアできたら上司と喧嘩してでも予算とれ

296:nobodyさん
08/07/02 23:09:19
>>281-294 以上、俺の自作自演でした^^

  おチンチンびろーん
   ∩___∩
   | ノ      ヽ/⌒)
  /⌒) (゚)   (゚) | .|
 / /   ( _●_)  ミ/
.(  ヽ  |∪|  /
 \    ヽノ /
  /      /
 |   _つ  /
 |  /UJ\ \
 | /     )  )
 ∪     (  \
        \_)

297:nobodyさん
08/07/02 23:10:36
物足りないんだったら車輪の再発明でもすれば?w

298:nobodyさん
08/07/02 23:30:38
>281,290
見てる世界狭すぎ。



え、あれ?釣りなの?w

299:nobodyさん
08/07/02 23:36:45
上司に言ったんかそんな話w

300:nobodyさん
08/07/03 04:37:49
率直に話し合った方がいいだろ

当たり前だが営利企業は斬新だろうが普通だろうが金になる事が正義

301:nobodyさん
08/07/03 14:31:17 3X5/4UgX
ちょいと質問と言うか相談ですが、
複数のディレクトリーがあってその中には複数のhtmlファイルが入っています。
複数のhtmlのそれぞれの更新日時を調べて更新日時順で
ファイル名・更新日時・ページタイトル を一覧で出すにはどんな流れで書いていけばいいんでしょうか?
全ファイルの一覧や上位10件とかもあればなお良いのですが。


302:nobodyさん
08/07/03 14:35:30
>>301
htmlのそれぞれの更新日時を調べる。
更新日時順にファイル名・更新日時・ページタイトル を出す。

303:nobodyさん
08/07/03 15:09:10
>>301
readdir
 ディレクトリだったら再帰
 ファイルだったら必要な情報を調べる。配列にでも格納
 次のファイルへ
全部調べたら好きなように加工


304:nobodyさん
08/07/03 15:16:00 3X5/4UgX
レスありがとう。
各ファイルの更新日時・URL・ページタイトルなど必要な情報は個別に取得できていて
すでにsitemapとしてgoogleに登録してるのですが、
それを更新日時順に並べるのが出来ていない状況です。
更新日時とファイル名の関連付け?がどうすれば出来るのかって事でしょうか。



305:nobodyさん
08/07/03 15:17:34
Arrayに入ってるならソートすればいいんじゃ?

306:nobodyさん
08/07/03 15:30:45
$dirurl[] = '../test1/';
$dirurl[] = '../test2/';

foreach($dirurl as $key =>$value){
$dir = @opendir($value);
while($file = @readdir($dir)) {
if (!is_dir($file)){

@include_once($value.$file);

if($sitemap_ok != '1') continue;
$pegedata = explode("." , $value.$file);
$lastupdate = @date("Y-m-d\TH:i:s\+09:00",@filemtime($value.$file));

$sitemaps = <<<_EOD_
<url>
<loc>URLリンク($SERVER_NAME$pegedata[2].html<)
<priority>$priority</priority>
<changefreq>$changefreq</changefreq>
<lastmod>$lastupdate</lastmod>
</url>
_EOD_;
echo $sitemaps;}}
closedir($dir);}
今こんな感じです。それぞれ必要な内容は取り出せているのですが、これを更新日時順で並ばせたいと思っています。
arsort($xxx,SORT_NUMERIC);などで更新日時順で並べれる事は分かるのですが、どこをどうすればいいのやら…
もう1ど最初から作り直した方がいいでのでしょうか。

307:nobodyさん
08/07/03 15:36:49
>>304
DBに突っ込んでソート汁

308:nobodyさん
08/07/03 15:40:30
>>307
DBすか!やっぱりその方がいいんでしょうね。
将来の事もあるのでsqlを少し勉強した方がよさそうですね。
あまり長くなるのも迷惑なので勉強して出直してきます。失礼しました。

309:nobodyさん
08/07/03 15:45:17
>>308
Arrayに突っ込んでソート

310:nobodyさん
08/07/03 15:49:46
>>306
たとえばarsort使いたいなら
$array_nanika[更新時間unix_time] = ファイル名;
みたいな配列を一度作って、arsort。

ただコレだと同じ時間に更新されたファイルがあるとダメだからもう一工夫は要るね。
なんにせよ一度配列に収めろってことです

311:nobodyさん
08/07/03 18:51:15 0wf3u7xU
クラスをnewするときに引数を渡したいのですが、
引数のチェックに失敗したときはクラスの作成自体を中止したい場合ってどうすればいいんですかね?


class hoge{
public function __construct($fuga){
if(!$fugaのちぇっく){
//ここで自分自身を破棄?
return false;
}

}

みたいな

312:nobodyさん
08/07/03 19:05:16
それPHP?
まあ例外投げるんじゃね

313:nobodyさん
08/07/03 19:22:00 NDuREgXX
負荷が高いサイトを運営していますが、
例えば、Apacheを80番と81番で平行運用することで負荷分散を図ることは可能でしょうか?
例えば、スクリプトAは80番で処理して、スクリプトBは81番で処理するということです。
これで、速度が倍になれば、Apacheを数十個起動して、速度を10倍位に上げたいと思います。

現在は、一ページ返却するのに10秒から15秒かかり、クライアントから遅すぎるのではないか、
と言われておりまして、これ以上クライアントに我慢してもらうことも難しくなっています。

314:nobodyさん
08/07/03 19:27:05
すげー馬鹿だなw

315:nobodyさん
08/07/03 19:30:08
天才現る

316:nobodyさん
08/07/03 19:51:15
>>313
スレ違い。ここはPHPスレ
君のような馬鹿が来るところじゃない。
まったくこれだからApache厨は馬鹿といわれる。


317:nobodyさん
08/07/03 20:11:30
スイーツ(笑)

318:nobodyさん
08/07/03 20:32:43
80番のスクリプトAはサーバAに処理を依頼して、81番のスクリプトBはサーバBに
処理を依頼すれば、倍とはいかないまでも速くなるぞ
オススメ

319:nobodyさん
08/07/03 20:59:00
>>318
その回答だとWebサーバAとWebサーバBを、同一のハードで運用するかもな。


320:nobodyさん
08/07/03 21:40:28
>>319
ヒントありがと!

VirtualBoxつかってやってみる!

321:nobodyさん
08/07/04 00:16:00
  おチンチンびろーん
   ∩___∩
   | ノ      ヽ/⌒)
  /⌒) (゚)   (゚) | .|
 / /   ( _●_)  ミ/
.(  ヽ  |∪|  /
 \    ヽノ /
  /      /
 |   _つ  /
 |  /UJ\ \
 | /     )  )
 ∪     (  \
        \_)

322:nobodyさん
08/07/04 08:49:58
ラウンドロビン的な?


323:nobodyさん
08/07/04 09:52:39
ロードバランスしたいわけか
1台じゃ意味ねー

324:nobodyさん
08/07/04 12:26:47
というかどこに時間かかってるのか
原因も突き止めず対策しても・・・

325:nobodyさん
08/07/04 16:17:56
インデント無しで見にくいxmlを
$path = "xml_test.xml";//XMLパス(ファイル or URL)
$dom = new DOMDocument("1.0");
$dom->encoding = "UTF-8";
$dom->formatOutput = true;
$dom->load($path);
$dom->save($path);
で整形させようと思ったら出来ない。
$pathの中身が何も変ってないのは何故?

さくらインターネット、FreeBSD 6.1-RELEASE-p23 i386 、Apache/1.3.39 (Unix)、PHP 5.2.5
です

326:nobodyさん
08/07/04 16:23:58
>>325
別名でsaveしても変わらないならそういう仕様なんだろ。

327:nobodyさん
08/07/04 16:28:22
>>325
書けてるか確認した?
echo $dom->save($path);

328:たまちゃん
08/07/04 17:36:17 DM0Om0jz
PHP 正規表現

PHPの正規表現を勉強しているのですが、どうもうまくいきません。今回は一番簡単な正規表現をつくったのですが、どうやったらよいのでしょうか。

$h = '(名前)様の会員IDは(abc12)で、(5)番目に偉い方です。';

とあったら、名前、会員ID、番号を抜き出すには、どのようにしたらよいのでしょうか?
実際に()は使用しません。
また、$1 や $2 などを使いたいのですが、解説までできればお願いしたいです。
一応自分なりに考えました。
preg_match('/^*.([a-zA-Z0-9]){2}([0-9]+)','名前$2.ID$1 $3 番目に偉い');
()を使えば、2つマッチさせたいときなどに分けることができるのでしょうか?
(名前)様は(数字)
例:太郎様は5

このとき太郎様という日本語の文字を取得するには/^(+.)([0-9])$/

ここで名前は$1になり、数字は$2になるのでしょうか?
どのような時に$1や$2がどっちがどっちなのかは、どのようにしたらわかるのでしょうか?


長々した質問すいません。わかるかた教えてください。

329:nobodyさん
08/07/04 18:28:40
>>328
正規表現道場
スレリンク(php板)

330:nobodyさん
08/07/04 18:36:56 ya62/r1Y
昨日、Apacheの複数起動で質問したものですが、
全く役に立ちませんでした。
phpやっている人の大半はApacheを利用していると思いますが、
Apacheを毛嫌いする理由がよくわかりませんし、
Apacheというより、phpの論点だと思ったので、ここで質問したのですが。
がっかりというか、呆れています。

331:nobodyさん
08/07/04 18:40:38
スレ違い

332:nobodyさん
08/07/04 18:42:27 ya62/r1Y
>>331
スレ違いというより、むしろあなたの勘違いです。

333:nobodyさん
08/07/04 18:47:04
まぁまぁ、そう熱くならずに自分のおならの臭いを嗅いでエクスタシー感じようよ!

334:nobodyさん
08/07/04 18:48:38
>>327
確認しましたがしっかり書けていました
ファイル名をフルパスでも試して見ましたが同じでした

うーん、formatOutputってあんま意味ないのか…
がっかり

335:nobodyさん
08/07/04 18:55:24
>>330
一回のリクエストで10秒掛かるのの処理を分散した言って事?

336:nobodyさん
08/07/04 18:59:20
数万行のCSVファイルを読み込み、指定した行列のものを取り出す場合では、
数万行のファイル一つを読み込み表示させる方法と
数万行のファイルを分割して、それぞれ読み込み表示させる方法では速度に違いはでてきますか?
どちらが効率よいでしょうか。

337:nobodyさん
08/07/04 19:02:05
DBを使う

338:nobodyさん
08/07/04 19:20:06
>>336
例えば1000行ごとにファイルを分けて1100行目なら二つ目のファイルを読み込むってことか?
こっち

339:nobodyさん
08/07/04 19:20:33
>>337
でたなDB厨

340:nobodyさん
08/07/04 19:29:11
任意のテキストファイルを読み込み、その内容をブラウザ上に表示
と、いうことをやりたいです。

プログラム上でテキストファイルを指定し、表示させることまでは出来ました
ですが、『任意のファイルを選択』させることが出来ません
何か良い方法や考え方は無いでしょうか?

教科書など持っていないので、オススメの本やサイトがありましたら、紹介していただけるとうれしいです

341:nobodyさん
08/07/04 20:37:53
誰が選ぶんだ。俺か?断る!

342:nobodyさん
08/07/04 21:17:16
>>340
ターゲットディレクトリ内に存在するファイルの個数を取得して、
その数だけの範囲を持つ整数の乱数=nを発生させて、
該当するn番目のファイルを開くようにすれば良いんじゃね?


343:nobodyさん
08/07/04 21:23:09
>>330
これ、釣りじゃないの?

こんな知識、というか思考力で過負荷になるようなサイト構築できるのか?
信じられん。よほどサイトコンテンツが良いのか、サーバにMSXでも使って
いるんじゃないのか?

344:nobodyさん
08/07/04 22:36:40
>>340
input type="file"

345:nobodyさん
08/07/04 22:53:21 zZLzuSUy
いまだにXPとか使ってるヤツって何なの?一般人なの?
スレリンク(liveplus板)

346:nobodyさん
08/07/04 23:22:17
>>343
我々の想定外のリソース超消費ロジック組んでるんだとオモ

347:nobodyさん
08/07/05 03:42:00
数万行のファイルならすぐに過負荷になる。PHPのようなブラウザ表示デバッグだと、その時点で気付くはず。

348:nobodyさん
08/07/05 03:52:36
>>347
たかだか10MB程度のファイルで?

一行256バイト×5万 = 12,800,000 = 約12MB

349:nobodyさん
08/07/05 04:08:23
凄まじい密度だな

350:nobodyさん
08/07/05 04:14:55
密度? CSVファイルで?
なんのこといってんの?

351:nobodyさん
08/07/05 04:17:59
お前ら早朝に喧嘩してないで、
ジョギングでも行ってこいよ。もう外は明るいぞ。

352:nobodyさん
08/07/05 04:19:18
<?xml version="1.0" encoding="UTF-8"?>
<head>
<score sort_no="2">
<score sort_no="1">
<score sort_no="3">
<score sort_no="4">
</head>
こんな感じのxmlファイルをsort_noでソートして保存しようと思って、simplexmlで読み込んで
usort、uasort、uksortやったけど全部ダメだった
まぁオブジェクトだから当然と言えばそうなんだけど、オブジェクトをforeachする時に出てくる順番を変える方法教えて下さい
php5です

353:nobodyさん
08/07/05 04:36:38
出来ました
foreach($dom->score as $value){
$dom2[]=$value;
}
uksort($dom2,"sort_list");
こんな感じで
リファレンスって難しいなあ

354:nobodyさん
08/07/05 04:53:16
お前は何を言ってるんだ

355:nobodyさん
08/07/05 04:55:12 FcvNsP01
出来てなかった…

356:nobodyさん
08/07/05 08:16:24
>>348
とりあえず一回、「PHP 配列 メモリ」で検索してみたほうがいいんじゃない。
メモリ使用量はかっこいいぜ。

357:nobodyさん
08/07/05 09:02:09

      ∩___∩
   (ヽ  | ノ      ヽ  /)
  (((i ) /  (゜)   (゜) | ( i)))   …なんちゃってねっ! チンポっ☆
 /∠彡    ( _●_)  |_ゝ \
( ___、    |∪|    ,__ )
    |      ヽノ  /´
    |        /

358:nobodyさん
08/07/05 11:33:06 oP1dT0fT
test.php?1の場合、$no=1のようにGETリクエストの値を動的に変数に入れたいんですけど、どういった方法が存在しますか。

359:nobodyさん
08/07/05 11:45:07
noなんてどこにも出てきてないのに動的にとか意味がよく分からない

360:nobodyさん
08/07/05 11:46:38
>>358
$no = $_SERVER['QUERY_STRING'];

361:nobodyさん
08/07/05 12:49:00
>>358
適当なフレームワークのソース呼んで、ルーティング処理パクレ

例えば、
symfonyなら /index.php/1を
/index.php/hogeModule/hogeAction/no/1みたいにしてくれるのを設定ファイルでかけるから

362:358
08/07/05 13:01:14 oP1dT0fT
>>359-361
ありがとうございます。
参考にします。

363:nobodyさん
08/07/05 13:06:33
いやそれだけかよ。言葉足らずなんだからちゃんと説明しろよ。

364:nobodyさん
08/07/05 16:40:16 7nNiVjXj
>>363
言葉が足りていても、私の時には全然回答もしてくれませんでしたが。
Apache複数起動で悩んでいる中年SEより。

365:nobodyさん
08/07/05 16:50:08
。・゚・(ノД`)・゚・。

366:nobodyさん
08/07/05 16:50:15
しつこいな
回答あるだろ

367:nobodyさん
08/07/05 16:52:18
複数起動はかえって負荷かかる

368:nobodyさん
08/07/05 16:59:30
>>364
何を根拠に言葉が足りていたとw

369:nobodyさん
08/07/05 17:05:28
>>364
たとえ2つPHP実行しても速くならないよ。
玉子焼き1000個同時に焼いても1秒で焼けない。1個と同じ時間かかる。

370:nobodyさん
08/07/05 17:05:53
負荷分散の対策が、どういった理屈で複数起動にたどり着いたのかが不思議。
同一サーバーでの複数起動って意味だよね?何かあるんだろうか。
それとも日本語が不自由で考えてることをちゃんと文章化できていないのか。

てか、どっちにしろPHPとはまったく関係ないからスレ違いになるのか・・・

371:nobodyさん
08/07/05 17:09:04
遅い原因調べないSEはいなくなって欲しい。

372:nobodyさん
08/07/05 17:13:56 7nNiVjXj
前にも書きましたが、スクリプトがAとそこから呼び出しているBがあります。
スクリプトAは、2000行以上ありますが、0.1秒程度で終わりますが、
スクリプトBは、400行しかないのに、10秒前後もかかります。

そのことから、スクリプトAを80番ポートで動かし、
スクリプトBを10分割して、81~90番ポートで動かせば1秒で終了するという見積もりです。

ただ、やり方がよくわかりません。
スクリプトBが遅いのも原因不明です。
phpがインタプリタ言語だから遅いって言ってしまえばそれまでですが、
だからといって10秒は遅すぎます。

負荷分散する方法としてこれ以外に思いつきません。

373:nobodyさん
08/07/05 17:16:26 7nNiVjXj
もう一つ付け加えると、Apacheはマルチスレッド処理といって、
平行処理ができると聞いています。phpの中だけで並行処理ができる方法があれば、それを教えて頂く方が簡単ですが。

374:nobodyさん
08/07/05 17:16:51
ソースうp

375:nobodyさん
08/07/05 17:19:32
その前に、その400行で何をやっているの?
ざっくり400行じゃなくて、遅い箇所があるとおもうけど。

376:nobodyさん
08/07/05 17:24:01 7nNiVjXj
スクリプトBでは、単にデータベース(MySQL)と接続して、
データを取得して更新して、取得したデータをスクリプトBに返す処理しかやっていません。
MySQLは、処理速度が速いデーターベースと聞いておりますし、
それ以外では、文字列を編集する処理をやっていますが、それはデータベースにデータを渡す際の
エスケープ処理です。ソース全体を呼んでみましたが、特に遅いと思われる箇所もありませんでした。

377:nobodyさん
08/07/05 17:28:11
じゃあDBが速くならないとPHPが速くても速くならないよ。

378:nobodyさん
08/07/05 17:30:44
>>376
とりあえずさぁ、そのスクリプトに時間計測するコードを入れて、
一番遅い所を一行に絞って、そのコードをココに貼ればわかるよ。

379:nobodyさん
08/07/05 17:42:07
どう考えても処理のある点がボトルネックになってるだろうに
phpはインタプリタ言語だから遅くても仕方ないと
納得する発想がPGとしてありえないってw
てか最初からずっと同じこと言われてるじゃん。少しは質問の仕方も進歩してくれ。

380:nobodyさん
08/07/05 17:52:45
プログラムする人ってこんな能書きをダラダラ言う人多いね。
キモイ。

381:nobodyさん
08/07/05 17:54:33
>>376
マルチスレッドが知りたいのなら、「PHP マルチスレッド」でググリなよ。
ここで説明するより分かり易いところがいくつか見つかるよ。

Apache複数起動とかポートがどうとか、
PHPとは関係ないことを言うから、スレ違い、ネタだと判断されたんだよ。
「マルチスレッドを利用する方法を知りたい」だけでいいじゃん。

382:nobodyさん
08/07/05 18:04:06
マルチスレッドも関係ないだろw

383:nobodyさん
08/07/05 18:05:40
正直その程度の知識で金もらって仕事してんの? と思うわけだが
できない事はできないって言うのも仕事の内ですぜ

384:nobodyさん
08/07/05 18:06:06
>>376
> データを取得して更新して、取得したデータをスクリプトBに返す処理しかやっていません。

えーと、ウェブアプリに限らずほとんどの処理は

データを取得して、更新して、取得したデータを何かに渡す物ですが?

その処理の内容で遅くないと判断できるわけが無いよね?

いいか、あんたがヘボだから、あんたが作ったソフトが重いんだ。
技術不足なんだよ。あんたは。

385:nobodyさん
08/07/05 18:12:56
>>376

君には難しいことを言ってもわからないと思うから
技術者じゃなくてもわかることを聞くねw

サーバー費は月いくらかかってる?

386:nobodyさん
08/07/05 18:19:34
もう答えが出てるなら、まったく関係ないところをネチャネチャ叩くなよ気持ち悪い奴らだな

387:nobodyさん
08/07/05 18:20:04
>>383
できないって最初から言ってるのにどんどん小難しい案件が舞い込んできます。
当然やりますが。でも出来ませんっていつも言います。

388:nobodyさん
08/07/05 18:28:07
物理的に台数増やしてロードバランス、これ
でもDBサーバが先に悲鳴をあげるだろうから
レプリケーションもやっとけ

389:nobodyさん
08/07/05 18:36:15
>>387
口で言うだけなら誰でも出来るんだよ。

390:nobodyさん
08/07/05 18:51:52
>>382
関係なくはないだろう。早くなるとは思えんが。

391:nobodyさん
08/07/05 18:55:18
ボタンを押すと飛ばすようにするにはどうすればいい?

print"で<a href=~>~</a>
で、リンク生成は出来るんだが、

392:nobodyさん
08/07/05 18:58:30
URLリンク(www.tagindex.com)
ここのページの様にフォームに入力してからボタンを押すと、各検索エンジンに飛ばしたいんだけど。

393:nobodyさん
08/07/05 19:00:32
ネタじゃなかったのか…。そんなに案件が降ってくるなら他の専門家に
任せて自分はちょっとピンハネの方が顧客も自分も幸せだと思うぞ。

現在の技術うんぬんよりも、解決方法にたどり着く術が間違っているから。

394:nobodyさん
08/07/05 19:20:33
>>392
「検索エンジン php」

395:nobodyさん
08/07/05 19:23:08
ネタか真性か判断するPHPコードを教えてくん。

396:nobodyさん
08/07/05 19:33:45
>>394
㌧、php配布されているのじゃなく、自分で作りたいんです

397:nobodyさん
08/07/05 20:57:26
その検索エンジンのサイトにやり方出てるだろ

398:nobodyさん
08/07/05 21:17:40
>>387に対する>>389の返答が分かりません。教えてください。

399:nobodyさん
08/07/05 21:18:45
いい加減荒らすのはやめてくれ

400:nobodyさん
08/07/05 21:26:54
>>396
なんだかPHPじゃなくてHTMLのformとinputの使い方の質問ぽい気がするんだが。
まあ俺には難しくてわかんないや。

>>398
わからないがあまり教えてほしいとは思わなかった。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch