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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/12/18(日) 10:10:12ID:???
PHPに関するくだらねぇ質問用スレです。
ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
過去スレは>>2
0151nobodyさん2005/12/20(火) 17:47:58ID:???
名前は誤爆誤爆誤爆
0152nobodyさん2005/12/20(火) 18:30:08ID:???
XXXXserAAAAAAA;XXXXX

でAAAAAAAの部分を取得したいのですが、簡単な方法はありませんか?
Xは不特定、serと;は固定です。
0153nobodyさん2005/12/20(火) 18:34:09ID:???
>>152
なんかデジャブだし……
0154nobodyさん2005/12/20(火) 18:39:24ID:???
>>149
そうではなくて、例としては以下のような感じです。
――――――
<?php
$a="あいう";
echo $a;
?> えお
<?php
$X=出力取得関数();
?>
――――――
で$Xに"あいうえお"が入ってくれればいいんですが。
01551522005/12/20(火) 18:40:56ID:???
AAAAAAAの部分も不特定です。
i-modeの端末情報です。
0156nobodyさん2005/12/20(火) 18:47:01ID:???
>>154
http://jp2.php.net/manual/ja/ref.outcontrol.php
これを利用すると似たようなことできない?
0157nobodyさん2005/12/20(火) 18:48:25ID:???
>>155
933 名前:nobodyさん:2005/12/17(土) 01:04:26 ID:???
preg_match('/hoge(.*)hage/', $str, $pattern);
$result = $pattern[1];

01581542005/12/20(火) 18:54:35ID:???
>>156
ありがとうございます。ちらっと見た感じ、これでいけそうなんでこれを参考にして色々やってみます。
01591552005/12/20(火) 19:01:46ID:???
>>157
できましたー!どうもです。
0160nobodyさん2005/12/20(火) 19:37:05ID:???
画像のサイズを取得する関数を教えてください
0161nobodyさん2005/12/20(火) 19:50:28ID:???
>>160
ttp://www.php.net/manual/ja/ に行き、search for にキーワードを入力する。
今回は画像だから image あたりが良かろう。
で、検索すると、、、いかんな・・ダイレクトにヒットしてしまった・・
まぁいいか、、、イメージ関数つー関数群があることが分かる。
その中を見ていくと、画像のサイズに関係する関数が見つかるだろう。

さらに image size と2つのキーワード(or 検索)で探してみると、
いかにもそれっぽい関数が列挙される。
0162nobodyさん2005/12/20(火) 20:07:07ID:???
>>148
$fp = fopen("save_filename", "w");
fwrite($fp, file_get_contents("ext_filename"));
fclose($fp);
01631622005/12/20(火) 20:09:02ID:???
こっちの方が単純か。
file_put_contents("save_filename", file_get_contents("ext_filename"));
0164nobodyさん2005/12/20(火) 21:19:34ID:???
>>161
ただの誘導に10行もかけて勿体つけて書くなよキモいなお前
01651482005/12/20(火) 22:18:27ID:???
>>162-163
できました!!ありがとうございました!
0166nobodyさん2005/12/21(水) 09:23:55ID:???
はじめて行読み込みをしようと思ったのですが以下の物だと行が無くてもbreak;しません。
私は何か思いっきり勘違いしているのでしょうか?。

if (is_readable($file)){
$fp = fopen($file,'r');
for($i=0;$i<10;$i++){
if (!feof($fp)) break;
echo fgets($fp);;
}
fclose ($fp);
}
0167nobodyさん2005/12/21(水) 09:33:10ID:???
>>166
それだと行があったらbreak
0168nobodyさん2005/12/21(水) 09:35:36ID:???
>>166
> if (!feof($fp)) break;
ここ

つ ttp://jp2.php.net/manual/ja/function.fgets.php
マニュアルにそのものずばりの例がある。
まずはマニュアルを確認することをお勧めする。
0169nobodyさん2005/12/21(水) 09:52:00ID:???
>>167-168

feof()
ファイルポインタがEOFに達しているかまたはエラーの場合にTRUE 、 その他の場合にFALSEを返します。
だった(・・;。手っきり反対の動作をするのかと思い込んでいました。

ありがとうございます。
0170nobodyさん2005/12/21(水) 10:28:15ID:???
while(!feof($fp))
は無限ループに注意
0171nobodyさん2005/12/21(水) 12:39:22ID:RHXLhrgR
htmlspecialchars()でENT_QUOTESが、デフォルトでなく
オプション扱いになっている理由って、何が考えられますかね?
0172nobodyさん2005/12/21(水) 12:55:23ID:???
>>171
PHP/FI Version 2.0の同名の関数が<>&"しか対応してなったから後方互換性のためだと思われる
PHP/FIが ' に対応しなかった理由は知らない
0173nobodyさん2005/12/21(水) 13:02:28ID:RHXLhrgR
>>171
なるほど、歴史的な理由である可能性が高いですか。
デフォルトでついてた方が楽なんだけどな〜。
これ、ただでさえ関数名長いから、めんどくさいですね。
0174nobodyさん2005/12/21(水) 13:09:37ID:???
>>173
ENT_QUOTESをいれた形でユーザー関数にしておけばいいだけでは?
0175nobodyさん2005/12/21(水) 13:11:51ID:???
>>173
関数名や引数の補完機能の付いているエディタや開発環境を使うと便利ですよ。
この板にもエディタや開発環境のスレが3つくらいあったかな。
おいらはシンプルなエディタで補完機能を使わずにキーワードの強調表示だけしてますが。
(補完時の入力・表示に瞬間的に引っ掛かる感じがどーも苦手で。。)
0176nobodyさん2005/12/21(水) 14:52:12ID:???
date<>title<>message<>
となってて、長いmessageを携帯用に分割して表示するようにしたいのですが
何か良い方法はありますか?
0177nobodyさん2005/12/21(水) 14:55:11ID:???
>>176
好きなところで分割すればいいじゃん
0178nobodyさん2005/12/21(水) 14:56:19ID:???
>>172
JavaScriptとかで「'」を利用する場合の方が多いと考えられてるんじゃないのかな。
逆に「'」を常に変換したい場合ってそんなにあるもの?
JavaScriptで普通に「'」を使うように、通常は「'」なんて参照文字に変換する必要って無いと思うんだけど。
0179nobodyさん2005/12/21(水) 15:06:11ID:???
>>175
http://www.php-editors.com/review/
0180nobodyさん2005/12/21(水) 15:08:58ID:???
>>179
DWが上位なのが意外だ・・・
0181nobodyさん2005/12/21(水) 16:32:54ID:???
あれ?DWのPHPってそんなに使い勝手良かったっけ・・?
0182nobodyさん2005/12/21(水) 16:48:01ID:???
マニュアルにも載ってるPHP向けエディタリスト
ttp://www.thelinuxconsultancy.co.uk/phpeditors.php
0183nobodyさん2005/12/21(水) 17:09:36ID:???
>>180
それってただ並べてるだけじゃないの?
User Raitingは低いよ。
一番はPHP Designer 2005
0184nobodyさん2005/12/21(水) 17:17:17ID:???
それより更に下をいくZendStudio・・・
0185nobodyさん2005/12/21(水) 17:23:20ID:???
ttp://hp.vector.co.jp/authors/VA035840/sd_php.htm
0186nobodyさん2005/12/21(水) 17:43:03ID:???
エディタは補完機能+軽さかなぁ
いろいろ使ってみたけど、どれもしっくりこないんだよね・・・
何か良いのがないかしら

あ、本題です。require('./'.$dir.'.dat');とする場合に$dirに含まれると問題がある文字は
あるのでしょうか?。先頭に「./」を付けていてもディレクトリをさかのぼられる事はあり
ますか?。
0187nobodyさん2005/12/21(水) 18:06:40ID:???
いろんなエディタを使って結局xyzzyに落ち着いてる自分ガイル。
0188nobodyさん2005/12/21(水) 18:50:05ID:???
>>186
ある。 ../ は .././.././ のようになっててもきちんと動く。
0189nobodyさん2005/12/21(水) 18:51:17ID:???
英語よめんからphp_editor使ってる
0190nobodyさん2005/12/21(水) 19:09:55ID:???
Eclipse(TruStudio)だろ。
サーバでテストするまでもなくエラー箇所出してくれるし。
細かい手間が省ける。
0191nobodyさん2005/12/21(水) 19:19:35ID:???
こんばんは。お邪魔します。
テキストファイルに書き込む毎に1増やすようにしたのですが

1,2,3,4,5,6・・・

と記入されていきます。
ここまではいいのですが、例えば3と5を消す処理をしたとします。

1,2,4,6・・・とテキストファイルには表示されます。

ここで次にファイルに書き込む時に3を、その次に書き込む時は5としたいのです。
漠然とした例えで分り難いかもしれませんが、よろしければ教えて頂けないでしょうかm(_ _)m
0192nobodyさん2005/12/21(水) 19:23:09ID:???
>>191
頭から調べればいいじゃん
01931862005/12/21(水) 19:31:24ID:???
>>188
どうしたら良いのかなぁ
while(preg_match('|\./|',$dir)) $dir = str_replace('./','',$dir);
これでどうでしょうか?

>>191
欠番補完したいなら分割して1つずつ確かめて行くしかないと思うよ(^^;
01941862005/12/21(水) 19:36:34ID:???
$dir = '.././..././///////';
while(strpos($dir,'./') !== false) $dir = str_replace('./','',$dir);

結果が「////」となりましたが、これは問題があるでしょうか?
0195nobodyさん2005/12/21(水) 22:24:02ID:???
GDを使って折れ線グラフを作るのは難しいんですか?
調べてもよく分からないのですが。
0196nobodyさん2005/12/21(水) 22:31:11ID:???
特に難しいもんでもないよ。
かといって、配列を渡せば折れ線グラフが自動作成される
つーよーな便利関数があるわけでもない。
0197nobodyさん2005/12/21(水) 23:00:04ID:???
>>195
GDでゴリゴリ書いてもいいけど、普通はJpGraphなんかを使う罠。

ttp://www.aditus.nu/jpgraph/
ttp://www.asial.co.jp/products/jpgraph/
0198nobodyさん2005/12/21(水) 23:04:37ID:???
ライセンスの心配がある場合は、phplotってのもありかな。
0199nobodyさん2005/12/21(水) 23:19:31ID:???
ファイルをアップロードするPHPを記述した時に

$filename = $_FILES['rep']['name'];
if(file_exists($_FILES['rep']['tmp_name'])){ //ファイルの存在を確認 tempの状態で確認
if(ereg("(^[a-zA-Z0-9_-]+)\.(lzh)",$filename)){
list($filenamea,$filenameb) = explode(".",$filename);
$repnum = $_GET['repnum'];
move_uploaded_file($_FILES['rep']['tmp_name'],$repnum.".".$filenameb);
exit;
}
}

とし、「aiueo.lzh」を送信した所、「.lzh」と保存されてしまいます。
ちゃんと$_GET['repnum']が通っていないのかと思い、
echo $repnumすると、きちんとGETによって渡された数字が表示される様子。
何がおかしいのかさっぱりなのですが、どこか間違った点があれば教えて下さいm○m
0200nobodyさん2005/12/21(水) 23:57:58ID:???
>>199
$repnumが日本語で文字コードが絡んでるとエスパってみる
0201nobodyさん2005/12/22(木) 00:12:32ID:???
>>200さん
レスありがとうございます
$repnumには10や11など数字がはいっております…。
アプロダのあるphpは一つ上の階層なんですが、関係無いですよね。
0202nobodyさん2005/12/22(木) 01:37:25ID:???
>>191
$list = "1,2,3,5,8,9";

for($ar = explode(",", $list), $i = 0; $i < (count($ar) - 1); $i ++) if($ar[$i + 1] != $ar[$i] + 1) break;
$num = $ar[$i] + 1;

print "ret = $num";
0203nobodyさん2005/12/22(木) 01:43:55ID:???
>>199
素朴な疑問なんだが、アップロードしてるってことは<form>のmethodはPOSTなんだろ?
なんでrepnumはGETで渡した値を参照してるの?
repnumの値をどこでどのように確認したのか気になる…
0204nobodyさん2005/12/22(木) 02:11:34ID:f6FkYizC
mail関数が使えない現象が出ています。
phpinfoのstandard項目にsendmail_pathの記述がない。

ぐぐった結果、qmailのwrapperをシンボリックリンクにして
再度コンパイルしてインスコ。

それでも現象は変わらぬ。
php.iniも確認してsendmail_pathの記述は書かれているの
確認したんだけどなー
0205nobodyさん2005/12/22(木) 02:16:34ID:???
現象ってどういう現象が出てるんだ。
何かエラーメッセージが出てくるの?
0206nobodyさん2005/12/22(木) 02:18:08ID:f6FkYizC
出てきません。
mail関数が有効にならない。

qmailのsendmail-injectでサンプルメールを飛ばしたが
それは動いています。
0207nobodyさん2005/12/22(木) 02:39:47ID:NhSg4vO8
eregi_replaceを使って
>>[0-9]+
の数字の部分をリンクにしたいのですが
>>の部分を認識して貰えません。

$str = eregi_replace("(>>)(0-9]+)","<a href=\"#\\2\">\\1\\2</a>",$str);

>>と書くだけでは駄目なのでしょうか?他にも適当に試しましたがうまくいきませんでした。
0208修正2005/12/22(木) 02:42:23ID:NhSg4vO8
× "(>>)(0-9]+)",
○ "(>>)([0-9]+)",
0209nobodyさん2005/12/22(木) 02:46:50ID:???
ここまで独り言
0210nobodyさん2005/12/22(木) 02:58:30ID:???
>>207
「>>」はhtmlspecialchar()しないとブラウザじゃまともに表示されないかも
0211nobodyさん2005/12/22(木) 04:50:58ID:???
>>210

"(&gt;&gt;)([0-9]+)",

で出来ました。
ありがとうございました。
0212nobodyさん2005/12/22(木) 07:50:01ID:???
>>193
$dirって外から入力された値?
だったら".."が含まれた時点で不正な入力と表示して終了。
0213nobodyさん2005/12/22(木) 08:38:23ID:???
>>203さん
レスありがとうございます。
http://〜/a.phpには

http://〜/upload/b.php?repnum=15

というリンク先にリンクしております。
このような感じでGetでrepnumを渡しているのですが…。
空白が表示されるという事は
値が入っていない = ファイルをPostされた時点でGetの中身が消えてるのでしょうか…。

$repnum = Get_['repnum'];

の位置を変えてみるも駄目でした。
相変わらず「.lzh」になるようです
0214nobodyさん2005/12/22(木) 09:15:49ID:???
>>213
$newfilename = $_GET['repnum'].".".$filenameb;
echo $newfilename;
move_uploaded_file($_FILES['rep']['tmp_name'],$newfilename);

とやって$newfilenameはどう表示されるの?
まさかと思うけど、typoしてるってことないよね。
0215nobodyさん2005/12/22(木) 09:55:11ID:???
>>214さん
レスありがとうございます。
只今外出先の為確認できないので、お昼休憩の際に早速確認させて頂きます。
ちなみに、聞き覚えの無い言葉ですが、typeoとは何でしょう?
無知で申し訳ないですTT
0216nobodyさん2005/12/22(木) 10:04:52ID:???
>>213
ブラウザにもよるんだが、POSTでフォーム送信したときは
URLの後ろに?〜でパラメータつけても無視される場合があるぞ。
設計から見直した方がいい。
0217nobodyさん2005/12/22(木) 10:07:17ID:???
>>215
ty・po
━━ n. 〔話〕 誤植, タイプミス.
                         三省堂提供「EXCEED 英和辞典」より
0218nobodyさん2005/12/22(木) 10:11:19ID:???
>>213
> http://〜/a.phpには
> http://〜/upload/b.php?repnum=15
> というリンク先にリンクしております。
意味が分からん。
a.phpがアップロードのFORMが書いてあるページなのか?
それともb.php?repnum=15がアップロードFORMのページなのか?
ちょっとFORM部分のHTMLを書いてみろよ。特にacdtion=がどうなってるか。
なんかWebプログラミングを根本的に勘違いしてるヨカーン
0219nobodyさん2005/12/22(木) 10:12:22ID:???
おっと。typo。acdtionでなくactionな。
0220nobodyさん2005/12/22(木) 10:14:50ID:???
>>215自身がtypoしてるじゃないか。
0221nobodyさん2005/12/22(木) 10:55:36ID:???
>>218
http://〜/a.phpのFORMのactionにhttp://〜/upload/b.php?repnum=15
がかかれているということだと思ったり思わなかったり…
0222nobodyさん2005/12/22(木) 11:07:09ID:???
>>216-220さん
レスありがとうございます。

>>216さん
そうなのですか、知らなかったです…。
当ブラウザはIE6.0ですが、設計の見直しも必要かもしれないのですねTT

>>217さん
ありがとうございます、勉強になりました。

>>218さん
formが書いてあるのはbの方法です。form部分は

<form method="post" enctype="multipart/form-data" action="b.php">
<input type="file" name="rep" size="30">
<input type="image" name="submit" src="画像のURL">
</form>

となっております。
HTML部分はPHP記述の下です。

皆さん意見下さってありがとうございます。
もう少し面倒見て頂ければ嬉しいですm○m
0223nobodyさん2005/12/22(木) 11:12:23ID:???
>>218さん
formの記述はb.phpの方にしており、a.phpには

http://〜/upload/b.php?repnum=15

へのリンクだけとなっています。
やはりform部分に問題がありそうでしょうか…?
0224nobodyさん2005/12/22(木) 11:33:13ID:???
>>223
b.phpに以下を足して中身を確認したら…
print_r($_POST);
print_r($_GET);
0225nobodyさん2005/12/22(木) 11:58:23ID:???
すみません。PHPを勉強中のものですが、以下のエラーがでてどうしても
原因がわかりません。おしえてください。

エラー:Errors parsing D:\Program\APACHE~1\Apache2\htdocs\1-5.php
PHP Parse error: parse error, unexpected $end in D:\Program\APACHE~1\Apache2\htdocs\1-5.php on line 15
02262252005/12/22(木) 11:59:40ID:nKaKNsDz
本文:ちなみに一番下の行が15行目です。

<?php
if($_POST['user']){
print "Hello,";
print $_POST['user'];
print "!";
} else {
print <<< _HTML_
<form method="post" action="$_SERVER[PHP_SELF]">
Your Name:<input type="text" name="user">
<br>
<input type="submit" value="Say Hello">
</form>
_HTML_;
}
?>
0227nobodyさん2005/12/22(木) 12:10:58ID:???
>>223さん
レスありがとうございます。
もうすぐお昼なので、確認してみたいと思いますm○m

>>225さん
定義されていない変数があるという事だと思います。

$_SERVER["PHP_SELF"]

ではないでしょうか?
0228nobodyさん2005/12/22(木) 12:14:27ID:???
ヒアドキュメントまったく使わない俺だがよく見る質問なので覚えた。
{}で括れと
0229nobodyさん2005/12/22(木) 12:16:35ID:???
>>222
> <form method="post" enctype="multipart/form-data" action="b.php">
> <input type="file" name="rep" size="30">
> <input type="image" name="submit" src="画像のURL">
> </form>
この中に
<input type="hidden" name="repnum" value="<?=$repnum?>">
を追加しないとそもそも2度目の送信(アップロード時)にはrepnumは渡らん。
おまえ、1度送信しとけば値はずっと保存されると勘違いしてるだろう。

その上で、アップロード時のrepnumの受け取りは$_GETから$_POSTに変更シレ
02302252005/12/22(木) 12:17:07ID:???
>>227様
速レス感謝です。
今、偶然、違う本に解決方法がのっていました。

ヒアドキュメントの終わり、_HTML_;の行には、
タブ、スペース、コメント又その他の文字は書いていけないらしいです。
書いていいのはヒアドキュメントの終わりの印(この場合だと_HTML_)と
文の終了を示すセミコロン(;)だけだそうです。

速レス感謝します。
0231nobodyさん2005/12/22(木) 12:17:41ID:???
失礼しました
$_SERVER['PHP_SELF']

かな…?
0232nobodyさん2005/12/22(木) 12:19:04ID:???
>>230
外れ
>>231
それも外れ
0233nobodyさん2005/12/22(木) 12:19:17ID:???
>>225
問題なく動くが?
0234nobodyさん2005/12/22(木) 12:19:42ID:???
解決しましたか^^;
的外れでしたが良かったです。
02352252005/12/22(木) 12:21:45ID:???
>>228様
使用しなければいけない場面になったら、参考にします。
ありがとうございます。
02361.0008(破滅挑発) ◆rzOmotimAo 2005/12/22(木) 14:59:24ID:DhSg+gn2
新スレ、誰か立てて
自分で立てようとしたら
「このホストではしばらくスレ立てができません」
ってなる。

【板名】webprog板
【板のURL】http://pc8.2ch.net/php/
【タイトル】中央銀行システムを作らせながらPHP屋を捕獲するスレ2匹目
【名前】Omoti

【本文】
中央銀行システムをつくることで
経済、金融を理解しようというスレ。
0237nobodyさん2005/12/22(木) 15:49:47ID:???
( ´,_ゝ`)プッ
0238nobodyさん2005/12/22(木) 15:59:13ID:???
Omotiさんそろそろやめとけっていう神の思し召しじゃないの?
02391.0008(破滅挑発) ◆rzOmotimAo 2005/12/22(木) 16:14:05ID:???
>>238
あなたは神の声が聞こえちゃう人ですか?
0240nobodyさん2005/12/22(木) 16:18:46ID:???
  _
  \ヽ, ,、
   `''|/ノ
    .|
_   |
\`ヽ、|
 \, V
    `L,,_
    |ヽ、)                ,、
   .|                   ヽYノ
   /                     r''ヽ、.|
  /        ,.. -──- .、    `ー-ヽ|ヮ
 .|      , ‐'´   __     `ヽ、  `|
  |    / , ‐'"´       ``''‐、  \  |
  |   / /             \ ヽ |
  ヽ,  y'   /` ‐ 、    ,.. -'ヘ   ヽ. }ノ
   ヽ,'     /   /`,ゝ' ´     ヽ   Y.
.    i    ,'     { {        ヽ   `、
    l    ,イ─- 、.._ ヽ ,, _,.. -─:}   !
.    |  r‐i| ー=ェェ:ゝ ,.∠ィェェ=ー' |r 、.  l
   |  {ト」l|.      : | "    ``: |!トリ  |
.  │  ヽ、|      ;.」_      |'ソ    !
.  │     ヽ     r──ッ    /ノ    |
    |      lヽ    ̄ ̄     / イ    │
.    !    丶ヾヽ    ~   , ' ノ │   !
    ト.    ミ.ゝ ヽ.____./  /  l   /
    ヽ  ヽ           イ ,' / , '       ┼ヽ  -|r‐、. レ |
     \.             ノレ'/         d⌒) ./| _ノ  __ノ
0241nobodyさん2005/12/22(木) 16:29:59ID:???
>>236
俺は貴重なスレ立て権をそんなクソスレで使うのはいやだ
この板のBBS_THREAD_TATESUGI=64だからあと64個新スレがたてば同じIPでスレが立てられるぞ
0242nobodyさん2005/12/22(木) 16:44:30ID:???
ここの立てすぎは新仕様じゃないの
02431.0008(破滅挑発) ◆rzOmotimAo 2005/12/22(木) 16:45:10ID:???
>>241
ケーブルだからIP代わるまで3日かかるな
次スレたてるまで3日も待たないとだめなのか

とりあえず
http://orz.my.land.to/omoti/
だけ動くように復旧してもらえないかな?
動かして遊びながらいろいろ考えるんだから
http://image02.wiki.livedoor.jp/o/4/omoti4/2476ae40ddca3894.png
02441.0008(破滅挑発) ◆rzOmotimAo 2005/12/22(木) 16:45:45ID:???
>>242
新仕様って?
鯖全部で64個とか?
02451.0008(破滅挑発) ◆rzOmotimAo 2005/12/22(木) 16:47:26ID:???
緊急の手段として、
ノーパソ持ってグレ電からダイヤルアップかな
0246nobodyさん2005/12/22(木) 16:54:43ID:???
>>1とかを正規表現で認識する方法を教えてください
0247nobodyさん2005/12/22(木) 17:47:30ID:3rnz5g5i
>>178
JavaScriptなら、"も変換されると困るわけだから、
デフォルトで、"は変換されて'は変換されない理由にはなってないかと。

"は変換されて欲しいけど、'が変換されて欲しくないケースって、
ほとんどないんじゃないかな、と思う。
それがデフォルト設定になっているけれど。
02481.0008(破滅挑発) ◆rzOmotimAo 2005/12/22(木) 17:47:40ID:???
中央銀行システムを作らせながらPHP屋を捕獲するスレ2匹目
http://pc8.2ch.net/test/read.cgi/php/1135240078/

新スレたったからいいや。
0249nobodyさん2005/12/22(木) 19:11:47ID:vwG+O/GX
513 名前:もしもし、わたし名無しよ 投稿日:2005/12/22(木) 18:37:36
505です
先週来、うちのサーバのアクセスログに、こちらの(うちには存在しない)PHPを呼び出そうとする
ようなアクセスがあったというエラーが延々と記録されてます。
ありそうな名前のPHPを呼び出して、何かをさせようとしているみたいです。
たとえば /blog/xmlrpc.php とか。
うちは、今のところはエラーログが太る程度で済んでいるのですが。
パターンは2つ。
ひとつは、ある種のスクリプトを起動させて、妙なクエリ渡して、結果をどこかに送信させようとしているみたい。
もうひとつは、直接ブログ(らしい)PHPに対してPOSTで何かを送りつけています。
アクセス元のアドレスを探ってみると、多くは個人サーバ(らしき所)でPHPでブログが動いているようなんです。
あくまで推測ですが、
ある種のPHPに何かの脆弱性が見つかって、これを突いて伝染するのではないかと。
感染した所は別のブログを探して・・・だと怖いなあと。
今回の手口は、ありそうなPHPの名をそのまま呼び出しす機械的なパターンです。
CGIもそうですが、他所から貰ってきたスクリプトなどを置く場合は、
(1)ファイル名を変えるか、設置する場所の名を標準的な名でなくする。
(2)変数や引数の名を推測しにくい名に変更する。
ぐらいはしておく方が安心だと思います。

というレスを別の板で見たんだけど、
この板で話題になってるスレってありますか?
0250nobodyさん2005/12/22(木) 20:06:23ID:???
>>249
それウイルスだよ
うちにも来てた

こんな文章書かずに/blog/xmlrpc.php でぐぐれば直ぐ解ると思うが・・・
釣りか-;
0251nobodyさん2005/12/22(木) 20:49:52ID:iK3Yz+s2
<form action='entry.php' method='post'>
<input name="password" type="password" value="" size="12" maxlength="12">
<input type='submit' name='update' value='更新'>
<input type='submit' name='delete' value='削除'>
<input type='hidden' name='id' value='hogeid'>
</form>

上記のようなフォームを作り、掲示板の中身を更新、削除を実行したいと思っています。
このとき、1つの<form>に二つのボタンが存在するのですが、どちらが押されたかを正確にPHPに伝えるにはどうしたらよいのか分かりません。
「更新」や「削除」というテキスト情報が送られるのでそれでチェックとか
やろうとすると文字コードとかその辺が原因なのかうまくいきません。。
また、下記のように情報が入っているかでやってみましたが何度か成功するものの、やはり高確率で失敗します。

if(isset($_POST['delete'])){ delete($_POST['id']); }
else if(isset($_POST['update'])){ update($_POST['id']);}
何卒、よろしくお願いしますm(_ _)mペコリ
■ このスレッドは過去ログ倉庫に格納されています