ブラウザに表示できません。
私はWebDBに挑戦してみようと思いMySQLを勉強しています。
そこで参考書を見ながら見よう見真似でCGIを作ったのですがブラウザーに表示できません。
環境的には
■□参照1□■□■□■□■□■□■□
Apache1.3.12(WIN32)
c:home/htdocs/public_html
MySQL3.23.32-win
ActivePerl5.60
□■□■□■□■□■□■□■□■□■
です。
perlを使っていますがブラウザにて
表示すると
■□参照2■□■□■□■□■□■□■□■□
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, root@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
--------------------------------------------------------------------------------
Apache/1.3.12 Server at localhost Port 80
■□■□■□■□■□■□■□■□■□■□■□
と出ています。
実際に作ったperlソースは
■□参照3■□■□■□■□■□■□■□■□■□
#!perl
#DBIモジュールを使用する
use DBI;
my($dns) = "DBI:mysql:webdatabase:localhost";
my($username) = "root";
my($password) = "654321";
#データベースへアクセスする値
my($dbh, $sth);
#データベースから得た情報を格納する値
my(@ary);
#データベースへアクセスする
$dbh = DBI -> connect ($dns, $username, $password)
or &Error("データベースにアクセスできません1");
#データベースへMysqlコマンドを送る準備をする-------------------------------
$sth = $dbh->prepare("SELECT * FROM mytable");
#準備したコマンドを実行する
$sth -> execute()
or &Error("MySQLを実行できません。2");
#実行したコマンドから取り出した情報を表示する
print<<"__start_html";
Content-type: text/html\; charset=shift_jis
<PRE>
__start_html
while (@ary = $sth -> fetchrow_array())
{
print join ("\t", @ary), "\n";
}
print "</PRE>\n";
#コマンドの実行を終了する
$sth -> finish();
$dbh -> disconnect();
exit;
#エラー部分のsubメニュー------------------------------------------------------
sub Error
{
print<<"__html";
Content-type: text/html\; charset=shift_jis
$_[0]
__html
exit;
}
■□■□■□■□■□■□■□■□■□■□■□
となっています。
どこか原因なのか参考書を読み漁りましたがわかりませんでした。
どうか教えていただけないでしょうか
それとデータベースは入っています。