[EMAIL PROTECTED]

I am working on learning Apache::ASP and came across some issues with
the "MyBookmarks" example as shown on
http://www.apache-asp.org/articles/perlmonth2_build.html:

1.  I received the following warning in my Apache error log on every
    hit:

[Thu Feb 12 00:25:22 2004] [error] [asp] [12691] [debug] $Response->Expi
res() deprecated.  Please access member directly with $Response->{Expire
s} notation

    The solution was to modify global.asa as follows:

<CVSENV>[EMAIL PROTECTED]:~/public_html/apache.asp$ cvs -q diff -r 1.1 glo
bal.asa
Index: global.asa
===================================================================
RCS file: /cvs/dpchrist/apache.asp/global.asa,v
retrieving revision 1.1
retrieving revision 1.2
diff -r1.1 -r1.2
42c42
<     $Response->Expires(0);
---
>     $Response->{Expires} = 0;

2.  My table of links was showing up empty on the bookmarks.asp page.

    The problem was that the column names in the @bookmarks array of
    hashrefs were uppercase, but the table generation code was using
    lower case keys.

    Here is the CSV file:

<CVSENV>[EMAIL PROTECTED]:~# cat /tmp/asp_apps_bookmarks/bookmarks
BOOKMARK_ID,USERNAME,TITLE,URL
1,dpchristholgerdanskecom,"Holger Danske home page",www.holgerdanske.com
2,dpchristholgerdanskecom,Yahoo,www.yahoo.com
3,dpchristholgerdanskecom,Google,www.google.com

    Note that the column names are upper case, even though the table
    creation query in global.asa specifies lower case.  I assume this is
    a DBI and/or DBD::CSV issue.

    My work-around was to modify bookmarks.asp as follows:

<CVSENV>[EMAIL PROTECTED]:~/public_html/apache.asp$ cvs -q diff -r 1.1 boo
kmarks.asp
Index: bookmarks.asp
===================================================================
RCS file: /cvs/dpchrist/apache.asp/bookmarks.asp,v
retrieving revision 1.1
diff -r1.1 bookmarks.asp
130,132c130,132
<                       my $text = $data->{bookmark_id} ?
<                               "<a href=$data->{'url'}
<                                       >$data->{'title'}</a>"
---
>                       my $text = $data->{BOOKMARK_ID} ?
>                               "<a href=$data->{'URL'}
>                                       >$data->{'TITLE'}</a>"
136c136
<                       <% if($data->{bookmark_id}) { %>
---
>                       <% if($data->{BOOKMARK_ID}) { %>
139c139
<                               "$Basename?delete=$data->{bookmark_id}"
---
>                               "$Basename?delete=$data->{BOOKMARK_ID}"

3.  I don't know how to cleanly get the version numbers of installed
    Perl modules:

<CVSENV>[EMAIL PROTECTED]:~# perl -e "use warnings; use DBD::CSV; print ${DBD:
:CSV::VERSION}"
Use of uninitialized value in print at -e line 1.

    Here is my work-around:

<CVSENV>[EMAIL PROTECTED]:~# grep '^$VERSION ='
/usr/local/share/perl/5.6.1/Apache/ASP.pm
$VERSION = 2.57;

<CVSENV>[EMAIL PROTECTED]:~# grep 'VERSION =' /usr/lib/perl5/DBI.pm
$DBI::VERSION = 1.21; # ==> ALSO update the version in the pod text belo
w!

<CVSENV>[EMAIL PROTECTED]:~# grep 'VERSION =' /usr/local/share/perl/5.6.1/DBD/
CSV.pm
$VERSION = '0.2002';


Clarifications would be appreciated.


TIA,

David


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to