Forum: Ruby database access problem through cgi script

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Raju A. (Guest)
on 2008-12-28 03:40
Hi,
I am trying to print a set of data from database with a CGI script. This
script works fine a simple ruby script. But doesnt work in cgi script.
Any help is appreciated.


connection = WIN32OLE.new('ADODB.Connection')
connection.Open('Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\INFOPROJECT\db1.mdb')
recordset = WIN32OLE.new('ADODB.Recordset')
sql = "select * from GuestBook"
recordset.Open(sql, connection)
data = recordset.GetRows #.transpose
puts data
recordset.Close
connection.close

How can i call the above statements in below cgi script to make it work.

#!/usr/bin/ruby
require 'win32ole'
require 'cgi'

 cgi = CGI.new("html3")
  cgi.out() do
    cgi.html() do
      cgi.head{ cgi.title{"DATABASE"} } +
      cgi.body() do
        cgi.form() do
          cgi.textarea("get_text") +
          cgi.br +

        end
      end
    end
Tony Lawetta (Guest)
on 2008-12-28 21:15
(Received via mailing list)
Raju A. wrote:
> Hi,
> I am trying to print a set of data from database with a CGI script. This
> script works fine a simple ruby script. But doesnt work in cgi script.
> Any help is appreciated.

When calling it on the console it is you (i.e. the user ID you are
logged in with).
When calling the CGI it is the webserver (i.e. the user ID under which
it is running) that is executing your code.

Are you sure that the webserver has the permission to connect to the DB?

T.
This topic is locked and can not be replied to.