- 1 名前:nobodyさん mailto:sage [2007/12/19(水) 03:33:51 ID:???]
- まず読め→【PHP マニュアル】www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。 過去スレ、関連スレ、FAQなどは>>2-10辺り ◆前スレ 【PHP】下らねぇ質問はここに書き込みやがれ 60 pc11.2ch.net/test/read.cgi/php/1196511516/ ◆質問する時の注意 ・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ) ・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。 ・ 己の行った操作、変更などを詳しく明記すること。 ・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。 ・ 質問者として、態度をわきまえること。 ・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。 ◆質問後の注意 ・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない) ・2回目以降は最初に質問した際のレス番号を名前欄に入れること。 ・解決しなくても回答をもらった場合はお礼を言うこと。 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。) ◆回答者への注意 ・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。 【その他諸注意】 ・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ ・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
- 2 名前:nobodyさん mailto:sage [2007/12/19(水) 03:33:53 ID:???]
- 【簡易FAQ】 (1/3)
1.文字コードは何を使えばいいの? →1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。 2. このスレに書き込むときに自分のサイト名を晒したくない → 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さん mailto:sage [2007/12/19(水) 03:33:54 ID:???]
- 【簡易FAQ】 (2/3)
11. SQLの質問はどこで? → データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する 12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの? → ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。 13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい → 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター 14. echoとprintってどう違うの? → よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。 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.を参照
- 4 名前:nobodyさん mailto:sage [2007/12/19(水) 03:33:54 ID:???]
- 【簡易FAQ】 (3/3)
21. 画像処理一般 or GDの限界 → ImageMagick(PECLのやつ or シェルから実行) 22. 画像・音・動画はファイルで保存?DBに保存? → 好きにしてください
- 5 名前:nobodyさん mailto:sage [2007/12/19(水) 03:33:55 ID:???]
- 関連リンク
■本家マニュアル www.php.net/manual/ja/ ■日本PHPユーザ会 www.php.gr.jp/ ■PEARマニュアル pear.php.net/manual/ja/ ■メーリングリスト ns1.php.gr.jp/mailman/listinfo/ ■ZFマニュアル framework.zend.com/manual/ja/ (以下英語) ■Smarty smarty.php.net/ ■Zend本家 www.zend.com/ ■Zend Framework framework.zend.com/ ■php | architect www.phparch.com/ ■Smartyマニュアル smarty.php.net/manual/en/ ■PECL本家(英語) pecl.php.net/
- 6 名前:nobodyさん mailto:sage [2007/12/19(水) 03:33:56 ID:???]
- ■過去ログ
【PHP】下らねぇ質問はここに書き込みやがれ 60 pc11.2ch.net/test/read.cgi/php/1196511516/ 【PHP】下らねぇ質問はここに書き込みやがれ 59 pc11.2ch.net/test/read.cgi/php/1195204145/ 【PHP】下らねぇ質問はここに書き込みやがれ 58 pc11.2ch.net/test/read.cgi/php/1194084457/ 【PHP】下らねぇ質問はここに書き込みやがれ 57 pc11.2ch.net/test/read.cgi/php/1193062236/ 【PHP】下らねぇ質問はここに書き込みやがれ 56 pc11.2ch.net/test/read.cgi/php/1192092941/ 【PHP】下らねぇ質問はここに書き込みやがれ 55 pc11.2ch.net/test/read.cgi/php/1191058556/ 【PHP】下らねぇ質問はここに書き込みやがれ 54 pc11.2ch.net/test/read.cgi/php/1189309377/ 【PHP】下らねぇ質問はここに書き込みやがれ 53 pc11.2ch.net/test/read.cgi/php/1188047468/ 【PHP】下らねぇ質問はここに書き込みやがれ 52 pc11.2ch.net/test/read.cgi/php/1186794483/ 【PHP】下らねぇ質問はここに書き込みやがれ 51 pc11.2ch.net/test/read.cgi/php/1185521566/ 【PHP】下らねぇ質問はここに書き込みやがれ 50 pc11.2ch.net/test/read.cgi/php/1184143801/
- 7 名前:nobodyさん mailto:sage [2007/12/19(水) 04:40:48 ID:???]
- httpsのソースを取得したいです。
php5でwindowsです。 いろいろ探しましたが、 http_clientとか --with-openssl でコンパイルするとか php4ts.dllを差し替えるとか どれもphp5でwindowsだと無理?と思われました。 本当に無理なのでしょうか?
- 8 名前:nobodyさん mailto:sage [2007/12/19(水) 08:48:39 ID:???]
- phpではhttpsは無理
rubyなら簡単に取得できる
- 9 名前:nobodyさん mailto:sage [2007/12/19(水) 08:51:35 ID:???]
- >>8
いや別に無理じゃないが… 面倒くさいけど。
- 10 名前:nobodyさん mailto:sage [2007/12/19(水) 10:21:11 ID:???]
- 最短一致が2つあると思うように機能しません。
preg_match("/<p.*?NGWORD.*?<\/p>/", "<p id=A><p id=B><a >NGWORD</a></p></p>", $r); 結果:<p id=A><p id=B><a >NGWORD</a></p> id=Aは余分です。こういうものなのでしょうか? さくらで試したのでphp4だと思います。
- 11 名前:nobodyさん mailto:sage [2007/12/19(水) 11:28:20 ID:???]
- >>10
その正規表現だと当然のような あとは正規表現スレで頑張ってね
- 12 名前:nobodyさん [2007/12/19(水) 12:20:31 ID:F1MTppUB]
- POSTしたデータを取得したいんですが、TEXTBOXに「'\'」(シングルコーテーション+\サイン+シングルコーテーション)
を入力してSUBMITすると、受け取ったPHPでは"\\'\\\\\\'"と入っています。 エンコードされないデータを取得するにはphp://inputを使うしかないんでしょうか?
- 13 名前:nobodyさん mailto:sage [2007/12/19(水) 12:23:25 ID:???]
- magic_quote_gpcをoffにすれ
- 14 名前:nobodyさん mailto:sage [2007/12/19(水) 12:28:34 ID:???]
- magic_quotes_gpcがonなんじゃないの?
jp.php.net/manual/ja/function.get-magic-quotes-gpc.php ここみながら確認しる onならoffへ変更してあげてね
- 15 名前:nobodyさん mailto:sage [2007/12/19(水) 12:31:22 ID:???]
- 1000 名前:nobodyさん[sage] 投稿日:2007/12/19(水) 09:15:15 ID:???
1000だったら、php全滅 @一昔前はPerlの達人と恐れられたが、Rubyのクラスが分けわからず時代に乗り遅れた化石Perler AJAVAの思想は素晴らしいのに周りに理解者が少なく、コストの問題でクライアントがPHPを指定してきて嫌々やらされているJAVAer B周りはネット全盛なのに、未だにSoketプログラムが理解できずネットの海に出られない鎖国状態のVisualStudioer CwebデザイナーはPHPぐらいできないとゴミと言われて、いつの間にかPGにさせられてしまった自称webデザイナー Dプログラマーという職業に憧れているけど、PG的思考ができずに指をくわえて見ていることしかできないゲーマー さあレッツ プロファイリング!
- 16 名前:nobodyさん mailto:sage [2007/12/19(水) 12:36:47 ID:???]
- 設定変えると影響範囲がでかいから、自分は stripslashes 使ってる。
- 17 名前:nobodyさん mailto:sage [2007/12/19(水) 12:40:16 ID:???]
- >>13-14
正にその通りでした。ありがとうございます!
- 18 名前:nobodyさん mailto:sage [2007/12/19(水) 12:40:30 ID:???]
- >>12
ところで、php://input って何?
- 19 名前:nobodyさん [2007/12/19(水) 12:40:41 ID:F1MTppUB]
- すいません。>>17=12です。
- 20 名前:12 mailto:sage [2007/12/19(水) 12:44:48 ID:???]
- >>18
以下、ttp://phpspot.net/php/man/php/wrappers.php.htmlからの抜粋ですが、 php://input は、POST の生データの読み込みを 許可します。 これは $HTTP_RAW_POST_DATA に比べて メモリ消費量が少なく、特別な php.ini ディレクティブを設定する 必要がありません。 php://input は、 enctype="multipart/form-data" に対しては 使用できません。
- 21 名前:nobodyさん mailto:sage [2007/12/19(水) 12:57:14 ID:???]
- >>20
ありがとう。勉強になった。
- 22 名前:教えて下さい [2007/12/19(水) 17:15:38 ID:n596SeRo]
- ttp://www.phpweb.jp/dlrank/dlrank.php?id=lineboard
ここで配布されているファイルをUTF-8にソースコードを変えたんですが、 148行目ぐらいの // 投稿処理 function send() { $data = file("./lineboard/log.txt"); $newtime = time(); この投稿処理の項目がshift-jisでエラーコードが返されるのでUTF-8でエラー表示をかえしたいんですが どこをいじってあげればいいのかアドバイスくれないでしょうか。 sjisコードをutf-8で置き換えたんですが、エラーの時の投稿処理される メッセージが長すぎますなどがsift-jisで返されるので文字化けしていまいます。
- 23 名前:nobodyさん mailto:sage [2007/12/19(水) 17:43:52 ID:???]
- print "<html>\n";
print "<head>\n"; print "<meta name=\"robots\" content=\"index,follow\">\n"; print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n"; print "<meta http-equiv=\"Content-Style-Type\" content=\"text/css\" />\n"; print "<meta http-equiv=\"content-script-type\" content=\"text/javascript\" />\n"; print "</head>\n"; これでいけました 解決
- 24 名前:nobodyさん [2007/12/19(水) 18:53:57 ID:E60FAw4D]
- すみません。PHP4の本を読んでサンプル改変してるのですが、PHP4の本はレジスターグローバルをonにしてあるため
ちょっと迷っています。ちなみに可変変数を使っているので私にはむずかしく、、助言をお願いしたいしだいです。 原文は $data = "FIELD_$j"; $data = $$data; という2文です。ちなみにforループの中で$jをカウント変数で使っています。 FIELD_$jというのは、WEBページのテキストボックスに上からFIELD_0,FIELD_1...と つけた名前です(<input type="text" name="FILED_0">という感じで)。 レジスターグローバルをオフにしているため、 $_POST['FIELD_$j']としなくてはならないのですが、そうするためには $data = "_POST['FIELD_$j']"; $data = $$data; で文法的に正解でしょうか?よろしくお願いします。
- 25 名前:nobodyさん mailto:sage [2007/12/19(水) 20:30:00 ID:???]
- なんて本だ?そんな糞コードのっけてる本捨てちまえ。
- 26 名前:nobodyさん mailto:sage [2007/12/19(水) 21:30:31 ID:???]
- >>24
捨てろ
- 27 名前:nobodyさん mailto:sage [2007/12/19(水) 21:36:30 ID:???]
- 簡単なプログラムでもDBを導入したほうが効率が良いのでしょうか?
アクセスカウンタを例にしますと、 テキストのログファイルを読み込ませるほうがよいのでしょうか? この程度でもDBと連携させたほうが効率が良いのでしょうか? 簡単なものはテキスト、中規模以上はDBって感じでしょうか? 小さくてもアクセス頻度が高い場合はDBのほうが安全なのでしょうか? 速度、鯖の負荷、その他ありましたら教えてください よろしくおねがいします
- 28 名前:nobodyさん mailto:sage [2007/12/19(水) 21:37:44 ID:???]
- >>27
DB板で聞け
- 29 名前:nobodyさん mailto:sage [2007/12/19(水) 21:42:39 ID:???]
- >>24
$data = "_POST['FIELD_$j']"; $data = $$data; ↓ $data = $_POST["FIELD_$j"]; この一行でOKでは なんて本、それ
- 30 名前:nobodyさん mailto:sage [2007/12/19(水) 22:08:24 ID:???]
- >>27
好みの問題。好きにしろとしか言えない。 後々の拡張性とか考えるとDBのほうが楽ではあるが。
- 31 名前:nobodyさん mailto:sage [2007/12/19(水) 22:14:57 ID:???]
- >>27
>>30 pc11.2ch.net/db/
- 32 名前:nobodyさん mailto:sage [2007/12/19(水) 22:29:41 ID:???]
- >>30
知ったかはヤメロ。 アクセスログをDBなんかでやったら、 通常のレン鯖で1時間3000PVでコネクションオーバーでエラーが出る。
- 33 名前:nobodyさん mailto:sage [2007/12/19(水) 23:51:11 ID:???]
- >>32
カウンターの話をしてるのにおまいは何を言ってるんだ
- 34 名前:nobodyさん mailto:sage [2007/12/19(水) 23:52:23 ID:???]
- 自分でCで作ったサーバにPHPからデータを渡したいんですが,良い方法ありますか?
今はとりあえずストリームソケット用いてやっています・・・
- 35 名前:nobodyさん mailto:sage [2007/12/19(水) 23:56:55 ID:???]
- >>32
>通常のレン鯖で1時間3000PVでコネクションオーバーでエラーが出る。 出ないし。 ていうか、DBより1時間に3000PVとか転送量のほうが問題だ。
- 36 名前:nobodyさん mailto:sage [2007/12/20(木) 00:01:22 ID:???]
- レベルひっくwww
- 37 名前:nobodyさん mailto:sage [2007/12/20(木) 00:09:19 ID:???]
- エサを与えないでください
- 38 名前:nobodyさん mailto:sage [2007/12/20(木) 00:28:55 ID:???]
- んでどれが正しいの?
- 39 名前:nobodyさん mailto:sage [2007/12/20(木) 01:39:32 ID:???]
- 規模を考えるより使いやすいほうでやればいいんでないの?
簡単なものでテキストで処理したほうが楽だと思うならそうすればいいし 普段からDB使ってるしDBのほうが楽だと思うならそうすればいい
- 40 名前:nobodyさん mailto:sage [2007/12/20(木) 02:17:17 ID:???]
- 1時間に3000PVって全然少なくないか?
- 41 名前:nobodyさん mailto:sage [2007/12/20(木) 02:32:58 ID:???]
- >>40
確かに少なすぎだね。俺のサイトで3000PVって言ったら1分で、それくらい行くから。
- 42 名前:nobodyさん mailto:sage [2007/12/20(木) 02:36:41 ID:???]
- 個人サイトでは多い方だとは思うけど、そういうサイトは山ほどあるよな。
レンタルサーバだからといって、多少負荷がかかるにしろ、 その程度のリクエストでDBがパンクしてたらDBなんて許可しないし、 そんな簡単にダウンするほど信頼性の低いもんじゃない。 Googleなんて分散してるとはいえ、1台あたり1秒にどんだけこなしてると思ってるんだ?
- 43 名前:nobodyさん mailto:sage [2007/12/20(木) 04:35:22 ID:???]
- ぐぐるさんのDBは独自拡張だから比較対照にはならんな
- 44 名前:nobodyさん mailto:sage [2007/12/20(木) 04:45:08 ID:???]
- 年賀状3枚入り買ったんだけど出す相手が一人しかいないので、2枚余りました。
年賀状欲しい人は、住所と名前を書いてもらえば出します。
- 45 名前:nobodyさん [2007/12/20(木) 06:10:17 ID:8BakDrsf]
- 前スレのセッション談義見て不安になったんですが、
(pc11.2ch.net/test/read.cgi/php/1196511516/814) 今作ってる会員システムでは 1)ログインID,ログインPassを使って登録済み情報からユーザ名とidを抜き出す 2)それぞれセッションに入れて ユーザ名は「○○さんの管理ページ」の表記に使う idはいろんな情報を登録・更新するときのキーに使う という風にしています。これはまずいんでしょうか? また、会員エリア内でフォーム記入→確認ページ という流れで、 修正時に記入ページに戻るときにもフォームに値を入れるためにセッション使ってます これもまずいとすればこの部分はどうしたらいいんでしょうか?
- 46 名前:nobodyさん mailto:sage [2007/12/20(木) 06:17:36 ID:???]
- >>45
Webアプリのセキュリティについて調べろ
- 47 名前:nobodyさん mailto:sage [2007/12/20(木) 08:21:04 ID:???]
- 分かんないひとはレスしないでください(>_<)
- 48 名前:nobodyさん mailto:sage [2007/12/20(木) 09:07:38 ID:???]
- まずい、ってのはどういう意味?
pc11.2ch.net/test/read.cgi/php/1196511516/814 ↑ これには「セッションなんてログインしたときだけ値を持たせる 」 とは書いてあるけど、
- 49 名前:nobodyさん mailto:sage [2007/12/20(木) 09:10:35 ID:???]
- セッション使わないでHIDDENで持ち回すほうがよっぽど…
- 50 名前:45 [2007/12/20(木) 09:26:29 ID:8BakDrsf]
- >>46
どうもです あれこれサイト見て勉強します >>48 どうもです まずい というのは上記の程度のセッションの利用でも、それをきっかけに のっとりとかされてしまうのかなぁと、、 「修正シーン」に記入値をセッション引用して入れるのも、「ログインしたときだけ値を持たせる」の ルールからすればダメなのかな、など気になります(別のやり方が思いつかない) >>49さんの言うとおりhiddenでまわす方法があるのも調べてわかりましたが、 そしたら全部のリンクがpostになる?わけで、デザイン的にいやだしと、、 気が向いたときに回答いただけたら十分なのでよろしくお願いします 自分でも引き続き調べてみますので
- 51 名前:nobodyさん mailto:sage [2007/12/20(木) 12:01:24 ID:???]
- だれがログインしてるかって言う情報はサーバが管理すべきものだから、
セッションで管理すべきもの。 今画面に何を表示しているかについては、議論なり判断があって良いと思うけど、 これについては、個人的には hidden 推奨。
- 52 名前:nobodyさん mailto:sage [2007/12/20(木) 12:04:00 ID:???]
- 同意。formタグ内で統一できて分かりやすいし、楽。
- 53 名前:nobodyさん mailto:sage [2007/12/20(木) 12:11:34 ID:???]
- こういう時はsessionだろ
- 54 名前:nobodyさん mailto:sage [2007/12/20(木) 12:53:32 ID:???]
- さあまた盛り上がってまいりました
- 55 名前:45 [2007/12/20(木) 14:09:16 ID:8BakDrsf]
- >>51-52
え? つまりフォームの記入(修正)ページに入れる値は、hiddenですか? てことは確認ページで <input type="hidden" name="namae" />などしてキープして、 戻るボタンにjavascriptかなんかで修正ページに向けてsubmitするの? ちょっと本屋で見てこよう、、
- 56 名前:nobodyさん mailto:sage [2007/12/20(木) 14:12:30 ID:???]
- ポカーン・・・
- 57 名前:51 mailto:sage [2007/12/20(木) 14:43:41 ID:???]
- >>55
JavaScript使用可の前提で書くけど、どっちにするかといえば、Hiddenにする。 自分が作るなら、確認用ページはJavascriptで生成するようにする。 確認ページ表示に、サーバに問い合わせる情報が必要であればAjax的な方法で取得する。 携帯みたいな通信コストが無視できない場合は、セッションでの管理も考えるけど。
- 58 名前:nobodyさん mailto:sage [2007/12/20(木) 14:49:48 ID:???]
- 会員の情報をサーバーに問い合わせるのにAjaxて怖くない?
サーバーサイドで完結してたほうがいいような気がするが。
- 59 名前:nobodyさん mailto:sage [2007/12/20(木) 14:54:08 ID:???]
- >>58
何で? Ajaxでもセッション管理は出来るし、不要な情報はブラウザに返さなければ良いし。
- 60 名前:45 mailto:sage [2007/12/20(木) 21:21:17 ID:???]
- >>57
なるほど 携帯とPCで使い分けするんですね、考えたこともありませんでした あの、最後にひとつだけ聞きたいんですが <input type=text name=namae>ってのが記入ページにあったとき、 確認ページは <form action=kanryou.php> <input type="hidden" name="namae" value="<? echo $_POST['namae']; ?>"> <input type="submit" value="完了ページへ"> </form> ていう完了ページに飛ぶ用のフォームと <form action="kinyu.php"> <input type="hidden" name="namae" value="<? echo $_POST['namae']; ?>"> <input type="submit" value="戻って修正"> </form> という修正ページに飛ぶ用のフォーム2つを用意するんでしょうか? フォームは一個で、クリックされたサブミットボタンに応じてactionの値を切り替えるの? いい加減しつこいとは思うので、本当に暇な人、答えてくれれば結構です。sageます
- 61 名前:nobodyさん mailto:sage [2007/12/20(木) 21:39:52 ID:???]
- いくらなんでもスレ違い過ぎ…
- 62 名前:nobodyさん mailto:sage [2007/12/21(金) 00:43:35 ID:???]
- >>60
<input type="submit" name="action" value="確認"> <input type="submit" name="action" value="修正"> っていう風にすれば、$_POST["action"]を取得することでどの画面をだせば いいかは分かるんで、確認画面にフォーム二つもいらない。 書き込みも確認も書き込み完了も、どの画面も全部同じひとつのPHPで扱うけどね。 わざわざ三つとかに分けたりしない。 フォーム入力値の受け渡しはセッションでやった方が楽だけど、既出の 通りブラウザ複製などの場合値が書き換わっちゃうのでやらない。 携帯ならこの問題がないけど、セッション使えないのもあるのでやっぱ hidden使うかなあ。 セッション使うって言ってる人はこの問題にどう対応してるのか不思議。
- 63 名前:nobodyさん [2007/12/21(金) 00:59:28 ID:9upg4HjC]
- セッションというのは諸刃の刃だよ。
セッションを使うことによってセキュリティーは向上するけど、 多用しすぎることで、パフォーマンスが劣化し、結果的にセキュリティーが劣化するというジレンマ。 例えて言えば、医学が進歩して寿命が延びることで、不労人口が増えて、 結果的に人類が滅びるというジレンマだよ。 つまり、目先の良さにばかりいくと、長期的には全く逆の結果になるということ。
- 64 名前:nobodyさん mailto:sage [2007/12/21(金) 01:03:49 ID:???]
- セッション多用でセキュリティが低下ってのはわからんなー
セッション多用してメモリがいっぱいいっぱいになる可能性があるってーなら解るが
- 65 名前:nobodyさん mailto:sage [2007/12/21(金) 01:04:23 ID:???]
- >>63
意味不明 医学が発展することが人類が滅びることとどう結びつくんだよw
- 66 名前:nobodyさん [2007/12/21(金) 01:12:13 ID:9upg4HjC]
- >>65
想像力働かせろよ。 プログラマー脳の典型だよ、まぁ設計には一生なれないな、お前は。 200歳まで生きられる医術・薬品が開発される ↓ 生殖機能を持たない、エネルギーだけを消費する不労生体が増える ↓ 1人の若者が100人の老体を面倒見る。仕事している暇がない。 ↓ 国家財政破綻、国力ゼロ、防衛能力ゼロ ↓ 発展途上国の台頭、テロリストの台頭 ↓ 国際経済破綻、無政府状態
- 67 名前:nobodyさん mailto:sage [2007/12/21(金) 01:15:58 ID:???]
- >パフォーマンスが劣化し、結果的にセキュリティーが劣化する
何故に?
- 68 名前:nobodyさん mailto:sage [2007/12/21(金) 01:17:05 ID:???]
- >>66
君は朝鮮人並の誇大妄想脳だねww
- 69 名前:nobodyさん mailto:sage [2007/12/21(金) 01:17:13 ID:???]
- >>66 は無視して良い話だろうけど、メモリを消費しすぎて落ちやすくなれば ISMSで言うところの
可用性が低下するので、広義のセキュリティが低下したと言えなくも無い。
- 70 名前:nobodyさん mailto:sage [2007/12/21(金) 01:19:51 ID:???]
- >>66
65では無いがお前の方が想像力なく見えるぞ
- 71 名前:nobodyさん [2007/12/21(金) 01:26:24 ID:9upg4HjC]
- お前らw
人を批判する前に、原因と結果の繋がりを細かく検証しろよ。 セッション多用 ↓ メモリー消費、オーバーフロー ↓ HDDへのスワップが多発 ↓ システムが不安定 ↓ HDDの中身が画面に表示される ↓ セキュリティー劣化
- 72 名前:nobodyさん [2007/12/21(金) 01:28:42 ID:1HbS1x3e]
- PHPって配列を関数に渡すと、内容がコピーされるけど、このコストって意識すべき?
参照渡しすると、値が書き換えられて帰ってくることを期待してるようなソースに見えるのが嫌。 例えば、実は値を変更するまではマジックコピー的に処理してるとかだと気がラクになるんだけど。
- 73 名前:nobodyさん mailto:sage [2007/12/21(金) 01:30:19 ID:???]
- それはどちらかというとメモリの使用量とかをしてないのが問題なんだろ
多用してるのが解ってるならだいたいピーク時にどれぐらい消費してるとか そういうのをチェックしてない時点でダメなんだろ
- 74 名前:nobodyさん mailto:sage [2007/12/21(金) 01:31:37 ID:???]
- >>72
基本的に参照渡しもそのまま渡すのも 関数内で変更しない限り内部的に一緒
- 75 名前:nobodyさん [2007/12/21(金) 01:35:41 ID:1HbS1x3e]
- >>74
ありがとう。気がラクになった。 面倒でなければ、情報ソースかヒントだけでも教えてくれるとありがたい。
- 76 名前:nobodyさん mailto:sage [2007/12/21(金) 01:51:45 ID:???]
- >>75
記事自体は凄く古いが www.sound-uz.jp/php/test/first2.html ここだったと思う まぁphpのサイトにもパフォーマンスのためだけに使うなって書いてるし www.php.net/manual/ja/language.references.return.php それでも気になるならmemory_get_usageとか使って メモリの消費量をチェックしてみるといいかもね
- 77 名前:45 mailto:sage [2007/12/21(金) 02:41:08 ID:???]
- >>62
本当にありがとうございます、感動しました 頑張ります
- 78 名前:nobodyさん mailto:sage [2007/12/21(金) 04:34:35 ID:???]
- >>62
>既出の通りブラウザ複製などの場合値が書き換わっちゃうのでやらない。 これなんか問題あんの?
- 79 名前:nobodyさん [2007/12/21(金) 05:02:52 ID:k3WWlkOg]
- 質問です。
指定した数の乱数順列を生成する関数とかってありますか? 例えば10を指定した場合、 4,3,2,9,8,7,10,1,6,5 3,6,4,2,1,9,7,10,8,5 のような並びで配列とかに格納してくれるような感じで。 もし知っている方いましたら教えてください。 お願いします。
- 80 名前:nobodyさん mailto:sage [2007/12/21(金) 06:01:09 ID:???]
- >>79
shuffle()
- 81 名前:nobodyさん mailto:sage [2007/12/21(金) 06:18:03 ID:???]
- >>80
ありがとうございました。
- 82 名前:nobodyさん [2007/12/21(金) 10:14:56 ID:O7QmdYOi]
- 質問です。
ローカルテストのためWindowsXPにApache/2.0.61(Win32) PHP/5.25をインストーラーでインストールしたのですが、 パスを指定してアクセスすると.phpのファイルだけHTTP500内部サーバーエラーが出て表示してくれません。 .htmlは表示されますし、.pqpとか適当な拡張子をつけたファイルも表示はしてくれました。 Apache MonitorではPHPのバージョン表記もされていて、 インストールは完了しているようなのですが、何か原因が分かればお願いします。
- 83 名前:nobodyさん mailto:sage [2007/12/21(金) 11:07:39 ID:???]
- >>76
なるほど。PHPよく出来てるな。 どうもありがとう。
- 84 名前:nobodyさん mailto:sage [2007/12/21(金) 11:18:19 ID:???]
- phpの開発に携わるには、どうしたらいいのかな?
こんな中で開発に携わっている人いる? いや、一つのメソッドでもいいので実装したら、 それだけで経歴書に「phpの開発メンバー」とかって書けるかなぁ、って。 出来たら、自分が作ったメソッドに自分の名前の一部で使えたら最高なんだけど。
- 85 名前:nobodyさん mailto:sage [2007/12/21(金) 11:19:19 ID:???]
- >>82
自分は詳しくないけど、まずはApacheのエラーログ見たら?
- 86 名前:nobodyさん mailto:sage [2007/12/21(金) 11:54:40 ID:???]
- phpで500エラーってcgiとして動かそうとしてるのか?
- 87 名前:nobodyさん mailto:sage [2007/12/21(金) 11:55:36 ID:???]
- って、5.2.4以降はエラーをブラウザに返さないで500出すようになったのか
- 88 名前:nobodyさん mailto:sage [2007/12/21(金) 11:59:36 ID:???]
- マッピングされてないだけだったりして
- 89 名前:nobodyさん mailto:sage [2007/12/21(金) 12:04:23 ID:???]
- >>84
単にPHP自体の開発が出来るということを示したいだけなら、 野良モジュールをpeclにでも登録すれば? あるいはメインストリームなモジュールのバグ一覧を見て、 未解決のバグのパッチを辛抱強く投げつづけるか。 そうでなければ、本家MLに参加して議論とパッチの応酬を繰り返すとか。 しかし経験からいわせてもらうと、PHPの開発がホイホイ出来る奴は PHP言語を使う仕事にはなかなかつかせてもらえない罠
- 90 名前:nobodyさん mailto:sage [2007/12/21(金) 12:10:20 ID:???]
- ちと質問なんですが、
『排他ロック中には他のプロセスが割り込めないので ロックは1つかければ十分』…と聞いたんですが 例えば… $lock_fp = fopen("lock.txt","w"); flock($lock_fp,LOCK_EX); $fl = fopen("data.dat","w"); if($fl){ fwrite($fl,$write_data); fclose($fl); } fclose($lock_fp); こうしておけば、data.datの方もlock.textがロック解除されるまでは 書き込んだりできないんでしょうか?
- 91 名前:nobodyさん mailto:sage [2007/12/21(金) 12:29:26 ID:???]
- >>89
なるほど、参考になるわ。ありがとう。もしかして、開発メンバー? >しかし経験からいわせてもらうと、PHPの開発がホイホイ出来る奴は >PHP言語を使う仕事にはなかなかつかせてもらえない罠 これは、どうして? PHPを開発した人は守秘義務とかに縛られて、 PHPを使った開発はできないとか? >>90 これ、ちょうど俺が実装したかったロジックだ。なんというタイミング。 俺が実装したいメソッドは、一つのメソッドで面倒なロックをやってくれるもの。 boolean write_data_with_safety_lock($file_name, $data) ファイル名と書き込みデータを引数で渡せば、 ロック機構を実装したこのメソッドが安全に書き込めるというメソッド。 このメソッド作ったら、絶対php6.0とかに採用されると思っているんけど。ニーズも絶対あるし。
- 92 名前:nobodyさん mailto:sage [2007/12/21(金) 12:47:28 ID:???]
- phpはオープンソースです
- 93 名前:nobodyさん [2007/12/21(金) 13:02:05 ID:S3fUHMf0]
- pearだったかのコーディング規約で、PHPだけのファイルの場合、
<?php だけで、最後の ?> は付けないってのがあったと思うんだけど これって個人的にはすごく気持ち悪いんですが、こんなもんなんでしょうか?
- 94 名前:93 mailto:sage [2007/12/21(金) 13:03:54 ID:???]
- >>93
ああ、ZendFrameworkのコーディング規約でした。
- 95 名前:nobodyさん mailto:sage [2007/12/21(金) 13:10:57 ID:???]
- 最後に?>を付ける事によって?>以降に書かれた文字列が表示される
表示される事による見つけにくーいバグを回避する事ができる と俺は勝手に解釈 まぁ画像をphpで出力されてたりとか 携帯向けにHTML出力する時にこういうので苦労した事あったから 俺はつけないけど
- 96 名前:nobodyさん mailto:sage [2007/12/21(金) 13:13:40 ID:???]
- >>91
>>PHP言語を使う仕事にはなかなかつかせてもらえない罠 >これは、どうして? 単なる元野良モジュール作者だけど、 単純にCでマルチプラットフォームな開発が出来る奴ぁそれを仕事にした方がぶっちゃけ収入が良いのです。
- 97 名前:93 mailto:sage [2007/12/21(金) 13:52:16 ID:???]
- >>95
ああ、なるほど。 改行コードとか目に見えにくい文字列もありますね。 ありがとでした、納得しました。
- 98 名前:nobodyさん [2007/12/21(金) 14:35:20 ID:J4pqu08c]
- 童貞先輩が新人女子OLにアタックしてるwww何とかしてくれwww
- 99 名前:nobodyさん mailto:sage [2007/12/21(金) 15:20:15 ID:???]
- くだらねえwww
- 100 名前:nobodyさん mailto:sage [2007/12/21(金) 15:46:33 ID:???]
- おい上原ぁ!!お前が何とかしろ!
- 101 名前:nobodyさん mailto:sage [2007/12/21(金) 15:53:53 ID:???]
- ""を含むhtmlタグ入り文章をechoやprintで表示、
変数に格納するにはどうしたらいいんでしょうか。 初心者質問スマソ。
|

|