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

くだすれPHP(超初心者用)6

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2009/04/05(日) 22:04:26ID:???
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
PHP使いが優しくコメントを返しますが、
お礼はPHPの布教と初心者の救済をお願いします。

PHP Home Page
ttp://www.php.net/
ttp://jp.php.net/

前スレ
くだすれPHP(超初心者用)5
http://pc11.2ch.net/test/read.cgi/php/1227303362/

関連スレ
PHP総合雑談スレ
http://pc11.2ch.net/test/read.cgi/php/1200314111/
PHP初心者勉強会やらんかね!
http://pc11.2ch.net/test/read.cgi/php/1209137730/
0755nobodyさん2009/08/05(水) 00:24:34ID:???
PHPはそれなりに長続きすると思う。
0756nobodyさん2009/08/05(水) 09:47:24ID:gQxriDt5
PHPをバカにしていたが、使いこなせるようになると、
手放したくなくなるな
0757nobodyさん2009/08/05(水) 09:54:59ID:???
使いもせずに評価してたのか
0758nobodyさん2009/08/05(水) 10:12:59ID:???
>>756
そのとおり
で、サイト内に自由に吐き出したい部分だけを
持ってくる
これができるようになると、もっと実感できますぞ
0759nobodyさん2009/08/05(水) 10:52:11ID:???
Sigma Visual Ajax GUI Builder
ttp://www.sigmawidgets.com/products/sigma_visual/

これがもっとうまく作れるようになるともうWindowsイラネってレベルになるのに・・・
0760nobodyさん2009/08/05(水) 16:45:34ID:Oexv7raq
.mailfilterに属性600、改行\nで
to "| /usr/local/bin/php /home/アカ名/www/test.php"
と記入し、メール受信でPHPを起動するようにしたのですが
通常はちゃんと起動するのですが
PHPに
require_once 'Mail/mimeDecode.php';
を書くとメールを送っても
Returned mail: see transcript for details
が返信されて起動しません

php.iniのインクルードは
include_path = ".:/home/アカ名/pear/PEAR"
で、実際にPEAR以下にMail/mimeDecode.phpは存在しています

メール送信からこれを起動させるにはどうすればよいのでしょうか?
0761nobodyさん2009/08/05(水) 17:12:46ID:???
>>760
CLIでphp.ini参照先が違うとか
0762nobodyさん2009/08/05(水) 20:28:36ID:???
PHPによるECサイトプログラミング~ショッピングカートから決済まで
―MySQLのデータベース設計とPHPセッション管理の作法
大角清美

PHPの勉強しようと本屋にいったら「ひろゆき推薦とかいう」すごい本を見つけた・・・
本を開いたときにデスクリムゾンをはじめてみた時のような衝撃を受けた・・・
アマゾンでどんなレビューされてるかと思ったらアマゾンのレビューの
信憑性のうわさは本当だとわかった・・・
0763nobodyさん2009/08/05(水) 23:31:52ID:???
もとがアンサイクロペディアか・・・
どこからネタなのか判断不能だな。
0764nobodyさん2009/08/06(木) 00:11:19ID:???
>752
書いたものをこの先ずっと使いたい、というならJavaかPerlをオススメする。
PHPやRuby, Pythonなんかは後方互換性をあまり重視しない言語。
分かりやすくいえば、今PHP5で普通に書いたコードが、PHP6で動かなくなる可能性というのが、それなりに高い。
0765nobodyさん2009/08/06(木) 01:21:59ID:???
自動的にphp5のコードを6に書き換えるソフトってないの?
0766nobodyさん2009/08/06(木) 01:29:20ID:???
すぐにボツになりそうな組み込み関数とか使わないようにすればいいだけ
0767nobodyさん2009/08/06(木) 07:35:58ID:???
例えば?
0768nobodyさん2009/08/06(木) 09:48:18ID:???
>>764
それは Perl6 は出ないから、という高度な皮肉か?
0769nobodyさん2009/08/06(木) 09:53:56ID:h+wjIr1t
Perlって終わった言語じゃないのか?
これからはPHP
0770nobodyさん2009/08/06(木) 09:58:22ID:???
後方互換捨てた Python 3, Ruby 1.9.1 が出たことで
Python, Ruby は数年は互換性は気にしなくてよさそう。

Perl は Per5 に不満を持っていないから
Perl6 が出てもずっと Perl5 を使いそう。

PHP は x.y.z の z ですら互換性がなくなったり
goto が追加されたりと目が離せません><
0771nobodyさん2009/08/06(木) 09:59:59ID:???
zって何?
0772nobodyさん2009/08/06(木) 10:06:16ID:w20GGpoy
簡単なアップロードスクリプトを作成しました。
<h3>ファイルアップロード</h3>
<?php
// ファイルを保存するディレクトリ
$save_dir = "./";
$enc_disp = "EUC-JP"; // ブラウザ表示文字コード
$enc_file = "SJIS"; // 保存ファイル名文字コード
// ファイルがアップロードされたものなら処理をする
if (is_uploaded_file(@$_FILES["upfile"]["tmp_name"])) {
// ファイル名の文字コードを変換する
$file_name = $save_dir.$_FILES["upfile"]["name"];
$det_enc = mb_detect_encoding($string, $enc_disp . ", " . $enc_file);
if ($det_enc and $det_enc != $enc_file) {
$file_name = mb_convert_encoding($file_name, $enc_file, $det_enc);
}
// テンポラリファイルを保存ディレクトリにコピー
copy($_FILES["upfile"]["tmp_name"], $file_name);
echo "<p>ファイルアップロード完了";
echo "<p>ファイル名:".$_FILES["upfile"]["name"];
}
?>
<form enctype="multipart/form-data"
action="<?php echo $_SERVER["PHP_SELF"]?>" method="post">
<input type="file" name="upfile">
<input type="submit" value="アップロードする">
</form>
実際に使うとアップロードされましたと表示されるのですが、フォルダ内にはファイルが特にありません。
どこが問題で何が原因なのかわからない状態です。
くだらない質問ですがどなたかアドバイスいただけると助かります。
0773nobodyさん2009/08/06(木) 10:09:23ID:???
そりゃ何も判定してないで「アップロード完了」をただechoしてるだけじゃん
どこで想定外の動きしてるかチェックしたほうがいいよ
http://www.php.net/manual/ja/function.move-uploaded-file.php
あとこことか参照
0774nobodyさん2009/08/06(木) 10:47:35ID:???
>そりゃ何も判定してないで「アップロード完了」をただechoしてるだけじゃん
なんか吹いたわ
07757722009/08/06(木) 11:37:21ID:w20GGpoy
>>773
すいません。
ご指摘の通りですね。
改良して問題なく動くようになりました。
ありがとうございます。
0776nobodyさん2009/08/06(木) 11:53:52ID:oShIeqJ9
>>761
CLIを調べてみましたが、レンタル鯖では設定できないようなので
PHPに直接インクルード指定でできました
ありがとうございました
0777nobodyさん2009/08/06(木) 19:20:12ID:???
フォームからPOSTしたパラメータをdBug.phpで見ると、
x, y ってのが入ってるんだけど、何これ?
0778nobodyさん2009/08/06(木) 19:22:29ID:???
dBug.phpで見なくても入ってるだろ?
0779nobodyさん2009/08/06(木) 19:23:35ID:???
ボタンを押した座標。
0780nobodyさん2009/08/06(木) 20:18:23ID:???
>>779
あ、そうなの?知らなかった。
ボタン上の相対座標かな?
0781nobodyさん2009/08/06(木) 20:34:15ID:???
>>780
ここが判りやすい
ttp://www.tagindex.com/html_tag/form/input_image.html
0782nobodyさん2009/08/06(木) 21:10:24ID:???
>>781
�d。勉強になった。
0783nobodyさん2009/08/07(金) 23:58:02ID:Q5392INl
質問させてください。
プログラミング超初心者です。
下のコードの、ユーザー定義関数の作成部分で、
いきなり、$in_key とか $in_list とか
急に "$in_"というようになるのが理解できません。
なぜ、$key が$in_key となるのでしょうか。

<?php

$key = "バナナ";
$list[0] = "りんご";
$list[1] = "みかん";
$list[2] = "イチゴ";
$list[3] = "バナナ";
$list[4] = "ぶどう";
$flg = check_proc($key,$list);
if ($flg) {
print "「".$key."」に該当するデータが見つかりました。\n";
}

function check_proc($in_key,$in_list) {
$ret = false;
foreach($in_list as $key) {
if ($key == $in_key) {
$ret = true;
break;
}
}
return $ret;
}

?>
0784nobodyさん2009/08/08(土) 00:02:55ID:???
関数の引数とグローバル変数が一致したらまずいだろ。
0785nobodyさん2009/08/08(土) 00:12:57ID:???
>>784
即レスありがとうございます。
ただ、学習不足のため、いまいち飲み込めません。
"$in_ "というのは、こういう構文の場合に付けるもんだと
理解しておけば良いのでしょうか。
0786nobodyさん2009/08/08(土) 00:20:25ID:???
>>785
半分正解。

"$in_"とか"$tmp_" "$cash_" "$hoge"など、これら関数の名前付けは
機能(処理内容)や個人の趣味。
0787nobodyさん2009/08/08(土) 00:26:17ID:???
>>786
ありがとうございます。
なんとなくですが、わかりました。
hoge とかと同じ感じなのですね。
学習を始めたばかりで、ここでつまづいて困ってました。
ありがとうございました。
0788nobodyさん2009/08/08(土) 00:38:10ID:???
in_array($key, $list)でいいような
0789nobodyさん2009/08/08(土) 00:47:45ID:???
>783
function check_proc($in_key,$in_list)
と定義した関数を
check_proc($key,$list)
と呼び出すと、呼び出した時点での$key, $listの値が、check_proc()の$in_key, $in_listのところに入った処理が実行される。

つまり、$in_keyと$in_listは、keyやlistとはまったく無関係な別の名前でも問題ない。
function check_proc($in_key,$in_list)
の$in_key,$in_listと、その後の関数内の$in_key,$in_listをセットで別のものに置換しても問題なく動く。
関数の中で使う変数名は、外の変数名とは一切関係ない。

ちなみに>784は大嘘をこいてるが、別に一致してても問題ない。
人によっては多少読みづらくなる、というだけ。特に初心者には意味が分かりづらくなるだろうな。
0790nobodyさん2009/08/08(土) 00:49:55ID:???
参照渡しじゃなくて値渡しだよの一言で済むような
0791nobodyさん2009/08/08(土) 00:53:57ID:???
>>786
"$in_key,$in_list" を
"$x,$y" として、実行してみたら、同じ結果が得られました。
構文の意味自体は、まだ飲み込めないのですが、こういうことなのですね。

>>788
まだ基礎の基礎の段階なので、応用はちょっと。。
8月から始めたので、まだチンプンカンプンです。
0792nobodyさん2009/08/08(土) 01:07:30ID:???
>>789
>>790
とてもわかり易い解説ありがとうございます。
ちゃんと意味まで理解できました。(多分ですが)

「ユーザー定義関数に戻り値を指定して、呼び出し元の変数の値を変更する」
とテキストに書いてあるのですが、>>789さんが言っていることですね。
つまり、$key と$in_key は、全く別で構わない。
だから、"$in_"を$x,$yに変更しても同じ結果を表示したのですね。
$key と$in_keyが似ていたので、かえって混乱してしまったようです。
ありがとうございました。
0793nobodyさん2009/08/08(土) 02:09:42ID:???
自分でよく分からないコード書く前にマニュアルを一読することをオススメするよ
0794nobodyさん2009/08/08(土) 14:47:01ID:???
スレタイが「超初心者」なんだからかまわんだろ。
0795nobodyさん2009/08/08(土) 14:55:27ID:???
超初心者だからマニュアルを読まなくていいという考えは良くないよ
0796nobodyさん2009/08/08(土) 15:14:43ID:???
読めには同意、しかし、読んでもなんのことだかじぇんじぇん解らないだろうな、とも思う。
0797nobodyさん2009/08/08(土) 15:21:38ID:???
じゃ解るようになるにはどうすればいいの?
0798nobodyさん2009/08/08(土) 16:52:03ID:???
関数や変数の概念や書式なんてそれこそ「猛禽類でも分かるPHP」みたいな本が
一番力入れて書いてるところだろ。
0799nobodyさん2009/08/08(土) 17:14:28ID:???
そういや、プログラム始めたての頃、
変数名は自分で決めるんだって気がつくのに、ちょっとかかったなぁ・・・
0800nobodyさん2009/08/08(土) 18:28:28ID:???
変数名決めるのに和英辞書はかかせませんね!
PHP7とかなったら変数名に2バイト文字が使えるようになったり・・・して・・・
0801nobodyさん2009/08/08(土) 18:39:36ID:???
相当前から使えるが
0802nobodyさん2009/08/08(土) 23:03:06ID:???
$名前 = '山田太郎';
0803nobodyさん2009/08/08(土) 23:10:03ID:???
$人物 = array( "名前" => "山田太郎", "趣味" => "女装" );
0804nobodyさん2009/08/08(土) 23:21:41ID:???
TBS

 春の番組改編以来

 最高視聴率!!!!

 やっぱり事件ほどおいしいものはない@TBS
0805nobodyさん2009/08/08(土) 23:51:30ID:???
連想配列って、

$pg = array(
 'This is a' => 'pen.',
 'I am a' => 'boy.',
 …

みたいに、スペース入ったらいかんの?
0806nobodyさん2009/08/09(日) 00:11:19ID:???
そのくらい自分で試せるだろ
0807nobodyさん2009/08/09(日) 00:51:53ID:???
>>805
こっちのパソコンで試してみたが、
特にエラーは出なかった。
0808php2009/08/09(日) 01:25:12ID:???
画像がアップロードされたら、その画像の保存とはまた別に
画像のファイルサイズを圧縮した画像も別ディレクトリに保存する
にはどうすれば良いでしょうか?

例えば、 test.jpg ファイルがアップロードされた場合

1) img/test.jpg
2) img2/test_assyuku.jpg

という風に自動で保存したいと思っています。

0809nobodyさん2009/08/09(日) 02:03:49ID:???
圧縮ってのがどういう事かわからないけど、画像の大きさを変更して保存なら
GD使うなりImagick使うなりすればOK
PHP4ならGD、PHP5ならImagickかな。どっちにしてもモジュールが入ってないとダメだから
レン鯖ならphpinfoで確かめてみるとよろし
08108082009/08/09(日) 02:11:10ID:???
>>809
ありがとうございます。
因みにサクラ鯖上に乗せたいと思っています。

PHP5を使用しておりますのでgoogleでImagickを調べて試してみようと思います。
0811nobodyさん2009/08/09(日) 10:56:44ID:???
>>810
古い記事だが、GD入ってるならアップロードと画像加工を一つにした「CLASS.UPLOAD.PHP」がおすすめ
http://www.moongift.jp/2007/05/class_upload_php/
0812nobodyさん2009/08/09(日) 14:18:33ID:???
PHPの閉じタグについての質問なんですが、

余計な空白や改行が出力されないように、ファイルの最後の ?> を書かないようにした方が良いのか、
return; で戻った方が良いのか、一番安全な方法はどちらかあるいは他の方法でありますでしょうか。

バージョンや環境によらず、両方ともいつでも使えるでしょうか?
0813nobodyさんNGNG
( ̄ー ̄)ニヤリッ(わっ)
0814nobodyさん2009/08/09(日) 14:30:51ID:???
>>812
つマニュアル
0815nobodyさん2009/08/10(月) 00:13:28ID:???
超初心者用スレなんだから、行き先ぐらい示してあげようよ

閉じタグについてはここ
http://www.php.net/manual/ja/language.basic-syntax.instruction-separation.php

returnについてはお好きにどうぞ
0816nobodyさんNGNG
phpで2証スクリプトは作れますか?
0817nobodyさん2009/08/10(月) 18:21:19ID:???
>>816
できると思うよ
0818nobodyさんNGNG
作ってください
0819nobodyさん2009/08/10(月) 19:16:57ID:???
いいよ
0820nobodyさんNGNG
どうやって作るの?
0821nobodyさん2009/08/10(月) 19:31:23ID:???
>>820
つかったことないんだけど、
どんな仕様のプログラムですか?
0822nobodyさんNGNG
全然わかんない。
0823nobodyさん2009/08/11(火) 01:16:38ID:???
>>811
ありがとうございます。

因みに自分でアップローダを作ってみたのですが、
どうもクラックされたっぽいです。
(クラックっていうか侵入されたかも)

現在、自分の運営しているサイトのアップローダは何かファイルがアップロードされた場合
ファイルの種類や投稿者の情報とか色々と記憶しているのですが、
昨夜(2:00過ぎ)にそのアップロードされたファイルの一覧ページを見てみたところ
確かに「Explorer.php」というファイルがアップロードされていました。

一番気がかりなのは、もう一度ページをリロードすると消えていました。
DBへのアクセス権ものっとられていたりするのでしょうか?
非常に心配です。



08248232009/08/11(火) 01:29:03ID:???
あと、現在サクラ鯖をレンタルしphpを動かしているのですが、
アップロードされた場合に弾くべきファイルとして、
*.php *.en *.ja

を禁止していたのですが perl(触った事が無いですが)とかも
アップロードされると外部から実行されてしまいますよね?

その場合にperlのアップロードを弾く場合にはどうすればよいでしょか?
perlの拡張子は *.pl なので

*.pl.ja 等を弾けば良いでしょうか?
0825nobodyさん2009/08/11(火) 01:33:15ID:???
>>824
「特定のファイル形式を弾く」よりも、「特定のファイル形式以外拒否」の方がよくねか?
0826nobodyさん2009/08/11(火) 01:35:28ID:???
>>825
おおぉー。。。。
そうですね。。。
ご名答です。

因みに一時的にphpスクリプトをアップロードされ、次の瞬間にそのファイルが無くなったということは
侵入された可能性はありますか?
0827nobodyさん2009/08/11(火) 01:51:51ID:???
不安ならホストアドレス、あるいはIPを制限すればいいと思います
0828nobodyさん2009/08/11(火) 01:53:18ID:???
>>827
串さしてホストを変えながら攻撃されてます。
0829nobodyさん2009/08/11(火) 02:13:40ID:???
プロクシー経由を弾けばいいんじゃね?
0830nobodyさん2009/08/11(火) 02:15:46ID:???
簡単に串経由かどうかを判定する方法はありますか?
あと、Torとか使ってくる奴もいてうざくてしょうがないです。
0831nobodyさん2009/08/11(火) 02:37:13ID:???
>>826
アップロードディレクトリでスクリプト実行できないようにしなよ
今のセキュリティホール全開な仕様が異常だと認識したほうがいい

>侵入された可能性はありますか?
スクリプト実行と侵入は違う気がするが
suexecが有効ならサーバ内のファイル構成を見られたりファイル消されたりする可能性はある

とにかくPHP周りを強化するよりサーバ周りの設定を強化したほうがいい
0832nobodyさん2009/08/11(火) 02:44:24ID:???
>>831
>アップロードディレクトリでスクリプト実行できないようにしなよ
ディレクトリに設定する権限は755に設定していますが、
これでは駄目なのでしょうか?

因みにファイル構成を見られる分には別にいいのですが
phpスクリプトのコードまで見られた可能性はありますか?

あと、ちょっと原始的かもしれませんが *.php *.PHP *.pl *.PL *.cgi *.CGI を
全てアップロード付加にしました。

取り合えずこれでアップローダからの侵入は防げるかなと思ってますが、
ベテランの方もし穴があるとすればご指摘願います。
0833nobodyさん2009/08/11(火) 02:46:09ID:???
> 簡単に串経由かどうかを判定する方法はありますか?

ちっとはてめえで調べろよ、横着野郎。
0834nobodyさん2009/08/11(火) 02:50:08ID:???
>>833
考えました。
0835nobodyさん2009/08/11(火) 02:56:58ID:???
>>832
755じゃ実行されるでしょ
ていうか権限の問題じゃない
一番簡単なのはAddTypeハンドラでtextとして実行するようにする
他にもルール作って特定拡張子へのアクセス防いだりなど
htaccessを用いていろいろ対策は可能
0836nobodyさん2009/08/11(火) 03:14:49ID:???
>>835
今日帰って来たら色々とapacheがらみを勉強してみようと思います。

※上でも書いた様に *.php *.pl 等の実行形式のファイル自体はアップロードさせない様に判定ロジックを
組み込みました。
取合えずこれで少しは穴は塞げた(???)と思いましたのでもう寝ます。
ご回答くださった方々ありがとうございました。
0837nobodyさん2009/08/11(火) 14:47:02ID:???
PHPのセキュリティの攻撃となんちゃらの実際

とかって本を読めば?
0838nobodyさん2009/08/12(水) 01:01:23ID:???
>>837
買ってきます。
0839nobodyさん2009/08/12(水) 18:14:55ID:XtZqM+tg
フォームで受け取った$pass(値はhoge)と
同じくフォームで受け取った$idをファイル名に含んだファイルの二行目をfile()で読み込んで
$data[1](値はhoge)に代入して
if($pass==$data[1]){
print"値は同じです".$pass"==".$data[1];
}
else{
print"値は違います".$pass"==".$data[1];
}
を実行すると
「値は違います hoge==hoge」
と表示されるのですが「値は同じです」と表示させるにはどうしたらいいですか?
0840nobodyさん2009/08/12(水) 18:24:11ID:???
var_dumpしてみそ
0841nobodyさん2009/08/12(水) 18:43:49ID:XtZqM+tg
Var_dumpしてみたら@dataの値全部の最後尾に半角スペースがあったんだけど
ファイルを見てみると
hoge
hoge
hoge
で半角スペースなんてないんだけどこれって別のところに原因がある?
代入は$data=file("$filepath");ってやってるんだけど。
0842nobodyさん2009/08/12(水) 18:59:57ID:???
> print"値は違います".$pass"==".$data[1];

print"値は違います" . $pass . "==" . $data[1];
ではないのか?
0843nobodyさん2009/08/12(水) 19:03:38ID:???
書き込みはドット抜けてたけどソースにはかいてある。
0844nobodyさん2009/08/12(水) 19:14:53ID:???
file()で読み込んだら行末に改行コードが入ると思うが。
0845nobodyさん2009/08/12(水) 22:39:56ID:???
>844
が正解。trim()かrtrim()する必要がある
0846nobodyさん2009/08/12(水) 23:23:53ID:???
PHPサイバーテロの技法 攻撃と防御の実際

、、、だった。
0847nobodyさん2009/08/12(水) 23:30:30ID:???
それかFILE_IGNORE_NEW_LINESフラグを付ける。

ttp://www.php.net/manual/ja/function.file.php
>改行記号はついたままとなります。 失敗すると file() は FALSE を返します。
0848nobodyさん2009/08/12(水) 23:38:47ID:???
>>847
何言ってんだよ、$passに改行コードをつけてからコンペアすりゃいいだろw
0849nobodyさん2009/08/13(木) 00:35:56ID:???
Debian lennyのPHP5でPDO+sqlite3を使いたいのですが
どうすればPDOドライバが使えるようになりますか?
0850nobodyさん2009/08/13(木) 00:44:24ID:???
compareをコンペアと発音する若い連中
0851nobodyさん2009/08/13(木) 00:45:29ID:???
>>849
php.iniのPDOの行がコメントアウトされてるから、
コメントアウト;をはずして、
上書き保存して、
アパッチ再起動かな?
0852nobodyさん2009/08/13(木) 01:14:32ID:???
>>851
vimでphp.ini開いて/pdoやってみたけどnot foundって出てきましたorz
0853nobodyさん2009/08/13(木) 01:18:14ID:???
じゃ書いとけばいいんじゃね
0854nobodyさん2009/08/13(木) 01:26:14ID:???
アパッチの設定ファイルのほうだったかな?
httpd.confとか。
0855nobodyさん2009/08/13(木) 03:23:23ID:???
コンボボックスより選択された値をhidden項目に設定し、
その状態で自画面(TestAction)のPHP部分に引き渡したす
為に、次のコードを書いたのですが、エラーが発生してしまいます。

いずれも、*.submit();の実行時にエラーが発生してしまうのですが
どうすればよいでしょか?

function TestSelect(iSelect)
{
  document.getElementById("id_value_set").value = iSelect;


  //■方法�@
  document.name_select_page.submit();

  //■方法�A
  obj = document.forms["name_select_page"];
  obj.action="TestAction.php"
  obj.submit();

}
<form name="name_select_page" action="TestAction.php" method="POST">
  <input id="id_value_set" type="hidden" value=""/>
  <select onchange="TestSelect(this.options[this.selectedIndex].value)">
    <option selected >1</option>
    <option>2</option>
    <option>3</option>
  </select>
</form>
■ このスレッドは過去ログ倉庫に格納されています