LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1471|回复: 3

初学,modules问题 +perl CGI调试

[复制链接]
发表于 2004-4-27 14:33:08 | 显示全部楼层 |阅读模式
2、我的一段程序,
use CGI;
my $req = new CGI;
...
报错:global symbal "$req" requires explicit packagename at line ...

查过了CGI 在 @INC中的,啥问题?

3、调试时促错都是500,能不能出错直接在浏览器上看,调试完了再关闭?
发表于 2004-4-27 17:24:05 | 显示全部楼层
use CGI::Carp "fatalsToBrowser";  #显示错误信息到浏览器
use diagnostics;   #显示详细的错误信息
#=================================================
用CGI.pm的时候是不用new 的
  # CGI script that creates a fill-out form
  # and echoes back its values.  use CGI qw/:standard/;
  print header,
        start_html('A Simple Example'),
        h1('A Simple Example'),
        start_form,
        "What's your name? ",textfield('name'),p,
        "What's the combination?", p,
        checkbox_group(-name=>'words',
                       -values=>['eenie','meenie','minie','moe'],
                       -defaults=>['eenie','minie']), p,
        "What's your favorite color? ",
        popup_menu(-name=>'color',
                   -values=>['red','green','blue','chartreuse']),p,
        submit,
        end_form,
        hr;   if (param()) {
       print "Your name is",em(param('name')),p,
             "The keywords are: ",em(join(", ",param('words'))),p,
             "Your favorite color is ",em(param('color')),
             hr;
   }

只有一些需要,比如Cookie
   use CGI qw/:standard/;
    use CGI::Cookie;    # Create new cookies and send them
    $cookie1 = new CGI::Cookie(-name=>'ID',-value=>123456);
    $cookie2 = new CGI::Cookie(-name=>'preferences',
                               -value=>{ font => Helvetica,
                                         size => 12 }
                               );
    print header(-cookie=>[$cookie1,$cookie2]);    # fetch existing cookies
    %cookies = fetch CGI::Cookie;
    $id = $cookies{'ID'}->value;    # create cookies returned from an external source
    %cookies = parse CGI::Cookie($ENV{COOKIE});
 楼主| 发表于 2004-5-5 10:24:43 | 显示全部楼层
谢拉,还有如何知道现在系统已经安装了哪些modules?
cpan> 模式下好像只能安装,不见得一个个路径自己去看?

另外,公司的站点用虚拟服务器的,模块不是自己装的,session最常用的是哪个模块?一般虚拟提供商会提供哪些?
发表于 2004-5-7 12:56:48 | 显示全部楼层

最简单的检查已经安装的模块的方法

最简单的检查已经安装的模块的方法
print join('\n',@INC);

很多默认安装都不带session模块的,所以我建议你自己写一个,或者下载现成的模块(比如:CGI-Session,Apache-Session)放到自己的目录,然后使用use lib 指令,添加库的路径就行了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表