トップページ⇒php
997コメント327KB

【PHP】自作スクリプト発表会

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん02/03/30 11:55ID:M/C/V7hb
自分が書いたPHPスクリプトを発表するスレ。
初心者が書いた入門スクリプト、ベテランが書いたすげースクリプト。
発表してね。
予めスクリプトの内容を明記してURLを貼り付けるのがよろしいかと。
マターリ進行でいきませう。

PHPが使える無料サーバ情報(レッツPHP!):
http://php.s3.to/php/
06936462006/03/13(月) 17:26:13ID:???
>>692
なるほど。XML宣言を含むXML文書を簡単に出力したい人なんかは、
やっぱり short_open_tag をOFFにしたいですよね。

short_open_tag を OFF にしても動くように修正してみます。
0694nobodyさん2006/03/13(月) 18:05:51ID:???
>>693
期待して待ってる。
06956462006/03/13(月) 19:19:55ID:nDHgXPav
更新しました。
http://trashtoy.dw.land.to/app/memo/memo.zip

>>688 の foreach に関するエラーの件について。
自分の憶測なのですが、Webサーバーが
<input type="checkbox" name="arr[]" value="hoge">
形式のパラメータを解釈できないのかもしれません。
06966882006/03/13(月) 19:33:40ID:???
>>695
ん〜、解釈できますね。
他のとこかな、見てみよう。
0697nobodyさん2006/03/13(月) 19:35:05ID:???
↑
ごめん688じゃなく689でした。
配列がないよってえらーでしたね。たしか。
06986462006/03/13(月) 20:21:38ID:nDHgXPav
>>697
バグが見つかったので更新しました。
http://trashtoy.dw.land.to/app/memo/memo.zip
どうもありがとうございます。

削除する際に、一部のPOSTパラメータが配列ではなくスカラー値だった場合
foreach 内で >>697 のエラーが起こるようになってました。
普通に使っている限りではそのようなことは起こらないと思うので、
>>689の現象はいまだに謎なのですが・・・。
ただ、少なくとも POST パラメータを改ざんすればエラーが発生するのは事実なので
これはれっきとした脆弱性だということで対処しました。
>>689の現象は起こらなくなるはずです。
0699nobodyさん2006/03/13(月) 21:08:11ID:???
>>698
きれいなコードを書かれますね。勉強させていただきます。
07006462006/03/14(火) 02:24:22ID:???
>>699
それは、どうも。
でも、やらないほうがいい悪い癖なんかもたくさんあると思うので、
あまり鵜呑みにしないほうがいいかもです。
ここに晒した時点で、もうこれだけ不具合が発覚しているわけですし。
0701nobodyさん2006/03/14(火) 02:53:07ID:???
>>698
もらた(゚д゚)ウマー
07026462006/03/14(火) 03:32:55ID:???
>>701
自分も、これだけ有益な情報を得られるとは正直思ってなかった。
同じく (゚д゚)ウマー ですよ。
0703nobodyさん2006/03/14(火) 05:25:57ID:???
perlしかわからないけど貰っておくよ!
0704nobodyさん2006/03/15(水) 10:00:07ID:???
>>700
配布サイトよりも解説サイトの方が 646氏は有名になれる希ガス。
そういうのは目指していないのかもしれないけど、コードを見ていて
そう思ったです。
0705nobodyさん2006/03/16(木) 07:38:03ID:???
あんなにコメントだらけじゃ読む気も失せる
0706nobodyさん2006/03/16(木) 07:54:20ID:???
失せていいよ。
読む人は他にいるんだから。
0707nobodyさん2006/03/16(木) 08:26:13ID:???
m9(^Д^)
0708nobodyさん2006/03/16(木) 19:39:42ID:???
>>705
┐(´ー`)┌
0709nobodyさん2006/03/16(木) 19:54:09ID:???
世の中にはプログラムの質よりただ綺麗なコーディングに拘る奇特な方もいらっしゃる
そんなことより先に技術見に付けろと言いたいが
0710nobodyさん2006/03/16(木) 20:32:47ID:???
>>705のような口だけバカはスルー
悔しかったら何か晒してみろバーカwww
0711nobodyさん2006/03/16(木) 20:34:32ID:???
>悔しかったら何か晒してみろバーカwww
スルーできてないじゃん
てかバーカwwwってガキかよ。。
スルーするならアンカーつけんな
0712nobodyさん2006/03/16(木) 20:44:44ID:???
そんなに悔しいのか>>705
バカって哀れだなw
0713nobodyさん2006/03/16(木) 20:51:07ID:???
だからスルーしろって
春だなぁ・・・
0714nobodyさん2006/03/16(木) 20:59:57ID:???
おいおい「春」って・・・ 2ch初心者かよwww
頼むから「逝ってよし!」とか使わないでくれよ
0715nobodyさん2006/03/16(木) 21:02:29ID:???
714 名前: nobodyさん [sage] 投稿日:2006/03/16(木) 20:59:57 ID:???
おいおい「春」って・・・ 2ch初心者かよwww
頼むから「逝ってよし!」とか使わないでくれよ


お前恥ずかしいからそろそろやめとけ
0716nobodyさん2006/03/16(木) 21:11:33ID:???
>>715
「春」だの常用しちゃって、恥かしいのはお前だろw
0717nobodyさん2006/03/16(木) 21:18:29ID:???
716 名前: nobodyさん [sage] 投稿日:2006/03/16(木) 21:11:33 ID:???
>>715
「春」だの常用しちゃって、恥かしいのはお前だろw



皿仕上げ
文末にw付けてるお前のほうが恥ずかしいよ
0718nobodyさん2006/03/16(木) 21:19:11ID:???
>>710=>>712=>>714=>>716
こういうのまだ居るのか・・・
0719nobodyさん2006/03/16(木) 21:19:35ID:???
おいおい「春」って・・・ 2ch初心者かよwww
頼むから「逝ってよし!」とか使わないでくれよ
0720nobodyさん2006/03/16(木) 21:19:50ID:???
常用の意味が分かってないようで
0721nobodyさん2006/03/16(木) 21:28:25ID:???
まーた春厨の煽り合いか…
飽きない奴らだな
0722nobodyさん2006/03/16(木) 21:32:48ID:???
713 名前:nobodyさん[sage] 投稿日:2006/03/16(木) 20:51:07 ID:???
だからスルーしろって
春だなぁ・・・


ブチキレてやんのwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0723nobodyさん2006/03/16(木) 21:33:44ID:???
711 名前:nobodyさん[sage] 投稿日:2006/03/16(木) 20:34:32 ID:???
>悔しかったら何か晒してみろバーカwww
スルーできてないじゃん
てかバーカwwwってガキかよ。。
スルーするならアンカーつけんな


皿仕上げ
文末にw付けてるお前のほうが恥ずかしいよ
0724nobodyさん2006/03/16(木) 21:34:52ID:???
718 名前:nobodyさん[sage] 投稿日:2006/03/16(木) 21:19:11 ID:???
>>710=>>712=>>714=>>716
こういうのまだ居るのか・・・


(ノ∀`) アチャー

0725nobodyさん2006/03/16(木) 21:36:02ID:???
705煽り耐性ゼロだな
0726nobodyさん2006/03/16(木) 21:36:09ID:???
>>709
技術の見本プリーズ
0727nobodyさん2006/03/16(木) 21:40:15ID:???
705のキチガイが消えるまで無理だろ
07286462006/03/16(木) 21:44:23ID:???
>>705
分かりやすいコメントの書き方って難しいよね。

>>709
ぶっちゃけ、綺麗なアーキテクチャにとことんこだわるタイプです・・・。
自分はSEとかには向いてないだろうなーと思う。
納期とか守る自信ないし、やっつけ仕事的なコーディングをすることに耐えられないと思う。
0729nobodyさん2006/03/16(木) 22:07:00ID:???
>>722-724
なんだこの酷い自演
0730nobodyさん2006/03/16(木) 22:09:26ID:???
>>717-720
なんだこの酷い自演




さすが>>705 脳が退化してる暇人
0731nobodyさん2006/03/16(木) 22:11:08ID:???
飽きれて物も言えないな
0732nobodyさん2006/03/16(木) 22:14:40ID:???
>>705,>>711,>>713,>>715,>>717,>>718,>>720,>>721,>>729
>>710,>>712,>>714,>>716,>>719,>>722,>>723,>>724,>>725,>>730

両者そろそろうざい
それと>>730
煽るなら失敗はするなよ、自分をアンカーに入れて何がしたいんだ
0733nobodyさん2006/03/16(木) 22:15:45ID:???
>>705






























ぷっ
0734nobodyさん2006/03/16(木) 22:26:55ID:???
>>732
お前もうざい
0735nobodyさん2006/03/16(木) 22:32:07ID:???
>>734
705乙
0736nobodyさん2006/03/16(木) 22:40:15ID:???
ち○こと705は無視しろよ。
0737nobodyさん2006/03/17(金) 00:45:59ID:???
>>728
せっかくなので E_STRICT も有効にしてみては?
いろいろ表示されてますよよよ。
0738nobodyさん2006/03/17(金) 00:49:06ID:???
必死な少佐がいると聞いて飛んできますた
0739nobodyさん2006/03/17(金) 00:52:50ID:???
   _, ,_  パーン
 ( ‘д‘)  
   ⊂彡☆))'A`)>738
07406462006/03/17(金) 01:31:17ID:???
>>737
すんません。PHP5は対象外なのです・・・。
0741nobodyさん2006/03/17(金) 10:29:27ID:???
久しぶりに来たらなんか伸びてるね
このメモ編集システムおもしろそう
07426462006/03/17(金) 15:21:30ID:???
>>741
それは、どうも。
このスクリプトって、外面的には、
初心者が勉強の一環として試しに作ってみた程度の機能しかついてないですけどねw
内面(セキュリティの面など)はそれなりのレベルまで高めてあるつもりですが。
0743nobodyさん2006/03/17(金) 21:13:37ID:???
>>742
セキュリティ重視なら表示くらいエスケープしなきゃだめじゃないっすかw
たぶんIEでしかチェックしていないんだと思いますけどFirefoxやOperaだと
削除できなくなりますよよよ。
それからPHP4で配列受けは大丈夫なんでしたっけ?
Windows版は今でも下みたいのをPOSTすると異常な動作しますけど。
$str = 'str';
for ($i = 0; $i < 10000; $i++) {
$str .= '[]';
}
$str .= '=test';
07446462006/03/17(金) 22:49:09ID:???
>>743
WinIE, Firefox(Win), Opera に加え、MacIE, Safari, Firefox(Mac), Konquerer(Linux) でもテストをしました。

削除できないとのことですが、よろしければそちらの環境を教えていただけますでしょうか?
出来るだけ環境に依存しない仕様にしたいので。

> セキュリティ重視なら表示くらいエスケープしなきゃだめじゃないっすかw 

このスクリプトは、サーバーの管理権限を持つユーザー(サイト運営者など)のみが
データの編集を行うことを想定しているため、
タグや実体参照のエスケープはしないようにしました。
ただし、万が一悪意のあるユーザーにログインされてしまうと、
クロスサイトスクリプティングによる攻撃を受ける可能性があるため
その危険性については readme.txt 内で言明してあります。

wiki や掲示板など、不特定多数のユーザーがデータを編集できるシステムについては
当然ながらデータを適切な形に変換する処理が必要だと思います。
0745nobodyさん2006/03/17(金) 22:54:06ID:???
いや、クローズドにしてても普通はエスケープ処理するよ
そんなの言い訳に逃げてちゃいかん
XSS対策しておくに越したことはない
07466462006/03/17(金) 23:08:26ID:???
>>745
自由にタグとか使えたほうが便利なんだけどな・・・(´・ω・`)

でも、利便性よりセキュリティを取る人もいるだろうし、
今後は、データにXSS対策を施すかどうかを
設定できるようにしたほうがいいかもしれないですね。
0747nobodyさん2006/03/17(金) 23:10:22ID:???
別に全部タグをエスケープしなくてもいいじゃない
使えるタグを設定できるようにすればいい
0748nobodyさん2006/03/17(金) 23:42:06ID:???
あれじゃタグ使えないとむしろ使いにくくない?
わざわざ認証つけて管理者しか使えないようにしてるんだから、
十分な気がするよ。
0749nobodyさん2006/03/17(金) 23:54:15ID:???
nucleusのソースと書き方似てる人多いね
07506462006/03/18(土) 00:23:10ID:???
>>749
nucleus のソースをダウンロードして中身を見てみた。
似てるのかな?w

コメントが Javadoc 形式なのは同じだと思います。
0751nobodyさん2006/03/18(土) 19:19:19ID:???
HTMLが使える使えないじゃなくて
入力されるデータによって操作できなくなるのは問題だな。
plaintext要素なんて使う奴居ないだろうけど。

>>737
PHP4.4以後の事を言ってるんだろうが
実行環境言わない奴はよく訓練されたベトコンだ。
0752nobodyさん2006/03/18(土) 19:23:31ID:???
まあ、いまのふいんきだと、気軽にショボイやつを発表するのはツライと言う事が
よくわかった。
0753nobodyさん2006/03/18(土) 22:32:16ID:???
>はよく訓練されたベトコン
出たよ
07546462006/03/19(日) 01:02:35ID:???
>>751
あ〜。なるほど。
例えば終了タグを閉じわすれたりとかね。
故意でやることはないと思うけど、"</form>"などの文字列を登録しちゃったらアウトですよね。

自己責任、と言いたいところだけど、やっぱり将来的には
特殊文字関連の扱い方をしっかり考えていきたいところです。
0755nobodyさん2006/03/19(日) 01:05:31ID:???
少佐はいますか?
0756nobodyさん2006/03/19(日) 01:09:08ID:???
つかSSIのタグ以外はエスケープしないでも大丈夫に思えるが
07577432006/03/19(日) 16:34:19ID:???
>>751,753
ベトコンのことは良く知りません。ベタコンなら知ってます。

>>754
そゆことです。

>>752
参加しやすいようにテンプレ作っといたから使ってみてちょ。

【設置場所】 http://example.com/test.php
【ソース】 http://example.com/test.txt
【プログラミング経験】 3ヶ月 / 1年 / 3年
【希望評価スタイル】 悪い部分を指摘して欲しい / 良い部分を指摘して欲しい
【自分の性格】 かかってこいや! / またーり / 叩かれると自殺しちゃうかも
【備考】 B90/W58/H86 です。
0758nobodyさん2006/03/19(日) 16:35:47ID:???
>>757
> 【備考】 B90/W58/H86 です。
これはほんとうですか
0759nobodyさん2006/03/19(日) 17:59:34ID:???
W59とか58は、実際は61〜65だというのが定説です。
0760nobodyさん2006/03/19(日) 18:40:58ID:ShpQS04P
【ソース】 http://www2.nct9.ne.jp/dorayaki/bbs.zip
【プログラミング経験】 6ヶ月
【職業】 工房(2年)
【備考】
掲示板を製作していたのですが、受験勉強のため、泣く泣く開発を中断しました。
どうせいじれないソースなら、公開してみなさんの意見を聞いたほうがいいと思っ
たので公開します。
サーバの設定に依存するところが多いので、設定ファイルも一緒にダウンロードで
きるようにしました。動かしたい人はそれを使ってください。
07617602006/03/19(日) 18:49:47ID:???
追加です。
・サーバルートにはbbs/publicディレクトリを指定してください。
・bbs/php_includes/parts/conf.phpのBASE_DIRは適宜変更してください。
説明が下手ですね…
0762nobodyさん2006/03/19(日) 18:51:51ID:???
アフィリエイトでお小遣い稼ぎしてたん?w
0763nobodyさん2006/03/19(日) 18:56:06ID:???
>>759
どうもありがとう。Wの部分が改変されやすいんですね。
07647602006/03/19(日) 18:57:18ID:???
>>762
私ですか? 私はやってませんけど、以前兄がやってたみたいです。
googleのインデックスにそれっぽいのが残ってますね。
私も公開したスクリプトでアフィリエイトしようかとたくらんで
いたのですが、開発が面白すぎるので、もうそっちはどうでもい
い感じです。
0765nobodyさん2006/03/19(日) 18:58:16ID:???
そかそか、受験頑張れよー。
07667602006/03/19(日) 18:59:59ID:???
>>765
ありがとうございます。
スクリプトの評価を楽しみにしながら受験勉強がんばります!!
0767nobodyさん2006/03/19(日) 23:13:03ID:???
>>760
う〜ん、この状態だと自分専用で他人が動かしてみようと言う気分にならないような。
標準で関数が揃っているものは自動化推薦(pathとか)
動かしてないからわかんないけどエラー処理が弱そうなのでその辺も強化すべし。
全体としてはこぎれいではあるけど読んで面白いプログラムではなさそうかな。
まあ、まずはプログラムより受験だね。
0768nobodyさん2006/03/20(月) 09:07:01ID:???
>>760
工房でこれだけ書ければ立派。
受験もガンガレ!
0769nobodyさん2006/03/20(月) 15:22:06ID:???
普通の工房なら立派
情報系の工房ならまぁ普通
07707602006/03/20(月) 15:55:01ID:???
>>767
>>768
>>769
ソースをダウンロードしていただいてありがとうございます。

>>767
pathの解析などは、自分でも無駄が多いと思っていたので、息
抜き時間ができたら、またいじくってみます。アドバイスあり
がとうございました。

>>768
そういっていただけるとうれしいです。受験勉強もガンガリます。

>>769
工でも情でも、ましてや商でもなく普通の工房です。

ちなみに、サーバのドキュメントルートにbbsフォルダごとぶっこ
んで、bbs/public/index.phpにアクセスするだけで動くように調整
してみました。(要 Apache & PHP5)
【ソース】 http://www2.nct9.ne.jp/dorayaki/bbs.zip
0771nobodyさん2006/03/21(火) 22:35:49ID:???
こらこら、遊んでないで勉強すれw
面白いものを作ろうと思ったら高校レベルの数学は必須だと思うぞ。
1例としてサイトを紹介しようと思ったけど時間の浪費になると思うのでやめとく。
とにかく今は勉強すれ。絶対損はしないから。
07726462006/03/22(水) 01:39:04ID:WKCyChdz
URI の validation システムを作ってみました。

【設置場所】 http://trashtoy.dw.land.to/app/uri/
【ソース】 http://trashtoy.dw.land.to/app/uri/uri.zip
【プログラミング経験】 3年
【希望評価スタイル】 重箱の隅をつっつくような細かい指摘もどしどしお願いします。
【自分の性格】 アーキテクチャにとことんこだわるタイプ。納期を守るのはたぶん苦手。
【備考】 現在、この uri モジュールを使って memo システムのアドバンス版を作成中。

>>760
高3でここまで作れるのは正直凄いと思う。僕が高3のときはPCに関してはド素人だったし。
受験も頑張ってね! ちなみに自分はただいま就活の現実逃避中。
0773nobodyさん2006/03/22(水) 15:23:56ID:???
>>772
parse_url を使った方がコンパクトでよいと思うよ
0774nobodyさん2006/03/22(水) 15:50:20ID:???
>>772
parse_urlを使わないことで得られる利点を教えてプリーズ
0775nobodyさん2006/03/22(水) 16:36:36ID:???
>>773 >>774
parse_url が扱うことが出来るのはあくまでも URL (Uniform Resource Locator) なので。
機能拡張して、URI (Uniform Resource Identifier) 全般を扱えるようにしたかった。

あと、このモジュールは ABNF に厳密に対応しているんだけど(まだ一部だけ手を抜いてるけど)、
将来的には、この文法に動的に制限を加えて書式を限定できるようにすることも視野に入れてます。
(例えば、"mailto:メールアドレス" 形式だけを受け付けられるようにしたり)

このシステム自体は、uri.php のテストのために作っただけです。
0776nobodyさん2006/03/22(水) 16:39:15ID:???
>>771
私は>>760さんと同じ高2です。
もし良ければ、そのサイトを教えていただけませんか?
数学は�Vは積分法の応用、Cは統計と確率が残っていますが、まだ厳しいでしょうか?
というのも、プログラミングで遊ぶのはこの春休みまでにしてパソコンは封印し、そのかわりに今のうちに多くのことを見ておきたいと思っています。
プログラミングは1年半で、CとC#とPHPしかできません。
0777nobodyさん2006/03/22(水) 17:50:21ID:???
$this->使うのとself::使うのはどう違うん?使い分けは?
0778nobodyさん2006/03/23(木) 02:17:21ID:???
数学なんてプログラミングにいるか・・・?
自分で複雑なアルゴリズムでも作るのか
0779nobodyさん2006/03/23(木) 02:30:04ID:???
ぼく引算はできないけど足算ならできるお!
0780nobodyさん2006/03/23(木) 02:58:33ID:???
>>778
2Dや3D、ゲームの世界なら必須
0781nobodyさん2006/03/23(木) 09:44:11ID:???
書き忘れましたがソースのダウンロード一回につき200円になりますので。
0782nobodyさん2006/03/23(木) 10:23:45ID:???
>>778
> 数学なんてプログラミングにいるか・・・?
> 自分で複雑なアルゴリズムでも作るのか

いるに決まってるだろアホ。
てめえみたいなのがいるからプログラマの単価がさがるんだよ。
氏ね
0783nobodyさん2006/03/23(木) 10:28:18ID:???
おまえらまとめてサインコサインタンジェント〜♪って歌っとけ。
0784nobodyさん2006/03/23(木) 10:32:05ID:???
その程度のレベルかよ。
ゲームプログラマですらその程度では
足りね。

くだらね。
0785nobodyさん2006/03/23(木) 11:04:16ID:???
オブジェクト指向が理解できないまま
プログラミング歴6ヶ月の高校生に追い抜かれた
0786nobodyさん2006/03/23(木) 16:02:52ID:???
オブジェクト指向も数学もできない奴はこの業界にはイラン。
0787nobodyさん2006/03/23(木) 16:06:16ID:???
微分や積分をクラスを使って管理できるくらいの能力は養うべき。
0788nobodyさん2006/03/23(木) 18:38:10ID:???
>>782
や、”プログラマ”は底辺ですから
0789nobodyさん2006/03/23(木) 18:44:26ID:???
ちん○は相手にするなと言ってるだろ
0790nobodyさん2006/03/27(月) 11:59:22ID:???
ここに現れる新人は潰されるということでよろしいか
0791nobodyさん2006/03/27(月) 14:33:19ID:???
>>788
底辺はお前だけ。
お前はソフトウェア工学を一生懸命勉強してきた人間に謝れ
0792nobodyさん2006/03/27(月) 15:28:48ID:???
はぁ、プログラマの実態を知らない夢見がちな青年が居るようで
■ このスレッドは過去ログ倉庫に格納されています