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

△▲ WebProg 初心者の質問 Part9 ▼▽

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん04/06/09 02:27ID:eYHXd/1E
2ちゃんねるは初めて。 WebProg 板は初めて。
質問したいけど、どうしたら良いか分からない。

そんなときは、ここに書き込んでください。
板の住人や、その他が、けなしながら、厳しく教えてくれるかも。

質問する前に、まずはここを読んでね。
【注意事項】
・質問する前にGoogleで検索してみましょう
http://www.google.co.jp/
・環境(ソフトウェアのバージョンなど)は、必ず書いてください。できるだけ詳しく。
 後から情報を書き足す、いわゆる情報の小出しは極力避けてください。
・何がしたくて、何ができて何ができないのかを書きましょう
・マルチポスト(複数のスレッドで質問する行為)は絶対に禁止です。
・過去ログは必ず読みましょう。あなたと同じ質問をしてる人がいるかも知れません。

2ch 総合ガイド
http://www.2ch.net/guide/

お願い。
適切な、板、スレ、を発見した場合、誘導してあげましょう。
スレの性質上 age 進行でお願いします。

関連情報は
>>2-10
前スレ
△▲ WebProg 初心者の質問 Part8 ▼▽
http://pc5.2ch.net/test/read.cgi/php/1078568723/
0313nobodyさん04/07/12 17:40ID:???
>>312
まだ個人向けISPというものが存在せず
SPAMもfishingも無く
誰もパスワードを盗聴される心配なんてしなかった時代の話だな
0314nobodyさん04/07/12 18:02ID:???
>>310
解決しますた。
CGIの他ディレクトリの参照方法と、ブラウザのディレクトリ参照方法の問題でした。
ってか、niftyがCGI動作ディレクトリの中に画像ファイルなどを置けない仕様がアレですね。
0315nobodyさん04/07/12 18:45ID:???
>>309
まず。この板の住人でRFCを作ったわけじゃない。突っかかるのはよせ。

認証の種類・特徴を知って「じゃあBasic認証要らねぇよな」と思ったんだね。
歴史もついでに調べてごらん。RFCがいつ公開されたか、Web鯖やUAが対応したのはどの辺からか。
検索すればすぐに見つかるよ。

# オッサンの感覚としては、つい最近だ。

認証がまず必要だったんですよ。ややこしい方式でなくてもよかったわけ。
で、鍵がかけられるようになった。時代が進んでもっと丈夫な鍵も使えるようになった。ということ。
将来、もっといい鍵ができたら、Digest認証も過去の遺物になるのかもしれない。

Basic認証もムダな存在じゃないんだよ。それはわかっておくれ。
0316nobodyさん04/07/12 18:54ID:???
いろいろ言いたかったんだろうけど>311の方が簡潔にまとまってるとおもいまちた。
0317nobodyさん04/07/12 20:34ID:???
もっと簡潔にすると「温故知新」かな。
0318nobodyさん04/07/12 22:35ID:???
ダイジェスト認証って、未だにブラウザによって挙動が違うんだよな。
HTTPSを使えということか。
031930904/07/13 11:14ID:0K4byXIz
よくわかりました。
つまり今の小学生が
「なんでポケベルなんかあるの? はじめから携帯電話作れば良かったじゃん」
って言ってるのと同じことですか?
0320nobodyさん04/07/13 13:59ID:???
>319
それでいい。ひとつ大人になりましたね。ごきげんよう。
0321nobodyさん04/07/13 14:12ID:???
よくわかりました。
つまりよく中村君が
「なんで替え玉注文すんの?はじめから大盛り頼めば安かったじゃん」
って言ってるのと同じ事ですか?
0322nobodyさん04/07/13 14:27ID:???
わからなくなりました。
つまりタルコフスキーが
「はじめから大盛りを注文すると、麺がのびちまうで、猫舌は辛い」
って言ってるのと、もういい。

認証だけの為に HTTPS はちょっとなぁ。
ちょっとしたサイトだとサーバー証明書が高いのなぁ。
0323nobodyさん04/07/13 15:59ID:???
>>322
ちょっとしたサイトに、より強度を求める認証なんかいるのか?
0324nobodyさん04/07/13 19:56ID:WQHE537W
PHPで、ファイルの先頭行にデータを追加書き込みする場合は、
ファイルデータを配列に入れて、新規データを配列の先頭に加えてから
書き込みするしかないですか?
末尾に追加する場合は、aオプションで出来るのだけれども。

かきくけこ
さしすせそ
↓
あいうえお
かきくけこ
さしすせそ

なるべく"スマート"にやりたいです。
032532404/07/13 20:52ID:WQHE537W
>>324
$fp = fopne("log.txt","r+");
fputs($fp,"あいうえお\n");
fclose($fp);

とかやると log.txt の先頭行の「かきくけこ」のうち何文字か削られて

あいうえお
けこ
さしすせそ

みたいになってしまいます。どうすれば良いでしょう?
0326nobodyさん04/07/13 21:43ID:???
>>324
別ファイルに先頭部分を書き込み、末尾に元ファイルの内容を追加。
その後リネーム。
配列に取り出す=改行を識別して云々、つーのはかなりの無駄じゃないかねぇ
その部分を変えるだけでも効率よくなると思われ
0327nobodyさん04/07/14 00:32ID:???
もわおれ?
0328nobodyさん04/07/14 08:02ID:???
下のふたつが何を意味しているのかさっぱりわかりません。
書き換えるとどのようになるのでしょうか?どなたかお教えください。

$_ = " " if(!$_);

と

$count = $#column+1; #$の後ろの「#」

よろしくお願いいたします。
0329nobodyさん04/07/14 08:56ID:???
>>328
if 文の倒置

と

@column の添え字の最大値
0330nobodyさん04/07/14 09:35ID:nr5LPdvq
http://longinus.dyndns.org/mittan/Top.do

これ教えて下さい。
ほしいなこのぷろぐらむ
033132804/07/14 13:58ID:???
>>329さま

ご回答ありがとうございました。

添字の最大値についてはわかりました。
ただ、いまだに倒置文がよくわかりません、
$_ = " " if(!$_); を
if〜に直すとどうなるのでしょうか?
おわかりになられる方、ぜひお教えください。
よろしくお願いいたします。
0332nobodyさん04/07/14 14:12ID:???
if(!$_){$_ = " "};
0333nobodyさん04/07/14 14:28ID:???
$_ or $_ = " ";
0334nobodyさん04/07/14 14:47ID:???
$_ ||= ' ';
0335nobodyさん04/07/14 14:54ID:???
$_ ||=(^^);
0336nobodyさん04/07/14 14:58ID:???
unless($_){$_ = " "};
0337nobodyさん04/07/14 14:59ID:???
$_ = $_ ? $_ : ' ';
0338nobodyさん04/07/14 15:17ID:???
$_ = ' ' unless $_;
0339nobodyさん04/07/14 15:22ID:???
粘着バカはまだやってるのか
0340nobodyさん04/07/14 15:46ID:???
>335
夢に出てきそう。
0341nobodyさん04/07/14 18:41ID:Rx26NDQN
そんなことより俺のIDを見てくれないか
0342nobodyさん04/07/14 22:03ID:???
ウホッ!いいID
0343nobodyさん04/07/15 11:22ID:fjWsfkKi
ある特定のアドレスへのリクエストをはじく方法教えてほしいのですが・・・
ドメインで転送してるんですが、ドメインのアドレスではページを表示できても
元のレンタルサーバーのアドレスでは表示できないようにしたいんです。
できるでしょうか?
0344nobodyさん04/07/15 13:37ID:???
できるよ
034532804/07/15 14:42ID:???
>>332-338
ありがとうございます。助かりました。

0346nobodyさん04/07/15 16:41ID:???
>>343
板違い
0347nobodyさん04/07/15 16:52ID:ltgYIyRD
PHPで
$fp = fopen("./file.dat","r") or die();
print fgets($fp);
fclose($fp);

でWrong parameter count for fgets() とエラーがでます。
サーバはUNIXでPHP4.0.6

windowsのローカルテスト環境だと問題ないです。
0348nobodyさん04/07/15 17:04ID:???
>347
PHP 4.2.0 以前のバージョンの fgets はふたつ目の引数が必須。
とりあえず、

print fgets($fp, 4096);

とでもしておきなはれ。
0349nobodyさん04/07/15 17:34ID:???
>348
ありがとうございます。ありがとうございます。
035034304/07/15 18:06ID:fjWsfkKi
>>344
どうやってできますか?
検索キーワードでもいいのでヒントほしいです
>>346
JSか何かでやると思ってたのでここに質問しました
よろしければ誘導たのんます
0351nobodyさん04/07/15 18:29ID:???
>>350
借りてるレン鯖のサポートへどうぞ
0352nobodyさん04/07/15 18:47ID:???
こういう質問がまるでいた違いとは思わないな。
例えば、tomcatの設定とか、php.iniの設定なんかもこの板の守備範囲に含まれると思うし。
やり方はいろいろあると思うけど、まずホスティング業者に聞いてみるのがいいだろうな。
0353nobodyさん04/07/15 18:49ID:???
>>350
全ページをスクリプトで出力するつもりならこの板でいいだろうけど、そんなのイヤでしょ?
>>351が言うようにレン鯖サポートに聞くのが一番だよ。
0354nobodyさん04/07/15 18:52ID:???
俺が使ってる無料鯖はドメイン取ると元々のURLは勝手に無効になる
0355nobodyさん04/07/15 21:51ID:???
>>354
勝手に無効になっては困ると思う。httpd.conf を鯖自身が自己再構築するのか?
0356nobodyさん04/07/16 02:28ID:q5UK2fe7
Perlで
$HOGE{'bar'}='foo';
こうなっていたのですがこれはどういう意味なのでしょうか?
$HOGEbar='foo';
という事ですかね?
0357nobodyさん04/07/16 02:33ID:???
>>356
> $HOGE{'bar'}='foo';
%HOGEというハッシュの、キー 'bar' に対応する値として 'foo' を代入。

> $HOGEbar='foo';
$HOGEbar という名前のスカラー変数に 'foo' を代入。

全く別、ですよ。
035835604/07/16 04:35ID:q5UK2fe7
>>357
そうなんですか。ハッシュとは思いませんでした。ありがとうございました
0359nobodyさん04/07/16 09:26ID:???
HASH BAR HIDE YOSHI
0360nobodyさん04/07/16 12:56ID:???
質問でござんす。

動的ページ作成の方法にはPerlとPHPとまだほかにもありますが
Perlは変態プログラムでPHPは初心者でもわかりやすいようですが、
だったらなんでPerlなんかが存在するんですか?
はじめからPHP作ればよかったじゃないですか。
0361nobodyさん04/07/16 13:07ID:???
PerlはCGIのためだけに存在してると思ってるんですか?
0362nobodyさん04/07/16 13:25ID:???
>>360
> Perlは変態プログラムでPHPは初心者でもわかりやすい
?
君にはどっちも無理、
なのでどっちでも君には関係ない
君は君にわかる事でがんばって下さい。
0363nobodyさん04/07/16 13:29ID:???
>360
>311

ごめん。つかれてるから。いま。明日にして。
0364nobodyさん04/07/16 13:33ID:???
>>360
>>309と違って、あざとさ漂いすぎでうっとうしい。
君としては、面白いことを思いついたつもりなんだろうけどね。
0365nobodyさん04/07/16 16:09ID:MvYwqmTq
argsってなんて発音するのですか?
アーグス? オルグス?
0366nobodyさん04/07/16 17:13ID:???
>>365
あrgs
0367nobodyさん04/07/16 17:14ID:???
>365
「アルゴスの戦士」と読んでおけばおけ。

arguments -> あーぎゅめんつ
あちきは、args と略してあっても「あーぎゅめんつ」とか「引数」とか読んでまつ。

0368nobodyさん04/07/16 17:17ID:???
argc は「あーぎゅしー」
argv は「あーぎゅヴい」
0369nobodyさん04/07/16 17:30ID:???
相手によって変えてます。

染まってない人(謎)=あーぐ・えす
少し染まってる人(謎)=あーぐす
オープン系デジドカ=あーぎゅめんっ
変数の話で 9 とか X とか言う人=ひきすう
037036504/07/16 18:01ID:MvYwqmTq
・アルゴスの戦士
・あーぎゅめんつ
・引数
・あーぎゅしー
・あーぎゅヴい
・あーぐ・えす
・あーぐす
・あーぎゅめんっ

一体どれを使えばいいんでしょうか。
0371nobodyさん04/07/16 19:37ID:???
>>370
自分好みでいいよ。すれ違いなので終了な

そろそろ夏休みスレが必要じゃないのか?
0372nobodyさん04/07/18 05:19ID:???
OS Fedora Core1
自作cgiを動かそうとしているのですが、コンソールから
./xxx.cgiと実行すると
: bad interpreter: そのようなファイルやディレクトリはありません
と出力されます。
perl xxx.cgi
の場合は正常にチェックモードで実行されます。
「which perl」の実行結果は「/usr/bin/perl」であり
cgiの頭には「#!/usr/bin/perl」と記述してあります。
エラー原因がわからず困っています。
どなたかお分かりになる方はいらっしゃいませんでしょうか?
0373nobodyさん04/07/18 06:24ID:???
>>372
× ./xxx.cgi
○ xxx.cgi
0374nobodyさん04/07/18 07:38ID:???
>373
./を取ると-bash: dayx.cgi: command not found
と言われてしまいます。
そもそもpathが通ってないことがまずいのでしょうか?
0375nobodyさん04/07/18 10:06ID:???
#!/usr/bin/perl --
0376nobodyさん04/07/18 10:12ID:???
>>372
改行コードがおかしいんじゃないかな。 #!/usr/bin/perl -- で治んない?
xxx.cgi でエラーがでるのはpathが通ってないせいだけど、それは通さない方がよいと思われ。
0377nobodyさん04/07/18 16:57ID:???
>375 >376
#!/usr/bin/perl --
でperl xxx.cgiと同じ動きになりました。ありがとうございました。

追加で質問です。
--はオプションリストの終わりとありましたが、スクリプトとするときは
必ずつける必要があるのでしょうか?
0378nobodyさん04/07/18 22:52ID:???
改行コードがちゃんとなってれば必要無い

動かなかったのが -- 付つけて直ったということは、改行コードがおかしいということ
0379nobodyさん04/07/18 23:44ID:???
>378
なるほど。ftp転送時にどこかで崩れたんでしょうか...
とりあえず改行コードを直す方向で検討してみます。
ありがとうございました。
0380nobodyさん04/07/19 14:38ID:???
Perl始めて1週間ちょいの初心者です

CGI5個その他で構成したWebプログラム作ってみたんですが、
今日の昼あたりから、些細な修正で500エラーが起きるようになりました。

修正前のCGIは普通に動くんです。それを移動しても動くんです。
でも、例えば出力する文字を1字増やすだけでエラー。
それを元に戻す(修正したスクリプトをUndoで戻して上書き)場合もエラー。
キャッシュ回避スクリプトを加えてもエラー。修正できないっす・・・

サーバ側に問題があるんでしょうか?
何かご存じの方、ご教授お願いいたしますm(_ _)m
0381nobodyさん04/07/19 14:52ID:???
>>380
文字エンコードや改行コードが修正前後で違うんでないの?
0382nobodyさん04/07/19 16:20ID:???
>>380
ログみた?
038338004/07/19 17:12ID:???
>>381
お見事、解決しました。
XMLを生成するスクリプトがうまく動いてくれなくて、
苦し紛れにエディタの設定を変えてました・・・
ありがとうございます。

>>380
あ゛ 全然見てませんでした・・・
2ch初心者でもないのに厨なマネを_| ̄|○
以後気をつけますm(_ _)m
0384nobodyさん04/07/19 17:34ID:???
500エラーに頼ったデバッグ作業そのものを見直したほうがいいと思うけど。
そのうち泥沼にはまるよ。
038538004/07/19 18:12ID:???
>>384
500エラーに頼ってるわけではないですが(^^;
すでに泥沼には何度かハマッてると思います。
最終的には他人に譲渡する予定のプログラムのため、
フローチャートをいくつか書いているのが幸いしています。
(今回の泥沼には無力でしたが)

文法はチェッカがありますけど、他はどうやってデバッグ
すればいいんでしょうか・・・
0386nobodyさん04/07/19 19:11ID:???
>>385
>>382
0387nobodyさん04/07/19 19:22ID:???
テスト/デバッグのスレって全然賑わわないんだよな。
初心者に一番必要なのに、彼らはその必要性に気づかないので、読もうともしない。

テストの順序としては

1. 関数/クラス毎のユニットテスト
2. CGIをエミュレートしたコマンドラインないしIDE環境からの実行
3. WWWサーバ上で動かしてエラーログをチェック

かな。テストしやすいように関数を設計すると後々デバッグが楽だよね。
0388nobodyさん04/07/19 20:02ID:???
>>385
use CGI::Carp qw(fatalsToBrowser);
0389nobodyさん04/07/20 01:37ID:???
perlならuse strictして、あとはData::Dumperで変数の値を確認しながら、くらいかなあ。
039038004/07/20 06:57ID:aF2PBDA2
>>386
ざっと見ましたが、方法論にはたどり着けませんでした。
探し方が悪いんでしょうか・・・

>>387
ご丁寧にありがとうございます。
クラス・ユニットテストの意味が解らない私は
里に帰ったほうがいいですか_| ̄|○

>>388-389
ありがとうございます・・・
039138004/07/20 10:12ID:???
ageちった・・・スミマセン
0392nobodyさん04/07/20 10:58ID:???
>>390
見ろと言われているログとはスレの話じゃなく鯖のエラーログのことだと思われ
0393nobodyさん04/07/20 14:01ID:???
>>390
387が言いたいのは、
作る時は大きいものから順に小さいものを作っていくが、
テスト・デバッグは逆に小さいもの(サブルーチン)からやれってこと。
039438004/07/21 02:08ID:???
みなさんホントいろいろありがとうございますm(_ _)m
みなさんからのアドバイスを受けていて、自分には根本的なものが
抜け落ちているように感じられたので、↓の入門書を読むことにしました。

初めてのPerl (Randal L. Schwartz, Tom Phoenix, 近藤 嘉雪 (翻訳))

無難ですよね?(^^; 図書館から借りてきました。
一応作ってあるCGIですが、正式に依頼主に譲渡するのは
夏が終わってからになりそうなので、制作は一旦休止します。

お世話になりました。またご厄介になる日が来るかも知れませんが。
それでは・・・
0395nobodyさん04/07/21 13:26ID:???
Movable Typeスレから誘導されてきました。
すみません。超初心者な質問をさせてください。
MT3.01をインストールして四苦八苦している最中です。
基本のページデザインがセンター合わせになっていますが
左寄せに変えたい場合は、どうすればよいのでしょう?
Main Indexで設定するのか、スタイルシートで設定するのかさえも分かりません。orz
0396nobodyさん04/07/21 13:28ID:???
>>395
なんでここに誘導するんだろ〜と思って、誘導元を見て来ますた。
行くべき場所は「Web制作板」の初心者スレではなかろーかと。
039738504/07/21 13:33ID:???
>396 あら???またまたスマソ。あちらにも逝ってきます。
アチコチに恥ずかしい足跡を残してしまった。orz
0398bu04/07/22 12:37ID:BFgmmGe7
<input type="file">のときに、その他のhiddenパラメータなども一緒に
受け取ることはできますか?

<FORM ACTION="upload.cgi" ENCTYPE="multipart/form-data" METHOD="POST">
<INPUT TYPE="file" NAME="File" SIZE="50"><BR>
<input type="hidden" name="testkey" value="これを取得できたらいいな">
<input type="submit" name="btnSend" value="送信">
</FORM>

STDINからCONTENT_LENGTH分読み込むと、添付ファイルだけなんすよー。
なお、毛ジュールは使ってません。できれば、使わないで取得する方法希望。
0399nobodyさん04/07/22 13:04ID:???
>>398
できないわけないじゃん。 オマエ程度だったらおとなしくCGI.pmでも使っとけ
0400nobodyさん04/07/22 18:38ID:sAydrIZ8
友達がサイトをやってるんですがアクセス解析をしています。
それでいつ訪問したかばれないようにしたいんですが痕跡を残さずに見るというのは無理でしょうか?
一日に数人しか訪れないため串を使用しても逆に目立ってばれてしまいます。
0401nobodyさん04/07/22 18:39ID:???
>>400
>>1
0402剛毛04/07/23 00:11ID:???
質問です。
よく雑誌や公告とかで使われる手法で
「このメアドにカラメールを送ってください」
と書いてあって

携帯からカラメール送る→サーバが自動的にサイトURLが書かれた内容のメールをその送信元に返信する

というシステムの仕組みを知りたいのですが
どうやって調べたらいいでしょうか。
こういう仕組みのことをなんというのか、なにかgoogleで調べるための
キーワードとかありますでしょうか
0403nobodyさん04/07/23 00:18ID:93HCg+gw
自動返信メール
0404nobodyさん04/07/23 00:22ID:???
「メール 自動応答 MTA 設定 板違い」
0405nobodyさん04/07/23 01:16ID:???
下のコードが実行するとページが表示されませんと出るのですが、
何処を直せば良いでしょうか。
ちなみにupfileからimgfaileに画像を上書きしたいのですが。
 my$upfile = "c:/homepage/img/2.jpg";
 my$imgfile = "http://localhost/img/0.jpg";
 open(OUT,"> $imgfile");
 binmode(OUT);
 binmode(STDOUT);
 print OUT $upfile;
 close(OUT);
0406nobodyさん04/07/23 01:56ID:???
>>405
Good Job!
0407nobodyさん04/07/23 02:02ID:???
>>405
まずはエラーログを見なさい
0408nobodyさん04/07/23 02:22ID:???
>>405
テストしてるブラウザはIEかな?
・DNSが引けないとき=「ページを表示できません」
・404 Not Found =「ページが見つかりません」
どっちだろ。上かな。

>>407さんが言ってるエラーログは、Web鯖のエラーログなんだけど、
127.0.0.1 ⇔ localhost で、ちゃんとWeb鯖は動いているの?
0409nobodyさん04/07/23 02:38ID:???
どっちにしてもopenの引数のファイル名にURLは使えない
0410nobodyさん04/07/23 11:48ID:???
php かとおもたけどよく見たら perl なのか。
0411クローラーつくりたいな04/07/23 12:43ID:GHhe5n7A
これからPCのショッピングサイトを作りたいと考えています。内容はいくつかの
PCのショップをクローラーを回らせて最低価格を引っ張ってこさせて、価格別に
表示させるような内容を考えています。どちからにこのようなプログラムがあれば
お教え願えればと思います。あと情報もあれば教えていただければと思います。
大変お手数をおかけしますがよろしくお願いします。
0412nobodyさん04/07/23 12:46ID:???
またお前か
死ね
■ このスレッドは過去ログ倉庫に格納されています