トップページphp
982コメント335KB

【Ruby】RubyでCGI

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2001/05/04(金) 12:57ID:c4hRtzGY
Rubyについて語るスレッドです。
関連リンクは>>2-3
0064名無しさん@お腹いっぱい。02/01/25 06:15ID:???
マルチレスすまそsage。

>>58
そういう話になるともう数の問題になってしまうので、
誰かがばりばりCGIを書いて増やすしかない、ってことに
なってしまいそう。地道でよいので徐々に頑張っていく方向で。

>>59
ERbつかってます。良いですね。

>>60
埋め込む量とか程度の問題、と僕は考えてます。
他にはWARLUSとかは違う手法ですね。
ruby-listにでも紹介されてましたが、以下の2ch風(?)BBSで
使われています。

匿名掲示板(仮)
ttp://210.155.146.159/bbs/

>>63
ヘタレなCGIであれば書いてますが、何か?
0065名無しさん@お腹いっぱい。02/01/26 03:25ID:???
確かにerubyだけで全部済まそうとすると読めたもんじゃないと思うけど、
データ処理のロジックの部分は普通のスクリプトで書いて表示部分だけerubyで書くと、
処理と出力の分離もできて一石二鳥だと思う。
0066名無しさん@お腹いっぱい。02/01/26 03:50ID:YLXIwbR+
WALRUSってなんかすごそう
0067名無しさん@お腹いっぱい。02/01/26 16:00ID:???
内緒だけどちゃんと仕事でrubyのCGI作ってるよ。

たしかに重いんだけど、mod_rubyを使えば我慢できないこともない。
なんでrubyを使ったかというと、たんに新しいものが使いたかったって
だけだけど。
0068名無しさん@お腹いっぱい。02/02/02 10:04ID:???
>>65
それって、内部処理を埋め込みスクリプトからrequireしちゃうってこと?
0069名無しさん@お腹いっぱい。02/02/02 11:01ID:5I8PZ1VP
>>59
使ってるよ。>>68 のいうとおり、erubyスクリプトでは require した後は
ほとんど結果を繰り返し出力するくらいの小さいことしかしてない。

ただうまくいかないのは、結局 rhtml も html なので、
例えば何枚かhtml素片があって好きな部分を表示するには
ロジックを入れて選択するしかないんだよね。
つうわけで、rhtmlがcase when... だらけになったりしてしまい、
あまり美しくならない。結局動的に html 生成するなら、eruby に1発任せるんじゃなくて、
むしろ rhtml は唯のテンプレートと開き直り、
ERb 等で生成ロジックまで自分でコントロールするのが
正しいのかも。
例外拾うのも必須だけど(でないとエラーの時にソースコード丸見え…)
rhtmlにいちいち begin rescue end とか入れたくないよね?

みんなどうしてる?
0070名無しさん@お腹いっぱい。02/02/04 16:47ID:C5lTY9nr
Rubyで作ろう!スレッド式掲示板 だって。
http://210.155.146.159/bbs/s194/
0071名無しさん@お腹いっぱい。02/02/06 08:52ID:???
>>70
そこ見てコソーリ勉強中
0072名無しさん@お腹いっぱい。02/02/12 10:15ID:iISjt4Rm
>>70
更新されてたよ。でも、いつになったら出来ることやら(藁
http://210.155.146.159/news.html
0073nobodyさん02/03/21 07:38ID:+PRed0xw
上げてみよう
0074nobodyさん02/04/03 13:31ID:E16D60Iv
ちょっと教えて欲しいんだけど、
Apacheでerbを使う時はhttpd.confに
どう設定すればいんでしょうか?

eRubyはこれで動くんですが・・・。

AddType application/x-httpd-eruby .rhtml
Action application/x-httpd-eruby /cgi-bin/eruby
0075nobodyさん02/04/03 17:58ID:ToPFq2v0
age
0076あぼーんNGNG
あぼーん
0077nobodyさん02/04/06 01:04ID:???
>>74
ERbLightしか使ったことないけど、単にrequireするだけ。

irb(main):001:0> require "erb/erbl"
true
irb(main):002:0> p ERbLight.new("<%= 1 + 2 %>").result(binding)
"3"
nil

ってこういう意味じゃなかったらスマソ。
それとも、erbのほかのクラスとかはまた違うのかな。
00787402/04/14 13:55ID:???
>>77
erbをApacheで使う時もrequireするだけでよかったんですか。
解りました、どうも。
0079nobodyさん02/04/15 10:05ID:9IRZyByH
No such file to load -- erb/erbl (LoadError)

リモートからサーバ上のCGIを動かそうとしたら
こんなエラーが出たんだけど、なにかhttpd.confに設定を
加えなきゃならないんでしょうか?
0080nobodyさん02/04/15 22:59ID:???
何よるびーってマヅで需要ねえな。
0081nobodyさん02/04/15 23:56ID:???
$: を確認してみましょう
0082nobodyさん02/04/26 03:58ID:XnUMsLyB
require "socket"
host "hoge.com"
sock = TCPSocket.open(host,80)
sock.print "GET / HTTP/1.0\r\n\r\n"
while line = sock.gets
if....

ここで"http://aaa.com/"など
HTMLソースの中にアドレスが入ってたりしたら
引っ張ってきたいです。
if文の書き方教えてください。
0083nobodyさん02/04/29 23:23ID:???
この辺で質問するといいかも。

Rubyについて
http://pc.2ch.net/test/read.cgi/tech/1012096319/
rubyを語るスレッド
http://pc.2ch.net/test/read.cgi/unix/1018967064/
0084nobodyさん02/05/04 13:13ID:uTJWVRnZ
CGIでは汚染レベルをいくつで作ってますか?
私は1です。
0085nobodyさん02/05/13 02:54ID:rVFo8O8l
>>84
俺もCGIモジュールのデフォルト(だっけか)1。
0086nobodyさん02/05/21 11:54ID:KgEr4A1p
RubyでのCGI本がまた出ますね。
http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=4-274-06472-7
0087narucy56 ◆wMOjCT4s 02/06/01 14:21ID:2HMrwkAK
最強の Web プラットフォーム発見

WEBrick
http://www.notwork.org/ipr/webrick/

Java でいうところの Tomcat みたいなもんで、Ruby で実装された Web Server。
100% Pure Ruby で、カスタマイズも Ruby スクリプトを書くだけで簡単にできる。
XML で設定だのはしなくてもいい。

複雑なシステムを作るときは、Apache だけじゃだめだね。
ちゃんとしたコンテナが作られていないと。柔軟性が確保できない。
0088nobodyさん02/06/02 13:25ID:???
>>86
だれかレビューきぼんぬ
0089nobodyさん02/06/06 15:45ID:pZjuhwXZ
↓これはいったい、どういう機能を持っていて、どうやって使うんですか?

http://www.jin.gr.jp/~nahi/RWiki/?cmd=view;name=Tofu

0090nobodyさん02/06/08 07:13ID:MAfvlHoz
>>87
RubyでWebアプリケーションは作りたいけど、
HTML作ってくれるだけでよくて、
Web serverまではして欲しくないんですが。
こういう使い方もできるのか?
0091nobodyさん02/06/08 07:55ID:???
>>90
eRuby だけじゃだめ?
Web アプリのフレームワークがほしいのかな?
0092narucy56 ◆wMOjCT4s 02/06/10 17:53ID:jfQB0Rff
>>89

http://www.jin.gr.jp/~nahi/RWiki/index.cgi?cmd=view;name=Div

これぞ、究極の MVC を実現するものじゃないかと思った。
とにかく使ってみそ。
0093nobodyさん02/06/16 08:59ID:sIr0rq50
>>91
そう、フレームワークがほしいんです。
eRubyだけでちゃんとしたWebアプリケーション書くのはつらいよね。
HTMLとコード(ロジック)が混じっちゃう。
Warlusは開発体制大丈夫なのかなーと不安だし。

Div、読んでみたけど結構面白そう。やってみます。
でもWEBrick必須なんだよね。
0094nobodyさん02/06/17 04:11ID:???
>>92
禿同。箱入り娘は驚愕。なんでこんな発想が出来るのか。
これを見たあとだと、他のアプ鯖なんてオブジェクト指向でもなんでもない
単なるサブルーチン集に見えるね。
0095nobodyさん02/07/06 01:29ID:???
ERb使ってたらハマりまくったんだけど、
なんで以下の構文がエラーになるんだ?

<%
foo = "bar"
"#{foo}"
%>

undefined local variable or method `foo' for #<Object:0x4027bce0>
0096nobodyさん02/07/06 17:19ID:???
>>95
% irb
irb(main):001:0> require 'erb/erb'
true
irb(main):002:0> erb = ERb.new('<% foo="bar"; #{foo} %>')
#<ERb:0x80d7c18 @src=" foo=\"bar\"; #{foo} \n", @safe_level=nil>
irb(main):003:0> erb.run
"bar"

% cat erb.html
<%
foo = "bar"
"#{foo}"
%>
% ruby /usr/local/lib/ruby/site_ruby/1.6/erb/erb.rb erb.html

%

通りますが、何か? 他のところに問題があるとか。
00979502/07/06 22:08ID:4tjyHIal
>>96
わざわざ試してくれてありがとう。

同じようにテストしたら問題なかったけどこれだとエラーになる。
ruby -r 'erb/erb' -e 'p ERb.new(%(<% foo="bar"; "#{foo}" %>))'

こっちだと動く
ruby -r 'erb/erb' -e 'p ERb.new(%(<% foo="bar"; "#{Time.now}" %>))'

なんじゃこりゃもう。。。

一応環境を書いときます
% ruby -r 'erb/erb' -e 'p ERb.version'
"erb.rb [1.4.3 2002/03/28]"

% ruby -v
ruby 1.6.7 (2002-03-19) [i386-linux]
00989502/07/06 22:39ID:???
>>97
念の為にうちの環境も晒します。

00999502/07/06 22:40ID:???
>>98
うっかり書き込むボタンを押してしまいました。ゴメソ。

% ruby -rerb/erb -e "p ERb.version"
"erb.rb [1.4.3 2002/03/28]"
% ruby -v
ruby 1.6.7 (2002-05-23) [i386-freebsd4]

OSはFreeBSD、rubyはportsからインストールしているので、
パッチが当たっていて日付が新しくなってます。
0100nobodyさん02/07/07 00:36ID:xCJ1zwrA
              ζ
          ,,.-‐''""""'''ー-.、
        ,ィ"          \    やったオレ様が100ゲットだ!
         /              `、 ボケ共がオレ様にひれ伏せ!!
        ,illlllllllllll           i
      r'-=ニ;'_ー-、___,,.ィ‐‐-,,_  _| >>101遅いんだよ、チンカス
       | r,i   ~`'ー-l;l : : : `l-r'"メ、  >>102アホすぎる、言葉もない。
      ヾ、       `ー‐'": i!_,l_ノ` >>103人間辞めろ。
       |         ,:(,..、 ;:|/  >>104なにやってんだよ、この包茎ちんちん
       |        ,,,..lllllll,/   >>105あらら、ご愁傷さま。死ね
       /  `::;;.   '"`ニ二ソ  >>106うっさいハゲ。
     /7    ゙゙:`-、;:;:;;;:;:;:;;/       >>107ビルから飛び降りて死ね。
   ,,.ィ"`:、        "/;:`ー-:、.._   >>108ネットワークすんなゴミが!。
 ‐'":;:;:;:;:;:;:;:\   . : :;: .  ;/;:;:;:;:;:;:;:;:;:~`'''ー--:、,,_ >>109お前はクビを吊れ
0101nobodyさん02/07/07 10:32ID:???
ふーん。。。
0102名無しさん@カラアゲうまうま02/07/17 18:59ID:???
>>97
bindingの問題かな。
0103名無しさん@カラアゲうまうま02/07/17 20:05ID:???
>>97
だまされるとこだった(w
> ruby -r 'erb/erb' -e 'p ERb.new(%(<% foo="bar"; "#{foo}" %>))'

%(<% foo="bar"; "#{foo}" %>)を評価するときに#{foo}が展開されるからそりゃ当然エラーになるわな。

ruby -rerb/erb -e 'foo="hoge";p ERb.new(%(<% foo="bar"; "#{foo}" %>))'
を試してみりゃ意味が分かるだろ。

結論としちゃ#をエスケープか、%qにしる。
ruby -rerb/erb -e 'foo="hoge";p ERb.new(%(<% foo="bar"; "\#{foo}" %>))'
ruby -rerb/erb -e 'foo="hoge";p ERb.new(%q(<% foo="bar"; "#{foo}" %>))'
01049702/07/17 23:43ID:???
ガ━━(゚Д゚;)━━ソ!
外側からいきなり展開されていたとはね。
いや、参りました(w
0105名無しさん02/07/31 04:40ID:???
最近どう?
0106nobodyさん02/07/31 10:54ID:p4UQxNW6
ソースは

#!/usr/bin/env ruby
keyword_file = ARGV.shift
suffix_file = ARGV.shift
# 正規表現生成
re = /日本語のページから(.*)を検索しました。/
re2 = /(\d+)件中(\d+) - (\d+)件目/
re3 = /検索にかかった時間(\d\.\d\d)秒/
File.foreach(keyword_file) do |kw|
 File.foreach(suffix_file) do |sf|
  w3m = IO.popen("w3m -dump 'http://www.google.com/search?ie=euc-jp&oe=euc-jp&hl=ja&meta=lr=lang_ja&num=10&q=#{kw}+#{sf}'","r")
  pat=/件中/
  w3m.each_line do |line|
   if pat =~ line
    re.match(line)
    key = $1
    re2.match(line)
    cnt,from,to = $1,$2,$3
    re3.match(line)
    second = $1
    printf("%16s %10s  => %5d件 %10s 秒 \n",kw.chop,sf.chop,cnt,second)
   end
  end
  w3m.close
 end
end
010710602/07/31 11:52ID:p4UQxNW6
>>106において
w3mでパイプしている奴を
Net::HTTPで高速化させたいですが、正規表現で
引っかかります。
require 'net/http'
host = 'www.google.co.jp'
path = '/search?num=10&lr=lang_ja&q=hoge'
http = Net::HTTP.new(host)
page=http.get(path)[1].delete("\n")
print page.scan(%r|ffffff><b>日本語.*秒</font>|i)[0].gsub(%r|<.*?>|,'')
scanの部分を間違っていますか?

なお、ほしい部分の周辺は
以下のようなHTMLです。

<b>日本語</b>のページから<b>hoge</b>を検索しました。  </font></td>
<td bgcolor=#3366cc align=right nowrap>
<font size=-1 color=#ffffff>約<b>37,500</b>件中<b>1</b> - <b>10</b>件目 ・検索にかかった時間<b>0.54</b>秒</font></td></tr></table>



010810602/07/31 11:55ID:p4UQxNW6
途切れてました。

------------------------------
<table width=100% border=0 cellpa dding=1 cellspacing=0 bgcolor=#3366cc><tr><td bgcolor=#3366cc nowrap><font size=-1 color=#ffffff>
<b>日本語</b>のページから<b>hoge</b>を検索しました。  </font></td>
<td bgcolor=#3366cc align=right nowrap>
<font size=-1 color=#ffffff>約<b>37,500</b>件中<b>1</b> - <b>10</b>件目 ・検索にかかった時間<b>0.54</b>秒</font></td></tr></table>

---------------------------
#!/usr/bin/env ruby
require 'net/http'

host = 'www.google.co.jp'
path = '/search?num=10&lr=lang_ja&q=hoge'

http = Net::HTTP.new(host)
page=http.get(path)[1].delete("\n")

print page.scan(%r|ffffff><b>日本語.*秒</font>|i)[0].gsub(%r|<.*?>|,'')
0109名無しさん02/08/01 02:18ID:???
うちはそのコードでうまくいくよ?

----
$ ruby 106.rb

ffffff>日本語のページからhogeを検索しました。  約34,800件中1 - 10件目 ・検索にかかった時間0.07秒

----
後は切ったり張ったりすればいいんじゃないかなあ。
あ、もしかして日本語コードがおかしいってことない?$KCODE を設定すれ。
0110nobodyさん02/08/02 15:12ID:???
>>109
正規表現リテラルを使ってるから、#!/usr/bin/env ruby -Keとするか、eオプ
ションをつけてやるかしないといけないと思われ。
0111管王里人04202/08/03 03:02ID:???
>>106 さんは、スレッド 正規表現道場@2ch   http://pc.2ch.net/test/read.cgi/php/996105815
とのマルチポストです。
速やかに回線を切って首を吊って下さい。
0112nobodyさん02/08/04 22:52ID:KEtgQdUN
あの、、、単発質問っすけど。。。しかも既出っぽい。

erubyで現在処理しているファイル名を出力するのって、
どうやればいいんでしょうか?
対象のerubyファイルに<%print $0%>
と記述してもダメで、往生しております。
mod_ruby-0.9.7-0vl2、eruby-0.9.7-0vl1、ruby-1.6.7-0vl5
OSはVineLinuxっていう環境です。
0113nobodyさん02/08/05 01:04ID:gkrXoXeM
質問
erubyを使うことによって
rubyのある機能が使えない
なんていうことはありますか?
0114自己レス02/08/05 02:40ID:???
>>112
とりあえずmod_rubyが目的を達してくれました。
<%print Apache.request.filename%>
0115自己レス02/08/05 03:02ID:???
ついでにファイルをナニした時刻とかは
<%print File.atime(Apache.request.filename.untaint)%>
faqに書いてあるっすね。。。

>>113
メーリングリストでたまに話題になるっす
0116nobodyさん02/08/09 19:27ID:???
るびきちのツール http://www.ruby-lang.org/~rubikitch/computer/myruby/w3mclient/ を使って、
IEからgetメソッドでurlをVMware内のアパッチに送り、Redhatのw3mにIEが表示中のページを開かせるスクリプトを書いてます。
アパッチ素人なので、cgiから別プロセスを起動させれません。で、cgiそのものにexecさせるてもこれまたエラーになります。
どこがおかしいのでしょうか?見てください。

% cat w3mclient.cgi
#!/usr/bin/ruby -w
DEFAULT_WINDOW = "w3m"        
print "Content-type: text/html\r\n\r\n"
puts "<html><head><title>test.rb</title></head><body><pre><h2>REQUEST</h2>"
require "cgi-lib"
input = CGI.new
# テスト用
#url='http://localhost/'
url = input["url"]
print "#{url}が妥当ではない。<BR>"  if url == ""
puts "OK!<BR>"
print "<html><body>inputdata = #{url}</body></html>"
string = "U#{url}^M"
#return 0
if string.empty?
 $stderr.puts "must be one argument!"
 exit 1
else
 cmds = [ "select #{DEFAULT_WINDOW}", "stuff #{string}" ]
 cmds << "other"
 exec "screen", "-X", "eval", *cmds
end
011711602/08/09 19:32ID:???
予め、screenでw3mを起動して実験してくり。
url='http://localhost/'
#url = input["url"]
として、コマンドラインからだとうまくいくのに.....
0118nobodyさん02/08/16 15:19ID:???
>>116
CGIだとsafeモードになっててexecできないとかじゃ?
url = input["url"].untaint
でどうよ。
0119nobodyさん02/08/21 14:58ID:zHeqvt2W
データの保存手段としてPstoreとcsvどっちがいいの??

Pstoreは一気にダンプできるけど、データがでかくなると遅いんでない??
他から読めないし。

csvは細かい制御ができるけどめんどいし。

オブジェクト指向の利点を生かすならならPstoreかなぁ。
0120nobodyさん02/08/21 14:59ID:zHeqvt2W
gifcat.rbってないの??
0121nobodyさん02/08/21 17:53ID:???
>>119
CGIでPStoreとcsvの速度的の差ってそんなに気になるかなあ?

50〜100個のオブジェクトから成る木構造をした
オブジェクトをPStoreで保存するスクリプトを書いたことがあるけど、
速度的な問題はあまりなかった。

csvは単純なデータ構造なら良いけど、
こういうものを保存しようとすると、かなり手間がかかるので、
csvが細かい制御に向くということには同意できない。


PStoreの問題は保存形式がバイナリで他から参照できないこと、
Marshalのバージョンによって互換性がなくなることの2点。
キャッシュに使う場合などにはPStoreは便利だが、
きちんと使いどころ決めないと、ひどい目に遭う。
0122nobodyさん02/08/27 12:00ID:+xL6Nd0D
POSTメソッドでCGIを呼び出すサイトに
GETメソッドでキーワードを渡すようなCGIを仲介させたいのですが、
可能でしょうか?
味の素のサイトのようなものをブラウザのgetメソッドから簡単に
呼び出したいのれす
0123nobodyさん02/08/27 12:09ID:???
>>122
叶です。でもマルチはやめま・・・
0124nobodyさん02/09/04 00:38ID:???
ttp://www.spice-of-life.net/download/cgikit/
これはどうよ?
0125nobodyさん02/09/04 02:12ID:???
テンプレートとしてはamritaの方が良いかも。
バインディングファイルがちょっとうっとおしい気がする。

ドキュメントがないので、CGIライブラリとしてはnarf-cgiに負けそう。
http://narf-lib.sourceforge.net/doc/

CGIKitは国際化できるのがポイントかな。
0126nobodyさん02/09/06 23:04ID:4WN6nHTU
>>125
amritaのコンポーネント使えば
バインディングファイルはフォーム関連だけですむよ

http://kari.to/amrita/cgi-bin/Examples/Examples.cgi
0127nobodyさん02/09/07 12:02ID:/XosvvbD
てゆうか、いつのまにアムリタとcgikit合体した?
0128nobodyさん02/09/09 03:11ID:yJUi7eZX
Div(http://rwiki.jin.gr.jp/cgi-bin/rw-cgi.rb?cmd=view;name=Div)
で画像や外部スタイルシートって使えてる人いますか?

DivでWebアプリーケーション開発してるんですけど、そろそろテキスト
だけじゃつらくなってきたので画像表示させたいんです。
上のページでは絶対URLで書くといいらしいと書いてあるんですが、自サバ
の画像は表示されません。(外部の鯖の画像を指定した場合は表示されます)

解決方法がありましたらご教授お願いします。
0129 02/09/09 03:16ID:OJG0XMU8
http://game.2ch.net/test/read.cgi/gamedev/1031500245/137-

助けてやって下さい
0130nobodyさん02/09/12 10:56ID:7yXLjx7b
eruby からw3m -dumpを呼び出して、特定の行をgrepさせたいのですが、
そんな複雑なこと、可能でしょうか。
0131名無しさん02/09/14 06:57ID:???
>>130
そんなのより net/http 使え。
013212802/09/17 02:42ID:???
>>128
自己レスです。
WEBrickのMLの過去ログみて試行錯誤しながら解決しました。
0133はげ夫02/09/21 01:43ID:C/seqkZ5
cgi.out{
 CGI.pretty(
 cgi.html{
  cgi.body{
   cgi.form{
    cgi.popup_menu("selLink",["#{value_array[0]}","#{key_array[0]}"],["#{value_array[1]}","#{key_array[1]}"],
    ["#{value_array[2]}","#{key_array[2]}"],["#{value_array[3]}","#{key_array[3]}"])
   }
  }
 }
 )
}

0134はげ夫02/09/21 01:44ID:C/seqkZ5
CGIにHTML出力させている以下のスクリプトですが、
もっと綺麗に書きたいです。

cgi.popup_menu("selLink",["#{value_array[0]}","#{key_array[0]}"],["#{value_array[1]}","#{key_array[1]}"],
    ["#{value_array[2]}","#{key_array[2]}"],["#{value_array[3]}","#{key_array[3]}"])

のところをイテレーターで処理したいのですが、どのような
書き方がかのうでしょか.
なお、
while gets
 chomp
 value,key = split(/\s/)
 value_array.push value
 key_array.push key
end
てな感じで、arrayに格納してある値を使いたいです。

0135はげ夫02/09/21 02:24ID:C/seqkZ5
はげ夫です。
予め、文字列を作っておいて、それを使うようにするため
以下のようにしました。
でも
value_key=`mmm`
がうまくいきません。原因わかる方いらしたら、アドバイスお願いします。
def mmm
 (1..9).each do |i|
  print "[\"value_array[#{i}], key_array[#{i}]\"]"
  print " , "
 end
end

value_key=`mmm`
cgi.out{
 CGI.pretty(
 cgi.html{
  cgi.body{
   cgi.form{
    cgi.popup_menu("selLink", "#{value_key}")
   }
  }
 }
 )
}
0136nobodyさん02/09/21 11:34ID:???
>>135
何をしたいのか微妙に分からないが、`mmm`というのはmmmという外部コマンドを実行展開だよ。
やるなら、こんな感じでうまく行くかな?
なお、"#{hoge}"はhoge.to_sと同等のハズ。

a = []
4.times do |i|
  a.push([value_array[i].to_s, key_array[i].to_s])
end
cgi.popup_menu("selLink", *a)
0137はげ夫です。02/09/21 16:31ID:C/seqkZ5
>>136
 神!!!!!


-----
求めていたことが出来ました。

--HageO
0138nobodyさん02/09/23 18:32ID:es3jINy/
rubyのホームページにあるマニュアル
に使われているCGIってどこでインストールできますか?
どこにあるのでしょうか?
0139nobodyさん02/09/23 19:47ID:???
>>138
rubyのマニュアルに使用しているCGIはRWiki。
もし、wikiとして使いたいだけならRWikiはお勧めしない。
自分でサーバーを持たない限り使用できる可能性がかなり低い。

RDでwikiが使いたいというのなら別だが、
そうでないならTikiを使うほうが良い。
もちろん別のwikiでも良いが。

RWiki http://www.ruby-lang.org/en/raa-list.rhtml?name=RWiki
Tiki http://todo.org/cgi-bin/jp/tiki.cgi?c=v&p=Tiki
014013802/09/25 11:59ID:XZD0oBt/
コマンドラインから
refe String#scan

とするのとNetscapeやw3mで
http://www.ruby-lang.org/ja/man-1.6/?cmd=view;name=String#scan
とするのと同じマニュアルがよめますが、
refe String#scan の入力を再利用して、
wwwrefe String#scan とか打つと
w3mが起動するようにしたいのです。
ローカルに単なるHTMLとして落としても
これらのことってできるのですよね。
0141nobodyさん02/09/25 12:47ID:???
xrea.com ruby使えるね。
他にruby使えるFreeSpace知ってるかい?
0142eruby ア02/09/26 06:22ID:C/mv8j8O
<html><head>
<TITLE>hogehoge</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
<script language=JScript defer>
function setvalue() {
str = clipboardData.getData("Text");
document.f.<%=query%> = str;
document.f.submit();
}
</script></head>

<body onload="setvalue();">
<% action_url=ARGV.shift %>
<form name=f method=post action="<%= action_url%>">
<% query=ARGV.shift %>
<% ARGV.each do | name, value| %>
<input type="HIDDEN" NAME=<%=name%> VALUE=<%=value%>>
<% end %>

<input type="text" name=<%=query %>  style="visibility:hidden">
</form></body>

0143eruby ア02/09/26 06:37ID:C/mv8j8O
makeform.rb METHOD ACTION QUERY_NAME NAME1 VALUE1 ……
コマンドラインから
% makeform.rb get www.google.co.jp/search q lr lang_ja
のように実行するか
/var/www/cgi-bin/eruby /var/www/html/makeform.rhtml post http://www.ajinomoto.com/A-Kitchen/cnavi/condition/index.asp \
txt_freeword hid_hyouji_ku 2 hid_log_menu_title_ku R
のように実行すると、クリップボードを検索キーとしたフォームを自動submit
してくれるHTMLファイルを大量に作りたくなったのですが、
うまく動きません。142 みたいなHTMLが簡単に作れればなというイメージです。
一体、erubyかcgiかどちらがいいのでしょか。

もう少し頑張ってみますが……。



0144nobodyさん02/09/28 16:21ID:9nQPxW7p
age
0145nobodyさん02/10/01 21:36ID:WSHJwoNi
mod_rubyについての質問です

現在cgi-bin下に置いて正常に動作してるrubyCGIのhoge2が
mod_rubyで動かそうとするとエラーになってしまいます
apacheのerrorlogでは

/usr/lib/hoge/hoge1.rb:9: uninitialized constant TOARU_DIR (NameError)
from /home/httpd/cgi-bin/hoge2:8:in `require'
from /home/httpd/cgi-bin/hoge2:8
from /usr/lib/ruby/1.6/apache/ruby-run.rb:70:in `load'
from /usr/lib/ruby/1.6/apache/ruby-run.rb:70:in `handler'
from ruby:0

という感じです
hoge2内でhoge1.rbをrequireした時が問題みたいですが

hoge2内で最初にTOARU_DIRは定義されてます
んでhoge1.rbではそのままTOARU_DIRを使ってるわけですが
mod_rubyではこの使い方では駄目なんでしょうか?

ruby 1.6.7
mod_ruby 0.9.8
です
0146nobodyさん02/10/02 15:17ID:???
>>145
mod_rubyは詳しく知らないけど、requireするものはライブラリとして完結していないとマズイと思う。
少なくとも呼ばれ方によって、エラーがでるような作りではマズイかと。
依存関係が相互だとややこしいから。(なるべく、一方から一方って言う作りの法がメンテがしやすいでしょ。)

mod_rubyではrequireはかなり特殊な動きをするみたいなのでその影響だと思う。
一度requireされると、Apacheを再起動するまでrequireされないとか、、、(時々されるらしいけど)
実際requireしているのはmod_ruby自体であって、requireが書かれているスクリプトではないのかな?
loadにしてみたら、うまくいくかもしれない。
それとも、グローバル変数を使うと動くかも知れない。
でも、作りを変えた方がいいでしょう。たぶん。
014714402/10/03 21:02ID:???
>>146
どうもです
結局hoge1.rb内でもTOARU_DIRを書いたら
一応動作してるっぽくなりました
でもキャッシュが効いてるとかの関係で
前のデータが表示されたりして正常動作は無理みたいです


rubyをまだあまり勉強してないので
ライブラリの書き方ってのは良くわからない
というかw3mlっていうスクリプトなんですが
http://www.tmtm.org/ruby/w3ml/

中身見てもサッパリで
直すにも知識がない…
つーわけで
グローバル変数などについても調べてみます
ありがとうございました
0148nobodyさん02/10/03 21:03ID:???
すまそ
145でした
0149るびきち02/10/07 13:01ID:eeOopUgI
>>116
やっほ〜☆るびきちだよ〜☆
http://enya-mp3.tripod.com
0150nobodyさん 02/10/07 13:28ID:???
>>149
Perlスレ荒らしてるのあんた?
0151るびきち02/10/07 13:34ID:???
ちがいま〜す☆
http://www.geocities.co.jp/MusicStar-Keyboard/4089/test/ruby3.jpg
0152nobodyさん 02/10/07 13:38ID:???
>>151 るびきち様へ、
rd, rtシリーズ使わせてもらってます。ありがとござます。
TeXへの変換もTodoに入ってましたが、どうなってますか。
0153るびきち02/10/11 00:12ID:???
もうだめぽ
0154るびきち02/10/11 15:41ID:???
偽者ばかりw 本物のるびきちはperlスレでも荒らしてるんじゃないですかね
彼にネット荒らしの前科があるのは一部では有名ですしね

http://www.geocities.co.jp/MusicStar-Keyboard/4089/omake.htm
0155るびきち02/10/12 09:33ID:???
>>154
あれは別の「るびきち」だYo
漏れは2chでしか荒らさない
0156るびきち02/10/13 00:55ID:???
いつの間にここの名無しは"るびきち"になったんだ・・・
0157るびきち02/10/13 02:39ID:???
Ruby板を作ってもらって、名無しは"るびきち"にしよう!
0158るびきち02/10/13 02:54ID:???
よかった るびきち 2001/01/10 [20時39分28秒]
掲示板巡回スクリプトを使ってる身には時計は死活問題なのです(^^;;

またかい るびきち 2001/01/10 [01時21分42秒]
時計遅れてるぞ!ってここの管理人に言ってもしょうがないんだよね(苦笑)

ちうことは るびきち 2001/01/02 [02時18分13秒]
日付が違うだけかな。
3日過去に戻ったってことだね、candyは(笑)
タイムスリップ(≧m≦)プッ♪

時計狂ってるぞ。 るびきち 2001/01/02 [02時15分45秒]
時計が狂ってます。現在 Fri Jan 5 02:15:33 JST 2001。

あれれ るびきち 2000/11/28 [08時32分41秒]
時計が「一日」ずれてません?

時計 るびきち 2000/11/21 [22時38分36秒]
candyの時計1時間ほど遅れてます!!!!!
下のカキコ消してください。

rubikitch 2000/11/21 [22時36分32秒]
candy、ホサ・D蕁授償エヨト・謄襦‡Ε法▲蓮◆◆▲漫▲院▲・・・eM#ス
0159るひきち02/10/13 16:20ID:???
るびきちって、まだRuby界で活動してんの?
追い出されたものだとばかり..............^^
0160るびきち02/10/13 16:49ID:???
どうでもいいよ。そんなことよりRubyでCGIの話しをしよう。

Drb/Erbを作った咳さんの本「dRubyによる分散オブジェクトプログラミング」
買った。最後の一章はDivの説明で、CGI::sessionの使い方がのってて
面白かったよ。
0161るびきち02/10/16 04:15ID:???
Rubyよりrubikitchの方が面白い
0162nobodyさん02/10/19 01:01ID:ETzV66Aw
Rubyで書かれた2ch型掲示板
http://amrita.s14.xrea.com/amrita-bbs/bbsmain.cgi?&template=board&board=amrita-bbs

テーマ切りかえという機能があって同じ掲示板の見ためがスラドになったりする
http://amrita.s14.xrea.com/amrita-bbs/bbsmain.cgi?&theme=slash_en&template=board&board=amrita-bbs
0163るびきち02/10/27 03:30ID:???
一緒に写真とっただけで脳内彼女にされた ゆっきぃ
http://www.geocities.co.jp/MusicStar-Keyboard/4089/ruby.yuki.jpg
■ このスレッドは過去ログ倉庫に格納されています