【PHP】下らねぇ質問はID出して書き込みやがれ 94
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/03/17(水) 23:17:41ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 93
http://pc11.2ch.net/test/read.cgi/php/1266229386/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0412nobodyさん
2010/03/28(日) 11:00:32ID:???そこまで気にするならnameとpasswordで取り扱うしかないかと。
0414nobodyさん
2010/03/28(日) 15:40:46ID:???IP→固定IPでない限り常に流動的、よって×
同一人物特定可能な機器の固有情報→ないわけではないが機器がない人もいるしセキュリティ的にもやってはいけない、よって×
IDとパスを登録してもらって鯖側で管理する→会員制サイト向け、もっとも現実・実用的
ログイン後にユーザ別に操作する情報があるなら話は別だが「こんにちは名前さん」のためだけにログインさせるのはアフォ
結論、動的ページに感動して初心者にはありがちな行為だがやめたほうがいい。
俺も最初はうれしくてついついサイトのトップにJavaScriptで時計表示したり、
むやみに訪問者のIP出してみたりしたっけなぁ。
今思えば痛々しい。
0415nobodyさん
2010/03/28(日) 15:54:28ID:???yahooとか
0416nobodyさん
2010/03/28(日) 16:24:20ID:???>>414のクッキーってのは初回訪問時(orクッキーが消えた次の訪問時)に
名前を入力させてそれをクッキーに入れるということでしょ。
でもまークッキーが見つからなかったら結局何かを入力するという点では一緒なわけだから、
普通にクッキーが見つからなかったら名前入力させて食わせるでいいと思うけどな。
ただそんなめんどくさいのをユーザーは望まないし、
作り手の自己満足だからやめたほうがいいとは思うが。
0417nobodyさん
2010/03/28(日) 17:16:58ID:I5spPOJrベリサインのグローバルIDは高すぎるので他の安いものを探しているのですが、
たとえば、ベリサインのセキュアIDにして、
対応している端末はSSL通信を行い、非対応の機種はなんらかの判別処理をして
非SSL通信にしてしまうなんて、都合の良い方法はあるでしょうか?
0418nobodyさん
2010/03/28(日) 17:18:04ID:LnmjTtuZ0419nobodyさん
2010/03/28(日) 18:32:25ID:???金払わずに取り繕うなんて馬鹿じゃないの
0420nobodyさん
2010/03/28(日) 19:00:28ID:I5spPOJrおっしゃることはごもっともです。
ただ、利用者がセキュリティを気にする層と気にしない層がいて、
古い機種を所有している人に特に気にしない層が当てはまるんです。
なので、古い機種を使用しているあまりセキュリティを気にしない人は非SSLで運用を考えているんです。
0421nobodyさん
2010/03/28(日) 19:03:21ID:???自分がケチなのを利用者のせいにするな
0422nobodyさん
2010/03/28(日) 19:09:19ID:???営利目的でない為、運用の都合上、コストがそのまま利用者にかかるんですよ・・・。
コストが上がっても、私の腹は痛みません・・・。
扱う情報がメールアドレスと氏名くらいなので、できればSSLを使わずにしたいのですが、
SSLじゃないと嫌だという利用者もいるので、上記のような方法を考えているんです。
0423nobodyさん
2010/03/28(日) 19:52:07ID:???SSL要らないからコスト上げるな、って顧客と
コストかかってもいいからSSLを入れろ、って顧客がいて
どっちにも対応できる道を探してるということ?
0424nobodyさん
2010/03/28(日) 19:55:32ID:???0425nobodyさん
2010/03/28(日) 20:17:00ID:???0426nobodyさん
2010/03/28(日) 20:40:56ID:???無料
0427nobodyさん
2010/03/28(日) 20:42:07ID:???0428nobodyさん
2010/03/28(日) 20:49:55ID:???SSL、非SSLのリンク並べた方が楽じゃね
使いたい奴は使えと、使いたいけど非対応の端末は買い換えろと
0429nobodyさん
2010/03/28(日) 21:04:02ID:???0430nobodyさん
2010/03/28(日) 21:04:33ID:???0431nobodyさん
2010/03/28(日) 22:54:42ID:rVlISy+X0432nobodyさん
2010/03/28(日) 22:56:57ID:I5spPOJrそういうことです。
>>428
やっぱり、それが賢明ですかね。
>>426
携帯サイトなので、たしかauは通信できなかったように思います。
実機がないのでわからないのですが、そういった記事を目にしたことがあるので。
0434nobodyさん
2010/03/28(日) 23:01:51ID:rVlISy+Xありがとうございます><
0435nobodyさん
2010/03/29(月) 09:47:34ID:4cY5kwZWcentOS環境にて、公開フォルダ下にphpMyAdminを入れました。
そしてhttp://localhost/phpMyAdminとブラウザで入れたのですが、
You don't have permission to access /phpMyAdmin on this server.
とエラーが出ました。
で、パーミッションを見てみた所、drwxr-xr-x となっておりました。
しかし、アクセスできるフォルダ(例えばhogeフォルダ)もdrwxr-xr-x とパーミッションはなっておりました。
同様に-rw-r--r--とパーミッションの与えられているphpMyAdmin内のindex.phpにも当たり前でしょうが、
http://localhost/phpMyAdmin/index.phpでアクセスしてもダメでした。
どのようにすればphpMyAdminを実行出来るのでしょうか?
0436nobodyさん
2010/03/29(月) 09:56:22ID:???0437nobodyさん
2010/03/29(月) 10:11:49ID:???ハイそうです
centOS、Apacheの初期設定のままです
特にphp.iniとかは何もいじっておりません
0438nobodyさん
2010/03/29(月) 11:37:55ID:FXTZBx7Yさくらのメールボックスなどのメールアカウントを持っていますが、
POP before SMTPなどややこしい機能があるみたいです。
この場合、ローカルにメールサーバを立てるのが一番手軽でしょうか?
0439nobodyさん
2010/03/29(月) 11:46:10ID:???0440nobodyさん
2010/03/29(月) 11:51:52ID:???「windows php メール」とかで検索あれ
0441nobodyさん
2010/03/29(月) 11:53:00ID:FXTZBx7Y0442nobodyさん
2010/03/29(月) 13:51:48ID:Th+hpH2Zこれからphpを学ぼうと、Amazonでphpの本を探してみたのですが、どれも高くて気軽に買えません。
phpというと、Wikiなどを見ながらApacheでrep2を一週間かけて動かしたぐらいしか経験無いのですが、
そんな初心者にオススメのphpの本を教えていただけませんでしょうか。
0443nobodyさん
2010/03/29(月) 13:55:43ID:???0444nobodyさん
2010/03/29(月) 14:09:14ID:???今までにCとかC++とかPerlとかJavaとか、まあそのあたりの言語でのプログラミングを
してたなら、「PHP 入門」とかでぐぐって出てくる適当なサイトで十分いけるよ。
それでどういうものなのか、とりあえずどう使うのかを掴んだら、後は>>443を随時参照でおk。
0445nobodyさん
2010/03/29(月) 15:10:31ID:???ttp://pc11.2ch.net/test/read.cgi/php/1269841264/
0446nobodyさん
2010/03/29(月) 15:12:34ID:???0447nobodyさん
2010/03/29(月) 17:20:21ID:1Ehd5H1b0448nobodyさん
2010/03/29(月) 17:27:58ID:???0449447
2010/03/29(月) 17:44:03ID:???0450nobodyさん
2010/03/29(月) 18:12:06ID:???return;
と書いてた俺に一言
0451nobodyさん
2010/03/29(月) 18:16:46ID:???0452nobodyさん
2010/03/29(月) 18:16:47ID:???0453nobodyさん
2010/03/29(月) 19:25:19ID:???こんとろーるふろーがそこまで行かないぞって警告くらい出してくれたろうけどなぁ。
0454nobodyさん
2010/03/29(月) 19:25:45ID:MUiCUZA9【PHPのバージョン】php5.26
【連携ソフトウェア】特になし
【質問内容】
ブログのコメント機能に似たものをPHPで実装しています。
これを自分のサイトの各ページに読み込ませることで擬似的にブログの様に閲覧者が各ページで
自分の意見を自由に投稿できるようになります。
そこで疑問なのですが、自動的に生成するログファイルの命名規則をどう扱うべきかで悩んでいます。
各ページ毎にログは独立させるつもりなので、ページが複数あれば必然的にログファイルも複数になります。
メンテナンスのことを考えるとログファイル一式は一カ所のフォルダに保存しておいた方がいいと思います。
たとえば次のようなページ構成の場合・・・
/public_html/FolderA/index_1.html
index_2.html
/FolderB/FolderC/index_1.html
3つのページにコメントスクリプトを埋め込むので合計3つのログファイルが生成されるわけですが
/public_html/log/
フォルダに3つのログファイルを保存するとき、ログファイルそれぞれのファイル名はどういう規則で
自動生成するべきでしょうか?ちなみにlogフォルダの下にはフォルダは一切作らないでおきたいと
思っています。またメンテナンス性を高めるためログファイルの名前はランダムな文字列ではなく
どのページに関するものか人目で判別できるようなものにしたいと思っています。
0455nobodyさん
2010/03/29(月) 19:29:39ID:???0456nobodyさん
2010/03/29(月) 22:39:29ID:???ランダム表示をしてさらに表示頻度を設定したいのですが、どのようにすればいいか教えてください。
<?php
$rndtxt[0] = 'テキスト1';
$rndtxt[1] = 'テキスト2';
$rndtxt[2] = 'テキスト3';
$length = count($rndtxt) - 1;
srand( (double)microtime()*1000000 );
$num=round( rand(0,$length) );
print("$rndtxt[$num]");
?>
現在は上のPHPで広告をランダム表示しています。
これのテキスト1を60%、テキスト2を20%、テキスト3を20%の割合で表示させたいです。
どのように書けばそのように設定できるのでしょうか?
0457nobodyさん
2010/03/29(月) 22:48:10ID:???$weight = array(0, 0, 0, 0, 0, 0, 1, 1, 2, 2);
$num = $weight[round(rand(0, count($weight) - 1))];
print("$rndtxt[$num]");
それか0から9のランダムな整数出して
if ($num < 6) {
$rndtxt[0];
}
else if ($num < 8) {
$rndtxt[1];
}
..
とか
広告をランダムに出したいっていう質問かなり多いなw
0460nobodyさん
2010/03/29(月) 23:03:19ID:???ありがとうございます。
完成型は下を単純に入れ換えてこうなるのですか?
<?php
$rndtxt[0] = 'テキスト1';
$rndtxt[1] = 'テキスト2';
$rndtxt[2] = 'テキスト3';
$weight = array(0, 0, 0, 0, 0, 0, 1, 1, 2, 2);
$num = $weight[round(rand(0, count($weight) - 1))];
print("$rndtxt[$num]");
?>
<?php
$rndtxt[0] = 'テキスト1';
$rndtxt[1] = 'テキスト2';
$rndtxt[2] = 'テキスト3';
if ($num < 6) {
$rndtxt[0];
}
else if ($num < 8) {
$rndtxt[1];
}
..
?>
0461nobodyさん
2010/03/29(月) 23:10:18ID:???上のほうはたぶんそんなんでいけると思うけど、
下の方は別のやり方で
$num = rand(1, 10);//分かりやすく1から10の整数
if ($num <= 6) {//1から6の6割の確立
print $rndtxt[0];
}
else if ($num <= 8) {//7から8の2割の確立
print $rndtxt[1];
}
else {//9から10の2割の確立
print $rndtxt[2];
}
0463nobodyさん
2010/03/30(火) 01:48:09ID:vJQ1xggIたとえば、MyClassというクラスを作製する際初期値numberが正の値のときは
if ( $obj = new MyClass(5) )
{
・・・
}
普通にオブジェクトを生成し、負の値の時は
if ( $obj = new MyClass(-3) )
{
・・・
}
オブジェクトを生成せずnullを返すようなプログラムを組みたいです。
そういうクラスを作製することは可能でしょうか?
もし可能だとしたら(おそらく__construct($number)に)どう記述すれば実現できますか?
0464nobodyさん
2010/03/30(火) 02:00:03ID:???0465nobodyさん
2010/03/30(火) 02:21:32ID:vJQ1xggI代わりに「条件を満たさないときはオブジェクトを生成しない(=newに失敗する)」ようにはできないでしょうか?
0466nobodyさん
2010/03/30(火) 02:26:05ID:wKtmg6ou0467nobodyさん
2010/03/30(火) 02:51:17ID:???正の値しか受け付けないコンストラクタに何かのミスで負の値を渡された時には
コンストラクタ内で例外を投げて止めるが、
正負どちらの値も有り得るのならstaticなメソッドを用意した方が行儀がいい
class Klass { public static function create($c) { return $c ? new self() : null; }}
0468nobodyさん
2010/03/30(火) 03:02:58ID:vJQ1xggIありがとうございました。
メソッドのほうでnullを返すようにさせますm(_ _)m
0469nobodyさん
2010/03/30(火) 05:50:51ID:g1YqBDS1$foo = 'Bob'; // 値'Bob'を$fooに代入する。
$bar = &$foo; // $fooを$barにより参照
$bar = "My name is $bar"; // $barを変更...
echo $bar;
echo $foo; // $fooも変更される。
?>
これで'My name is Bob'が2回出力されるのがわからない。
$fooが書き換えられたら、元の 'Bob' という文字列は "My name is $bar" に上書きされて消えちゃうんだよね?
そしたら$barと$fooをechoで出力するときに 'Bob' という文字列はどこから来てるの?
0470nobodyさん
2010/03/30(火) 07:22:34ID:???0471nobodyさん
2010/03/30(火) 07:28:31ID:???0472nobodyさん
2010/03/30(火) 10:36:09ID:???右から評価される
$bar = "My name is $bar"; // $barを変更...
ここは
$bar = "My name is Bob";
という動作になる。
0473nobodyさん
2010/03/30(火) 17:36:46ID:dG8PavZ2[0] => 1-text [1] => 2-text [2] => 21-text [3] => 27-text [4] => 3-text
rsortで配列を並べ変えてるんですが
[0] => 3-text [1] => 27-text [2] => 21-text [3] => 2-text [4] => 1-text
このようになります。
下記のように数が多い順に並べ替えたいのですがどの関数を使えばいいのでしょうか?
[0] => 27-text [1] => 21-text [2] => 3-text [3] => 2-text [4] => 1-text
0474nobodyさん
2010/03/30(火) 17:40:39ID:???http://jp.php.net/manual/ja/function.natsort.php
0475473
2010/03/30(火) 18:00:50ID:dG8PavZ2こんな関数あるの知りませんでした。
ありがとうございます。
0476nobodyさん
2010/03/30(火) 18:19:22ID:???0477nobodyさん
2010/03/30(火) 18:41:47ID:jgFCVhFfhttp://www.phpbook.jp/appli/accesscounter/index3.html
<?php
$counter_file = 'counter.txt';
$counter_lenght = 8;
$fp = fopen($counter_file, 'r+');
★if ($fp){
★if (flock($fp, LOCK_EX)){
$counter = fgets($fp, $counter_lenght);
$counter++;
rewind($fp);
if (fwrite($fp, $counter) === FALSE){
print('ファイル書き込みに失敗しました');
}
★flock($fp, LOCK_UN);
}
}
fclose($fp);
★のつけたところがよくわかりません・・・。if文の == TRUEが省略されてるんだと思うんですが、
全体の意味が理解できません・・。1つ目のifがtrueで処理がされて、その次のif (flock($fp, LOCK_EX))
ここはどういうことなのでしょうか?読み書き禁止 == TRUEの場合?
0478nobodyさん
2010/03/30(火) 18:47:09ID:???★1つ目:fopenに成功した時
★2つ目:flockでの書き込み禁止ロックが成功した時
★3つ目:flockでのロックを開放する
0479nobodyさん
2010/03/30(火) 18:50:45ID:???$fp = fopen();
でファイルを正常に開くと$fpはファイルへのポインタになって、失敗するとfalseになる
if ($fp) は if ($fp != false) と同じ
flock($fp, LOCK_EX)は戻り値で成功したらtrue、失敗したらfalseを返す
if (flock($fp, LOCK_EX)){
は
$succeed = flock($fp, LOCK_EX);
if ($succeed){
と同じ
0480nobodyさん
2010/03/30(火) 18:53:51ID:???そのほかの型については、
http://php.net/manual/ja/types.comparisons.php
例えば、$x = 0;のboolean項目はFALSEとなっているので、
if ($x)は通らないがif(!$x)は通る。
0481477
2010/03/30(火) 19:03:25ID:???ひとつづつ噛み砕いてみます!
0482477
2010/03/30(火) 19:14:26ID:???$fp = fopen($counter_file, 'r+');
★if ($fp){
ここでr+にして、まず読み書き許可しますよね?
★2つ目 flockでの書き込み禁止ロック
ここで、どうしてすぐに書き込み禁止にしてしまうのでしょうか・・?
イメージとして、読み込んだテキストから数字8を取り出して、1つ足して数字9にして
ファイルを閉じる、というのがあるのですが、書き込み可能にしてすぐ書き込み禁止にする
行為がイメージつきません・・・だもんで、★2つ目から下の文の内容もよくわからんのです・・・
0483477
2010/03/30(火) 19:16:55ID:???0486nobodyさん
2010/03/30(火) 19:43:54ID:???$counter_file = 'counter.txt';
//カウンターの最大桁数
$counter_lenght = 8;
//ファイルオープン成功時リソースを$fpにセット失敗時は$fp = false;
$fp = fopen($counter_file, 'r+');
//オープン成功してたら
if ($fp){
//他の訪問者と処理かぶった時にデータが狂わないようにロック
if (flock($fp, LOCK_EX)){
//カウンター数を桁数分読み込む
$counter = fgets($fp, $counter_lenght);
//読み込んだカウンター数に1足す
$counter++;
//ファイルを上書きするためにファイルポインタを先頭にもっていく
rewind($fp);
//新しい数値(足した数値)を上書きする
if (fwrite($fp, $counter) === FALSE){
//失敗時
print('ファイル書き込みに失敗しました');
}
//ロックを解放し他の人が処理できるようにする
flock($fp, LOCK_UN);
}
}
fclose($fp);
0487nobodyさん
2010/03/30(火) 19:47:02ID:???0488nobodyさん
2010/03/30(火) 21:24:19ID:???0490nobodyさん
2010/03/30(火) 23:11:49ID:PJO3T1x9wordpressテーマみたいに、PHPでソースを吐き出させるPHPと
アプリを作ったりするPHPは別物なんでしょうか?
まずはブログのテーマを作って、その後は検索システムとか掲示板とか作りたいなって
思ってるんですが、書籍を見てても、ブログ系はブログ。アプリはアプリみたいにわかれてるんで、
同じものなのか自信がなくなってしまいました。
0491nobodyさん
2010/03/30(火) 23:21:21ID:???Webアプリケーション
デスクトップアプリケーション(ただし向いてはいない)
コンソールアプリケーション(コマンドラインから使うやつ)
んでブログやらブラウザでサーバにアクセスして動かすものはみなWebアプリケーションだ
0492nobodyさん
2010/03/30(火) 23:43:46ID:PJO3T1x9ありがとうございます。
これですっきりしたんでwordpressのテーマ作成の本でも探してみます。
0493nobodyさん
2010/03/30(火) 23:53:27ID:???0494nobodyさん
2010/03/31(水) 00:09:51ID:???段階でそれより右側の判別式の判別は中止されるとおもってよろしいですか?
たとえば
if ( 5 < 0 && 2 < 5)
という判別式の場合、最初の 5 < 0 でfalseが返ってきた時点で残りの 2 < 5 の評価は放棄されると
思ってよろしいですか?
0495nobodyさん
2010/03/31(水) 02:01:29ID:???WEB上にあるPHPはダウンロードすることは可能ですか?
とあるスレで外人が親切にfixedしてくれて、ほれこれで動くぞ持ってけ
いわれてるけど名前をつけてリンク先を保存にしてもドキメントしか落とせなくて困ってます。
http://www.arrastheme.com/forums/post5050.html#p5050
wordpressのプラグインget-the-image.phpです
0496nobodyさん
2010/03/31(水) 02:16:32ID:???0497nobodyさん
2010/03/31(水) 05:34:24ID:1040mT1O本番サーバのCentOS5/64bitで、escapeshellcmdを通すと日本語(たとえば「てすと」)が
消失する現象が出ています
文字コードはUTF-8です
どうしたものでしょうか
0498nobodyさん
2010/03/31(水) 05:44:45ID:???0499nobodyさん
2010/03/31(水) 08:26:19ID:???cliだと問題ないなど謎ですが
strtrで自前エスケープするようにしました・・
ちなみに5.2.13です
64bitだからかなぁ・・
0500nobodyさん
2010/03/31(水) 09:09:20ID:???0501nobodyさん
2010/03/31(水) 09:19:16ID:???こんな関数はじめてみました
ありがとうございました
0502477
2010/03/31(水) 15:20:08ID:???みなさん遅れてすみませんありがとうございました!
テクニックがあるんですね知りませんでした。
理解できました!
0503nobodyさん
2010/03/31(水) 16:03:31ID:qgSssQGeerror_reporting(1)を最初に追記しました。
PHP Notice: Undefined offsetはでなくなりましたが、error_reporting(1)は
追記したファイルにのみ有効という解釈でいいんでしょうか?
test1.phpとtest2.phpでエラーで発生していて、test1.phpにだけerror_reporting(1)を追記した場合
test1.phpはエラーは出なくなりtest2.phpではエラーは出るという事で大丈夫でしょうか。
0504nobodyさん
2010/03/31(水) 16:20:45ID:???<?php
error_reporting(1);
include './test2.php';
0505nobodyさん
2010/03/31(水) 16:49:51ID:???そもそも、どうやって指示すれば良いのかもわかりません。
hoge.ttfと0×0050とかで指示できたりしますか?
0506nobodyさん
2010/03/31(水) 19:21:18ID:???記号のフォントってのがいまいちだけど、文字コードと出力される字形は別モンなので単純に
chr(0x50)
でいいんじゃ?
0507nobodyさん
2010/03/31(水) 22:34:38ID:5rD6sntL0508nobodyさん
2010/03/31(水) 22:42:26ID:F5ZddSdm一括して行う方法というのは無いでしょうか(オブジェクトの表記を省略したい)。
(VBScriptのWithステートメントのようなモノを考えています)
$object->method1();
$object->method2();
$object->method3();
これを
With($object){
->method1();
->method2();
->method3();
}
こういう風に省略できたら見た目にもすっきりしていいなーと思うのですが。
また、無いとしたら何か他に何か、良い短縮方法というのはありますか?
因みに間違えてプログラム板でこの質問をしてしまったんですが
「短縮は可読性を下げる」と言われてしまいました。
やはり短縮しないで書いた方がいいんでしょうか。
0509nobodyさん
2010/03/31(水) 22:49:36ID:???0511497
2010/04/01(木) 02:38:01ID:H0tjueQL動作は教えていただいた方法で解決できたのですが、
「PHPで使われるロケール設定」はどこで設定したものが使われているのでしょうか?
テスト・本番の両環境で、
/etc/sysconfig/i18n
にてja_JP.UTF-8をロケールに設定しており、
シェル上のlocaleコマンドでも確認できますが、
それはPHP内では使われていないようです。
まともに動いていたテスト環境でも、
LC_CTYPE=en_US.UTF-8;等と設定されており、
これもどこに由来するのか分かりません。
「偶然うまく動いていた」に過ぎないようです・・
■ このスレッドは過去ログ倉庫に格納されています