△▲ WebProg 初心者の質問 Part13 ▼▽
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/02/09(木) 16:05:29ID:???質問したいけど、どうしたら良いか分からない。
そんなときは、ここに書き込んでください。
板の住人や、その他が、けなしながら、厳しく教えてくれるかも。
質問する前に、まずはここを読んでね。
【注意事項】
・質問する前にGoogleで検索してみましょう
http://www.google.co.jp/
・環境(ソフトウェアのバージョンなど)は、必ず書いてください。できるだけ詳しく。
後から情報を書き足す、いわゆる情報の小出しは極力避けてください。
・何がしたくて、何ができて何ができないのかを書きましょう
・マルチポスト(複数のスレッドで質問する行為)は絶対に禁止です。
・過去ログは必ず読みましょう。あなたと同じ質問をしてる人がいるかも知れません。
2ch 総合ガイド
http://www.2ch.net/guide/
お願い。
適切な、板、スレ、を発見した場合、誘導してあげましょう。
スレの性質上 age 進行でお願いします。
関連情報は
>>2-3
0083nobodyさん
2006/02/17(金) 17:52:59ID:???に ち ゃ ん ね る っ て す ご い ね
0084nobodyさん
2006/02/17(金) 22:54:10ID:CB9LbJEFのように"<>"で区切られたdatファイルをよく見るのですが、
<>ごとに読み取って変数に格納するにはどのような操作をすればよいのでしょうか?
0086nobodyさん
2006/02/18(土) 05:19:30ID:???0087nobodyさん
2006/02/19(日) 13:02:33ID:qZLcstMn1. test.cgiにアクセス
2. test.cgi内で、あるURLにアクセスしてローカルに保存
例: www.yahoo.co.jp/index.html → yahoo.txt
3. test.cgiでyahoo.txtを読み込み、必要な情報をhtmlでprint
perlは多少分かるのでローカルにさえ持ってこれればと思ってます
保存する箇所の簡単な仕組みをお願いします
0090nobodyさん
2006/02/19(日) 19:47:24ID:6/Fk1U6bコントロールパネル -> 管理ツール -> サービス
「ローカルコンピュータのMySQLサービスを開始できません。エラー1058:指定されたサービスは無効であるか、または有効なデバイスが関連付けられていないため、開始できません。」
0091nobodyさん
2006/02/19(日) 19:52:22ID:???それだけだとスレ違い。
データベース板へどうぞ
0092nobodyさん
2006/02/19(日) 20:01:07ID:6/Fk1U6b0093nobodyさん
2006/02/19(日) 22:58:35ID:???0094nobodyさん
2006/02/20(月) 05:54:21ID:???兎に角人に聞く性分であったりするならPerl
ってところか
0095nobodyさん
2006/02/20(月) 07:31:46ID:???チョット作って使い捨てならPHP。とにかく手っ取り早く作りたい人向け。
規模が大きめなものを作るのならJavaか.NET(C#)。個人や趣味プログラマには不要かも。
0096nobodyさん
2006/02/20(月) 09:19:24ID:QuT/2iwf情報ありがとうございます。調べてみます。
0097nobodyさん
2006/02/20(月) 09:27:09ID:???Flashが一番敷居が低いと思う
金銭的敷居ならVBでActiveXってとこだと思う
0098nobodyさん
2006/02/20(月) 12:54:29ID:???0099nobodyさん
2006/02/20(月) 16:55:02ID:???0100nobodyさん
2006/02/21(火) 12:39:55ID:???&A(x,y,z);
&B(x,y,z);
とやって、サブルーチンAには値が渡せるんですが、
サブルーチンBにはわたりません。
いろいろ調べましたが(本とかネットとか)、ちょっと分かりません。
理由として何が考えられるでしょうか?
あとサブルーチンに
sub A{
・・・
exit;
}
とか書くと、なんかまずいんでしょうか?
0101nobodyさん
2006/02/21(火) 13:33:58ID:???0102nobodyさん
2006/02/21(火) 13:49:07ID:???レス有難うございます
subAとsubBにそれぞれ下記のようなことを書いて表示しました
同時には出せないようなので、1度にどちらかだけですが
print <<EOM;
Content-type: text/html
<html><head><title>kakunin</title></head><body>
<form action=http://www.***.cgi method=POST>
<center><b>ありがとうございました。</b><br>
<table width=80% border=1>
<tr><td width=12%>住所</td><td width=68%> 〒$post $jusyo</td></tr>
<tr><td width=12%>電話番号</td><td width=68%> $tel</td></tr>
<tr><td width=12%>FAX番号</td><td width=68%> $fax</td></tr>
<tr><td width=12%>メールアドレス</td><td width=68%> $mad</td></tr>
<tr><td width=12%>備考(通信欄)</td><td width=68%> $bikou</td></tr>
</table>
<br>
<input type=HIDDEN name="conf" value="1">
<center><input type="submit" value="-送信する-"></center>
<center><input type="button" value="<< -前画面に戻って編集-" onClick="history.back()"></center>
</form>
</body>
</html>
EOM
0103nobodyさん
2006/02/21(火) 13:55:33ID:???sub B{
my($x, $y, $z)= @_; # こうやって、渡された値を受け取るんだよ
}
0104nobodyさん
2006/02/21(火) 14:14:54ID:???0105100=102
2006/02/21(火) 14:58:53ID:???それは書いてあります
>>104
sub A{
・・・
exit;
}
を
sub A{
・・・
return;
}
ということでしょうか?パクリ元のcgiにexitとあったのでそのままにしてたんですが?
0106nobodyさん
2006/02/21(火) 15:15:32ID:???0107nobodyさん
2006/02/21(火) 16:23:52ID:???つーかexitの意味ぐらい推測できないのか?
まだえいごをべんきょうしたことのない消防なのかな?
0108nobodyさん
2006/02/21(火) 17:01:53ID:???0113nobodyさん
2006/02/21(火) 21:06:56ID:???0114nobodyさん
2006/02/21(火) 22:17:13ID:???というスクリプトを作っているのですが
以下のスクリプトではなぜだか元の行も新しいファイルに書き込まれ、
しかもsplitしてるのに書き込み時、$a1a等にデータが入りません。
下記スクリプトで不具合箇所があれば是非教えてください。お願いいたします。
ロック処理、エラー表示サブルーチンなどは省いてあります。
log.cgi
-----------
1,test,0
2,test,0
3,test,0
-----------
$logfile_all = "./log.cgi";
@new=();
open(IN,"$logfile_all") || &error("error");
while (<IN>) {
($a1a,$a2a,$a3a) = split(/,/);
if ($in{'no'} == $a1a) {
$_="$a1a,$a2a,1,\n";
}
push(@new,$_);
}
close(IN);
open(OUT,">$logfile_all") || &error("error");
print OUT @new;
close(OUT);
0115nobodyさん
2006/02/21(火) 23:39:16ID:???0116nobodyさん
2006/02/22(水) 00:13:18ID:???レス有難う御座います。
仰るとおり偽の場合の処理、今後加えたいと思います。
現状ではあくまで動作確認の段階なので偽になるはずがないのです。。
どうしてもわからないです。。ううむ。。
0117nobodyさん
2006/02/22(水) 02:36:47ID:???できれば $_ 再利用せず変数を利用した方がいいかと
0118nobodyさん
2006/02/22(水) 02:56:49ID:???有難う御座います。
結果を書くのを忘れていました。
-----------
1,test,0,
,1,
2,test,0,
3,test,0,
-----------
っていう風になってしまうのです。
もし宜しければこれと同じようなことをできる
ソースを教えて頂ければ幸いです。ヨロシクオネガイシマス。。
0119nobodyさん
2006/02/22(水) 03:42:37ID:???IN の open から close までを書き直してみました
open(IN, "$logfile_all") || &error("error");
while($readline = <IN>){
$readline =~ s/\x0D\x0A|\x0D|\x0A//;
my($num, $name, $flag) = split(/,/, $readline);
if($in{'no'} eq $num){
$readline = "$num,$name,1";
}
$readline .= "\n";
push(@new, $readline);
}
close(IN);
0120nobodyさん
2006/02/22(水) 04:58:45ID:???ソースを会社のUSBメモリにいれてPCにさしっぱにして忘れて来てしまったので
今日会社に着いたら即やってみたいと思います。結果必ず報告に来ます(^д^ゞ
まずはレスしてくれた感謝のお気持ちだけ。。
0121nobodyさん
2006/02/22(水) 11:43:46ID:???0122nobodyさん
2006/02/23(木) 00:22:45ID:???会社には行けたんですが通常業務が忙しすぎて手が回らなかった(というか回させてもらえない)
ので、実験できませんでしたT△T何分小さい会社なもので・・・。
明日には必ずやりますので報告もう少し遅れそうです。。
わざわざソース書いて下さったのにごめんなさい。
0123nobodyさん
2006/02/23(木) 14:41:14ID:???パソコンだけでなく携帯からもアクセス可能なものです。
タイトル:消える掲示板
制作年:774年
出演者:
名無しさん
夜勤さん
プログラマさん
内容:増大する維持費と転送量に挑む男達。淀んだ楽園の行方は?
こんな感じの内容を登録して携帯やパソコンから検索閲覧できるようにしたいのですがPHPとMYSQLで実現できますか?
ちなみにPHPとMYSQLはこれから勉強します。
よろしくお願いします。
0124nobodyさん
2006/02/23(木) 14:43:27ID:???0125nobodyさん
2006/02/23(木) 15:09:03ID:Swl5xdsb「呼び出されたらサーバのファイルに
処理だけしてHTMLを返さない」
というCGIはどうやって書くのでしょう。
具体的には
「FLASHからPERLのCGIを呼び出すが
処理後にいちいちページが変わったりしなくていい」
というものです。
処理した後にHTMLをブラウザに返す
ようなCGIしか作ったことがないので
FLASHの話なのかCGI全般の仕組みの話なのか
よくわからないのです。
0127脱帽
2006/02/23(木) 15:25:40ID:???とりあえず出直してこい
0129nobodyさん
2006/02/23(木) 18:32:56ID:Swl5xdsbprint "Status: 204";
0130nobodyさん
2006/02/23(木) 18:48:11ID:???無事できました!わかりやすいソースですごく納得です。
改行コードの件、今度から忘れず気をつけたいと思います。
119さんの力量計り知れないですね^^;本当にどうもありがとう御座いました。
0132nobodyさん
2006/02/25(土) 21:34:11ID:???・書籍名 :(さるでもわかるPHP)
・ジャンル:(ぱそこん)
・作家名 :(曾英知)
・出版社 :(PHP出版)
・書評 :(わからん)
・満足度 :(38%)
とソフトかなんかに伝プレのカッコ内だけ記入してアップロードしたら
かってに
・ジャンルごとに固めて五十音順にならべるてページ作ってくれる
・ジャンルごとに固めて満足度順に並べてページつくってくれる
とかしてくれるようにしたいんだけど
HTMLやCSS以外に何を勉強したらできるようになるのか教えてください、
blog使えばいいじゃねーかとか言われてもブログのデザインって
使いにくいしダサいし
0133nobodyさん
2006/02/25(土) 21:46:49ID:???プログラム言語と 英語の習得を比較するとこんな感じ。
言語を取得してからも実用的な物を作れるようになるまでの道のりは長いぞ。
[プログラム言語の習得] [英語の習得]
関数・構文を覚える 単語・構文を覚える
簡単なものを作る 簡単な文章を作る
必要な知識(プロトコルとか)を習得 ジョークの理解に必要な歴史的背景や風俗を知る
より効率的な作り方を身に付ける 古典的なアメリカンジョークを聞きつづける
実用的な物を作る どっかんどっかん受けるようなアメリカンジョークを作る
0134nobodyさん
2006/02/25(土) 23:02:09ID:???blogだってCSSをいじれば相当デザインを良くできると思うが。
ま、PerlかPHPのどっちかでも勉強すればいいんじゃね。
0135nobodyさん
2006/02/25(土) 23:42:54ID:???IBM の DB2 だっけ? とか商用の廉価版でフリー製品あるし DB は好きなの選べるから
今から勉強するなら面白いとは思う
0136nobodyさん
2006/02/26(日) 16:36:58ID:???0137nobodyさん
2006/02/26(日) 19:48:31ID:???0138でもどり
2006/02/26(日) 21:50:01ID:gbKgppEZある団体のホームページを作っていて、プロバイダは@niftyです。
自分で調べたところ、@niftyで使用されているサーバのOSはFreeBSDでASPは使えないとわかりました。
OSがFreeBSDでASPのようにデータベースに接続して登録や照会処理ができるような技術を調べたところ、
Apache、PostgreSQLなどがあるようなのですが、どれが習得しやすく使いやすいですか?
アドバイスや参考なるページをご存知の方は教えてください。
よろしくお願いします。
0139nobodyさん
2006/02/26(日) 22:04:33ID:???0140nobodyさん
2006/02/26(日) 22:05:03ID:???名称 キミの環境 代替手段
------------------------------------------------------
OS windowsの何か FreeBSD、Linuxとか
Webサーバ IISとか(よく知らね) apache
データベース SQLServer PostgreSQL、MySQLとか
プログラム言語 ASP Perl、PHP、JSPとか
0141nobodyさん
2006/02/26(日) 23:06:43ID:???Windowsしか知らんのなら、素直にWindowsサーバ使えるところでホームページ作れば?
今までWindows+ASP+SQLServerしか触ったことのない人が、一からApacheとPostgreSQLの
環境を構築してUNIXの勉強もしなきゃならないというのはキツいよ。っつーか無謀。
趣味ならともかくお仕事なら、
・Windowsサーバを使えるところで作る
・移行環境(何にするか知らんが)に詳しい技術者を連れてくる
のどっちかにすれ
0142nobodyさん
2006/02/28(火) 15:59:50ID:???0143nobodyさん
2006/02/28(火) 16:29:21ID:???0144nobodyさん
2006/02/28(火) 16:30:42ID:???別に言語は何でもいいんでないかな。
Perlの掲示板が多いのは、
サンプル・フリー配布スクリプトが多い、
レン鯖、プロバイダ鯖等でもPerlがインストール済みの確率は多言語に比べ高い
なんかが理由だと思う。
0145nobodyさん
2006/02/28(火) 16:35:18ID:???0147nobodyさん
2006/02/28(火) 16:45:58ID:???文字列処理が弱いからな。
POSIX正規表現も低速だし、使いづらい。
Perl普及の背景には強力な正規表現が実装されててCGIに必要不可欠な文字列処理が強力だったって言うのもあるな。
0148nobodyさん
2006/02/28(火) 16:48:48ID:???0149nobodyさん
2006/02/28(火) 17:02:23ID:???JavaScriptはこれらとは別物なんですよね?
0150nobodyさん
2006/02/28(火) 17:13:09ID:???JavaScriptはクライアントサイドスクリプト。
ブラウザ上などで実行される。
対してPerlやPHPはサーバサイドスクリプト。
サーバー上で実行され、実行結果がクライアントに返る。
PerlとPHPと言うのは好みだろう。
0151nobodyさん
2006/02/28(火) 17:42:59ID:???正直新規のプログラムでperlを使うってのは少ない
DBを扱うなら尚更perlの出番なし
好きなんだけどねperl…
0152nobodyさん
2006/02/28(火) 17:49:33ID:???ってことでおk。
0153nobodyさん
2006/02/28(火) 17:57:24ID:???皆さんはCGIを動かす為のWebサーバソフト(フリー)は何使われてますか?
0154nobodyさん
2006/02/28(火) 17:59:04ID:???0155nobodyさん
2006/02/28(火) 18:00:48ID:???これとかどうなんだろ?
0156nobodyさん
2006/02/28(火) 18:02:28ID:???0157nobodyさん
2006/02/28(火) 18:09:13ID:???0158nobodyさん
2006/02/28(火) 18:17:58ID:???使ったことないから実際にどうなのかは知らんのだけど、
AnHTTPdがアレだという話は確かによく聞くな。
0159nobodyさん
2006/02/28(火) 18:24:56ID:???0160nobodyさん
2006/02/28(火) 19:17:33ID:???CGI アクセスが多いと (といっても1日のトータルで2〜3000ほど) 1日経たずにサヨナラ
0161nobodyさん
2006/02/28(火) 19:39:22ID:???0162nobodyさん
2006/02/28(火) 19:48:01ID:???0163nobodyさん
2006/02/28(火) 20:04:21ID:???もう訳わからんです
0165nobodyさん
2006/02/28(火) 20:07:29ID:???0166nobodyさん
2006/02/28(火) 21:07:35ID:???外部公開ウェブサーバのCGIで受けたPOSTデータを、そのまま
ローカルウェブサーバのCGIにリダイレクトしたいのですが…
可能でしょうか??
0167nobodyさん
2006/02/28(火) 21:56:54ID:???1.3 のほうが微妙に速いこともあるけど、使うなら2系がいい
> 165
Apache
> 166
できるっぽいけど俺には探せなかった
ごめ
0169nobodyさん
2006/02/28(火) 22:56:59ID:???良い解決策教えてください。
すべてShift-JISで作ってました。
0170nobodyさん
2006/02/28(火) 23:03:39ID:???Linux板のくだ質で聞いたほうがよくない?
0171nobodyさん
2006/02/28(火) 23:29:23ID:???ありがとうございます。
リバースproxyってのは知らなかったなぁ。
特定のURLだけでリバースproxyを使うって設定はできるのかな??
調べてみます。
0172nobodyさん
2006/03/01(水) 01:39:06ID:Au3MGlrqPerlをコンパイルして保存、それをFastCGIでPersistentにすることってできるでしょうか??
0173nobodyさん
2006/03/01(水) 05:29:37ID:QDiV6++Oそれぞれの項目が改行で区切られるているらしいのですが、
その際の改行コードはクライアントのプラットフォームに関係なく
絶対にCRLF(\r\n)なんでしょうか?
0174nobodyさん
2006/03/01(水) 06:21:35ID:???区切りは改行じゃなくてセパレータ文字列じゃなかったっけ?
単なる改行ならCRLFが有力候補だけど、ブラウザまかせ。要テストですね。
0175nobodyさん
2006/03/01(水) 06:25:23ID:???つRFC2046
結論から言えばRFC常は必ずCRLF
この辺参照
4.1.1 Representation of Line Breaks
> The canonical form of any MIME "text" subtype MUST always represent a
> line break as a CRLF sequence. Similarly, any occurrence of CRLF in
> MIME "text" MUST represent a line break. Use of CR and LF outside of
> line break sequences is also forbidden.
5.1.1 Common Syntaxの拡張BNF
> body-part := MIME-part-headers [CRLF *OCTET]
> delimiter := CRLF dash-boundary
等
0176175
2006/03/01(水) 06:33:30ID:???0177175
2006/03/01(水) 06:34:20ID:???でもセパレータの前やMIMEヘッダ中に入ってる改行はCRLFで間違いないはず。
準拠してないブラウザが存在しないとは保障できないけど
0180174
2006/03/01(水) 08:08:27ID:QDiV6++O>>177
>準拠してないブラウザが存在しないとは保障できないけど
境界線の形式が、例えば
-----------------------------7d61f4206e0
(最後だけは-----------------------------7d61f4206e0--)
みたいになっているとも限らないんでしょうか?
0181nobodyさん
2006/03/01(水) 08:09:09ID:QDiV6++O■ このスレッドは過去ログ倉庫に格納されています