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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/03/06(火) 15:39:46ID:naBsdy1Z
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 40
http://pc11.2ch.net/test/read.cgi/php/1172151461/

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

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ http://pc10.2ch.net/php/subback.html
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで http://pc10.2ch.net/db/subback.html
0369nobodyさん2007/03/09(金) 11:03:36ID:???
>>368
調べたらそうなっていました。offにしたら表示されました。
ありがとうございました。
0370nobodyさん2007/03/09(金) 11:05:26ID:???
logeof() と getlog() の中身を見ないことにはコメントできないぜ!
0371nobodyさん2007/03/09(金) 11:10:26ID:wPvny8V5
掲示板の作り方を、簡単に説明してくれている書籍があったら教えて下さい。
ファイル3,4くらいのプログラミングでできてるものだとうれしいです。
0372nobodyさん2007/03/09(金) 11:32:30ID:???
>>366
ログの集計ってユーザからリクエストされるたびに毎回リアルタイムでやってんの?
普通は集計結果をファイルなりDBなりに保存する形で、バックグラウンドで処理しとくだろ。
そういったバッチ集計スクリプトではメモリの使用量はあまり制限しないものだ。
Apacheプロセスみたいにいくつも同時に起動してメモリを食いつぶすわけじゃないからな。
0373nobodyさん2007/03/09(金) 11:33:52ID:???
>>371
多分、あなたのいう「簡単」というレベルで掲示板作成を説明した
書籍はないと思う。

http://www.phpweb.jp/lineboard/
なんかのサンプルと、PHPの書籍をにらめっこしながら作るのが
いいだろう。
0374nobodyさん2007/03/09(金) 11:38:26ID:???
>>366
どんな大量の調査対象ファイルが存在するんだ?

>>325 は説明用の簡易スクリプトだとは思うが
1000や2000個くらいなら、なんとかなると思うけど。
03753742007/03/09(金) 11:41:12ID:???
>>362を読み飛ばしていた
すまん
0376nobodyさん2007/03/09(金) 11:46:16ID:???
調査対象ファイル数が10万近いってのも尋常じゃない気もするが
0377nobodyさん2007/03/09(金) 11:57:43ID:???
サイト上のHTMLと画像が全部で10万って話であって
読み込みログファイルは1日1ファイルのようだが。
レンタルのサービスでもやってりゃ10万くらい普通だわな。
ま、省メモリで処理したいなら普通はmysqlなりのDB使うんでない?
そもそも毎日10万の項目を集計するなら結果の保存先をDBにすべきだろうし。
0378nobodyさん2007/03/09(金) 12:05:46ID:???
>集計したいファイル数は10万弱程度なのですが、
>ログファイル自体は 100万行以上 x 日数分 ありまして

俺ならさっさとPostgreSQLかMySQLにぶちこむ。
てか、そういうサイトでログ集計はファイル数のカウントだけってのはどうなのかという気もするが。
0379nobodyさん2007/03/09(金) 12:05:50ID:???
まあ自力解決できないスキルなら、扱わないほうがいいレベルの事案ってことだな
外部委託でもしろよ
0380オナニスト ◆MRmxpjiK.2 2007/03/09(金) 12:26:46ID:???
川崎に爆弾を落とす発言
犯罪予告

DELL価格情報 その69
http://pc9.2ch.net/test/read.cgi/pc/1173367505/84

84 名前:名無しさん[sage] 投稿日:2007/03/09(金) 11:59:02 0
こないだDELLに20パークーポンくれって頼んだら
「そんなん無理に決まってるでしょ!」って怒られた
仕方なくポチッて次の日HP見たら

30パー+送料無料

になってた
川崎火の海にしてやる
0381nobodyさん2007/03/09(金) 12:34:15ID:???
スレでネタにしてたコピペ改変を他所のスレにまで投下せんでも
0382nobodyさん2007/03/09(金) 12:45:29ID:???
犯罪予告っていっても特定個人団体じゃないし、
警察もそんなんじゃ動かんよ。
0383nobodyさん2007/03/09(金) 13:05:31ID:???
mod rewriteで
http://example.com/hoge?id=12 に来たアクセスを

をpublic_html/PHP/usr/hoge.php?id=12 に送りたいのですがどうしてもできません。
ご教示お願いいたします。

今はこんな感じで書いてます。
RewriteEngine on
RewriteRule hoge\?id=([a-z0-9]+)$ http://example.com/PHP/id/hoge.php?id=$1 [L]
0384nobodyさん2007/03/09(金) 13:06:01ID:???
完全にスレ違いだろぅが。Apacheスレにでもいけや。
0385nobodyさん2007/03/09(金) 13:15:07ID:???
>>383
PHP関係ないw
03863832007/03/09(金) 13:15:56ID:???
関係あります!
http://example.com/PHP/id/hoge.php?id=$1
0387nobodyさん2007/03/09(金) 13:19:05ID:???
以下スルーでおねがいします。
0388nobodyさん2007/03/09(金) 13:19:22ID:???
関係ないから
それから、質問をしたいならIDを出してね
0389nobodyさん2007/03/09(金) 13:23:07ID:???
>>386
mod_rewriteの問題はPHP関係ないよ
03903832007/03/09(金) 13:41:36ID:???
分からないからってスルーw
>>387-389
そんな愚痴投稿するくらいなら答え書けばいいじゃん
できないの?
0391nobodyさん2007/03/09(金) 13:42:59ID:???
できないよ。俺、Apacheの専門家じゃねーもん。
0392nobodyさん2007/03/09(金) 13:44:03ID:???
PHPプログラマがmod_rewriteの書き方なんて分かるかよ
0393nobodyさん2007/03/09(金) 13:48:16ID:???
氏ねよ>>383
0394nobodyさん2007/03/09(金) 13:49:27ID:/AfE14nE
CygwinでPHPを使いたいのですが、fat32なのでPHPスクリプトに実行権限が付かずに困っています。
誰か対処方法を御存知ではないでしょうか?
0395nobodyさん2007/03/09(金) 13:53:38ID:???
CygwinでなんでPHPを使うことにこだわるのかおしえてほしいぐらいだ
0396nobodyさん2007/03/09(金) 13:58:10ID:???
>>394
そのPHPってCGIなの?
Apacheモジュールなら別に実行権限は要らないでしょ。
0397nobodyさん2007/03/09(金) 14:02:57ID:SVufrglq
普通にすれ違いでした…
すみません。

最初の書き込み以外は僕ではないです
IDださないですみません。
0398nobodyさん2007/03/09(金) 14:13:10ID:???
>>394
よく覚えてないけど、FATでのCygwinってファイルの先頭が
「#!」で始まってたら全部実行可能にしてなかったっけ?
0399nobodyさん2007/03/09(金) 15:31:47ID:???
>>310
Linuxです。
yumで入れました。
04003092007/03/09(金) 15:34:33ID:???
yum install php-mbstring
という手順が必要なのですね。
自己解決しそうです。
04013642007/03/09(金) 15:52:53ID:???
>>365
いやいや
ときどきサイト見てると、URLの末尾が
/?id=00001
みたいになってるのないですか? (見間違いかな)
あれって、そのディレクトリで読むphpが決まってて、パラメータだけ指定してるのかと
思ったんですけど、あれってどうやってるのかなーって。。
0402nobodyさん2007/03/09(金) 15:55:39ID:???
別にセキュリティ高くするためにやってるんじゃないけど
0403nobodyさん2007/03/09(金) 15:57:50ID:???
>>401
それでいいなら、ただ単にindex.phpでパラメータ受け取ってるだけじゃん
0404nobodyさん2007/03/09(金) 16:01:04ID:???
>>401
ApacheでDirectoryIndexをPHPスクリプトに設定しとけば
ファイル名省略されたときにそのスクリプトに渡してくれるよ。
ちなみにこの手のはセキュリティのためでなく、
ユーザの利便性やSEOなどのために用いられる手法。
セキュリティとしては何の意味も無いです。
04053642007/03/09(金) 16:13:22ID:???
>>402-404
ありがとうございました。
セキュリティには関係ないんですね。勘違いしてました。
サンキューです
0406nobodyさん2007/03/09(金) 16:35:20ID:mLu72eTX
XML文書中のタグの属性をすべて取り除くという処理を書きたいのですが
どんな手段が良いでしょうか?
今考えてるのは正規表現で取り除く事なのですが、試してみてもうまくいきません。
(返値がNULL)
$xmlText=ereg_replace("<tag.*?>","<tag>",$xmlText);
どこが間違っていますか?
この手段でなくても、DomDocumentのメソッド等で簡単にやる方法があれば良いのですが・・・。
04074062007/03/09(金) 16:38:42ID:???
ereg_replaceを使っていたのですが
mb_ereg_replaceを使ったら出来ました。
0408nobodyさん2007/03/09(金) 16:58:47ID:???
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING
このエッラーてどういう意味ですか?
0409nobodyさん2007/03/09(金) 17:11:54ID:???
アッラーの仲間さ。
0410nobodyさん2007/03/09(金) 17:16:03ID:???
なるほど
ありがとうございました
0411nobodyさん2007/03/09(金) 17:56:16ID:???
ちょっとしたくだらない質問なんですが、
print $i . "<BR>\n";
って書くのと
print "$i<BR>\n";
って書くのどっちがいいんでしょう?
0412nobodyさん2007/03/09(金) 17:58:01ID:???
>>411
前者のほうが間違いが少ない。IDEによっては前者のほうが特に見やすい。

後者なら、
print "{$i}<BR>\n";
にすべき。
0413nobodyさん2007/03/09(金) 18:05:19ID:???
>>411
テンプレート使う
0414nobodyさん2007/03/09(金) 18:05:33ID:???
オッパイカッコは便利すぎ
0415nobodyさん2007/03/09(金) 18:07:34ID:???
>>411
好きにしていいんじゃね
0416nobodyさん2007/03/09(金) 18:14:56ID:???
お前ら性能差も教えろよ

>>411
前者のほうが高速
0417nobodyさん2007/03/09(金) 18:17:36ID:???
試したんかいと問い詰めたい
0418nobodyさん2007/03/09(金) 18:44:27ID:???
>>416
誤差レベルでしかかわんねーぞ
0419nobodyさん2007/03/09(金) 19:12:22ID:???
>>412-418
レスどうもです
今後上に統一します
0420nobodyさん2007/03/09(金) 19:14:08ID:???
ttp://www.sound-uz.jp/php/test/join.html
0421nobodyさん2007/03/09(金) 20:33:58ID:aTAkfZpm
xajaxでの変数の値の保持方法
(静的変数あるいはグローバル変数のような使い方)
を教えて下さい。

関数起動する度にリセットされて使い物にならない('A`)
0422nobodyさん2007/03/09(金) 20:41:16ID:???
DomDocument->createTextNode()
このメソッド、引数に全角文字列を指定すると誤動作しませんか?
falseが返ったり、falseじゃなくても文字化けしていたり。
回避手段を知っている方がいたら教えてほしいです。
04234222007/03/09(金) 20:55:20ID:???
誤爆です。失礼しました。。。
04243432007/03/09(金) 21:34:28ID:???
>>344
遅レスになりましたがレスありがとう。

htmlやjavascriptでウィンドウを出す方法はわかるのですが
単純にphpだけで表示する事ができるのかな、と思って質問しました。
(phpでhtmlやjavascriptを書き出す、以外で)
0425nobodyさん2007/03/09(金) 21:42:57ID:???
>>424
もうその釣りには誰も引っかからないよ
0426nobodyさん2007/03/09(金) 21:45:10ID:???
>>421
普通にglobalで保持できると思うけど。

>関数起動する度にリセットされて使い物にならない('A`)
ってことはセッション変数に入れとけばいいじゃんとかそんな話か?

何がしたくて無理なのかわかんない。
0427nobodyさん2007/03/09(金) 21:56:32ID:8A7FFt/1
EUC-JPでスクリプトを書いています。
<form>からPOSTで送っているのですが、なぜか
澄 摺 寸 世 瀬 畝 是 凄 制 勢 姓 征 性 成 政
整 星 晴 棲 栖 正 清 牲 生 盛 精 聖 声 製 西 誠
繊 羨 腺 舛 船 薦 詮 賎 践 選 遷 銭 銑 閃 鮮
前 善 漸 然 全 禅 繕 膳 糎 噌 塑 岨 措 曾 曽 楚

の文字だけがnullになります。 それとEUC-JPなのに表、能が?に化けます。 ソとかは平気です。

EUC-JPではなく、UTF-8に変えると全て解決します。

PHP4.3
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = pass
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
です。
0428nobodyさん2007/03/09(金) 22:01:43ID:???
EUC-JPでスクリプトを書いています。
<form>からPOSTで送っているのですが、なぜか
澄 摺 寸 世 瀬 畝 是 凄 制 勢 姓 征 性 成 政
整 星 晴 棲 栖 正 清 牲 生 盛 精 聖 声 製 西 誠
繊 羨 腺 舛 船 薦 詮 賎 践 選 遷 銭 銑 閃 鮮
前 善 漸 然 全 禅 繕 膳 糎 噌 塑 岨 措 曾 曽 楚

の文字だけがnullになります。 それとEUC-JPなのに表、能が?に化けます。 ソとかは平気です。

EUC-JPではなく、UTF-8に変えると全て解決します。


この部分次回からテンプレ入れようぜ
0429nobodyさん2007/03/09(金) 22:02:44ID:JIMPI+q/
課金システムを使ったアフィリエイトを作りたいのですが
ヒントになるサイトを教えてください
0430虚弱PHP2007/03/09(金) 22:02:59ID:???
>>424
万が一にもないと思うけど、
PHPでWindowsアプリとか、
X アプリとか作りたいわけじゃないよね?

サーバーサイドスクリプトとしてPHP使うなら、
その質問はありえないんだけど。
つまり、どういう仕組みで動いているかの勉強が必要ってこと。
0431nobodyさん2007/03/09(金) 22:03:16ID:???
なんでやねん
0432nobodyさん2007/03/09(金) 22:07:13ID:???
>>429
http://www.php.net/manual/ja/
0433nobodyさん2007/03/09(金) 22:13:52ID:???
海鮮切って4ね>>432
0434nobodyさん2007/03/09(金) 22:14:51ID:???
>>429
いくらかまともなシステム作ったことあるならそんな質問は出ないだろう
碌な経験も無いうちからいきなり課金が発生するサイトは止めろ
04354242007/03/09(金) 22:18:57ID:???
>>430
レスありがとう。
うすうすそんな気はしてました。
インターネットはクライアント側のリクエストを返すものだから
サーバー側で実行させるCGIとかPHPでは関われないってことですね。

PHPって便利な関数とかいっぱいあるからもしかして・・・、なんて夢見てました。
04364282007/03/09(金) 22:20:34ID:8A7FFt/1
ID忘れました
0437nobodyさん2007/03/09(金) 22:22:11ID:???
>>429
その質問をしちゃうようなレベルで、そのシステムを作るのは、
無謀&無責任過ぎる。っていうかその知能では無理w
0438nobodyさん2007/03/09(金) 22:26:15ID:???
        ┼─┐─┼─  /  ,.          `゙''‐、_\ | / /
        │  │─┼─ /| _,.イ,,.ィ'    ─────‐‐‐‐ゝ;。←>>429
        │  |  │     |  |  | イン ,'´ ̄`ヘ、   // | \
                          __{_从 ノ}ノ/ / ./  |  \
                    ..__/}ノ  `ノく゚((/  ./   |
        /,  -‐===≡==‐-`つ/ ,.イ  ̄ ̄// ))  /   ;∵|:・.
     _,,,...//〃ー,_/(.      / /ミノ__  /´('´   /   .∴・|∵’
  ,,イ';;^;;;;;;;:::::""""'''''''' ::"〃,,__∠_/ ,∠∠_/゙〈ミ、、
/;;::◎'''::; );_____       @巛 く{ヾミヲ' ゙Y} ゙
≧_ノ  __ノ))三=    _..、'、"^^^     \ !  }'
  ~''''ー< ___、-~\(          ,'  /
      \(                 ,'.. /
04394292007/03/09(金) 22:33:17ID:JIMPI+q/
DTIの動き観察して
ちょっと考えたら作り方わかりました。
ありがとうございました。
>>434>>437

あおらないでください
>>433
0440nobodyさん2007/03/09(金) 22:41:40ID:???
なら質問すんなタコ
0441nobodyさん2007/03/09(金) 22:58:28ID:???
>ちょっと考えたら作り方わかりました。

まず「先に」、ちょっと考えてから質問しろよ。
0442nobodyさん2007/03/09(金) 23:01:26ID:???
>>411のベンチの計測結果
forで10000回ループした場合。

$i."<br>
1.6349639892578
1.5304729938507
1.5425598621368
1.5483570098877
1.707211971283
1.7406980991364
2.0300641059875
1.7282230854034
1.7270748615265
1.7243540287018

"{$i}<br>"
1.7250878810883
1.7435381412506
1.6110119819641
1.6941339969635
1.7088131904602
1.8066370487213
1.7398798465729
1.7096009254456
1.6707351207733
1.7386131286621

結論:CPUのご機嫌次第
0443nobodyさん2007/03/09(金) 23:39:06ID:???
っていうか、実際の使用ケースにおいて、
それを10000回もループさせる処理なんて無いしw
0444nobodyさん2007/03/09(金) 23:44:53ID:???
>>443
お前みたいなタイプの奴とは一緒に仕事したくない
0445nobodyさん2007/03/09(金) 23:44:55ID:???
は?
0446nobodyさん2007/03/09(金) 23:45:40ID:???
タイプ以前に…ベンチマークも知らない人がプログラマやってるってどういうことよ…
0447nobodyさん2007/03/09(金) 23:48:26ID:???
>>444
お前みたいな無駄な時間ばっかり費やすキモヲタは雇いたくないねw

>>446
バカかお前はw ベンチマークを知ってるかどうかと、無意味なベンチを取るかどうかは無関係だww
0448nobodyさん2007/03/09(金) 23:48:56ID:???
>>442
PHPのverとかテスト用のソースとか書いたほうがいいかも
0449nobodyさん2007/03/09(金) 23:50:02ID:???
>>447
違う違う。
確かに仕事ではこんな処理走らせる事はほぼ無いだろうけど
お前みたいな言い方する奴と一緒にいるとイライラするの
0450nobodyさん2007/03/09(金) 23:50:03ID:???
いくら糞スレだからって少しは自重しろよ
0451nobodyさん2007/03/09(金) 23:54:31ID:???
それでは聴いてください、B'zで「ミエナイチカラ」
0452nobodyさん2007/03/10(土) 00:04:05ID:???
>>449
そもそも、どの言い方が気にいらなかったんだか知らんが、
普通、お前みたいなタイプのほうがみんなイライラするよww
0453nobodyさん2007/03/10(土) 00:07:37ID:???
マジレスするとちゃんと意味のあるベンチだけどなw
0454nobodyさん2007/03/10(土) 00:08:14ID:???
まぁ>>452のレベルはたかが知れてるなw
0455nobodyさん2007/03/10(土) 00:11:49ID:???
>普通、お前みたいなタイプのほうがみんなイライラするよww

す、凄い!何が凄いって自分が平均的な思想の人間だと思い込んでるところ!
そして関係の無い二人以外の人間を巻き込んでるところ!!

もしかして韓国の方ですか?
0456nobodyさん2007/03/10(土) 00:25:40ID:RPfFpUNc
>>426
遅レスになってしまい申し訳ありません。
きっとIDも変わってますが…orz

var $beforeID;
function hoge($nowID){
$objResponse = new xajaxResponse();
grobal $beforeID;
$objResponse->addAssign($beforeID,"innerHTML", $newContent);
$beforeID = $nowID;
$objResponse->addAssign($nowID,"innerHTML", $newContent);
return $objResponse;
}

要はこう言う事をやりたいのですが、$beforeIDの値がリセットされるのです。
// global周りは適当に書いたのでおかしい所があるかもしれないのですがこんなニュアンスで
0457nobodyさん2007/03/10(土) 00:45:48ID:???
>>455
最後の一行で糞味噌だと思いました
0458nobodyさん2007/03/10(土) 00:56:27ID:???
>>456
その関数を
<button onclick="xajax_hoge(0)" >hoge</button>
見たいに使うんなら、そらー無理でしょう。
毎回スクリプトにpostするわけだから。

セッション変数に入れるか、パラメータ代入と引数で引き継いでいくかじゃない?
0459nobodyさん2007/03/10(土) 02:57:40ID:???
>>453
実用的に見て全く意味なんかねぇよボケwww
どうしてそうキモヲタってのは、くだらねぇベンチ取って大喜びするんだw

そんなことよりも、もっとソース全体のアルゴリズムの見直しとか
セキュリティのチェックとかに時間を遣えよバカどもww
0460nobodyさん2007/03/10(土) 03:37:12ID:???
大差ないという結果が出たんだから意味あるよ。
0461nobodyさん2007/03/10(土) 03:38:52ID:???
しかも、何故他はないがしろにしてるという結論に固執するのか
0462nobodyさん2007/03/10(土) 03:53:20ID:???
↓3行目の論理式を押してください。


1  $url = "http://www.2ch.net/";
2  
3  if(****************) ←【$url】がNot Found(存在しない)だったら
4  {
5  echo "urlが存在しません。" ;
6  }
7  else {
8  include($url);
9  }
0463nobodyさん2007/03/10(土) 03:54:16ID:???
押?
0464nobodyさん2007/03/10(土) 03:56:17ID:???
if($url=='Not Found')
04654622007/03/10(土) 03:57:24ID:???
      ,一-、
     / ̄ l |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    ■■-っ < >>464 んなーこたーない
    ´∀`/    \__________
   __/|Y/\.
 Ё|__ | /  |
     | У..  |
0466nobodyさん2007/03/10(土) 04:38:32ID:L0CVYQw+
preg系の関数はデリミタ(/)ではさまないとだめになってますよね?
この前他人のソースを眺めていたら、
デリミタに#をつかっていたのですが、
最後閉じるときに、#smと書かれていました。
これはどういう意味なのでしょうか?
0467nobodyさん2007/03/10(土) 04:41:19ID:???
>>465
ファイル関連の関数のとこ見れば分かるよ
0468nobodyさん2007/03/10(土) 04:43:41ID:???
>>466
preg系の関数のデリミタについて見るといいよ
■ このスレッドは過去ログ倉庫に格納されています