David, I will look it up to be accurate. Give me a bit of time. Kristofer --- Greenhalgh David <[EMAIL PROTECTED]> wrote: > Kristofer, > > Thank you. > > It was a big mistake to forget the method. > > I think I still have problems with catching when to > use $ or %. I don't > fully understand this section of the code: > > > my $hash = {}; > > > > while (my $rows = $response->fetchrow_hashref){ > > $hash->{$rows->{task_ID}} = $rows; > > } > > Why is hash declared as my $hash and not my %hash? > and how does the > final line result in a hash? > > I am sorry, these are basic questions but I haven't > got the hang of the > logic yet. > > Dave > > > On Thursday, June 5, 2003, at 07:25 pm, Kristofer > Hoch wrote: > > > David, > > You don't have a response set at execute. You > have > > a reference to a responce set. You need to use > DBI > > methods to access the results. Try this... > > > > ============================ > > $response->execute(); > > my $hash = {}; > > > > while (my $rows = $response->fetchrow_hashref){ > > $hash->{$rows->{task_ID}} = $rows; > > } > > > > $response->finish(); > > > > use Data::Dumper; > > print Dumper $response; > > ============================ > > --- Greenhalgh David > <[EMAIL PROTECTED]> > > wrote: > >> Hi all, > >> > >> I have a script which mostly works, but when I > get > >> to the part with > >> hashes, it stops. I'm obviously doing something > very > >> basically wrong, > >> but I can't see what. (been staring at so long it > >> could be anything.) A > >> segment of the code is below: > >> > >> #!/usr/local/perl -wT > >> use strict; > >> use CGI; > >> > >> # Do some stuff to identify the value of $marker > >> which will be a number > >> > >> # Do MySQL query to grab the data to be > manipulated > >> > >> my $dbh=connect(DBI:mysql:database, "user", > >> "password"); > >> my $query=("SELECT task_ID, priority FROM > task_list > >> WHERE priority > >>> $marker"); > >> my $reponse->prepare($query); > >> $response->execute; > >> > >> # $ response should now contain a > >> # reference to a hash filled with task_ID, > priority > >> pairs > >> # Dereference $response > >> > >> my %hash=%($response); > >> $response->finish; > >> > >> # Subtract 1 from each value in the hash > >> my ($key, $priority, %newhash); > >> > >> foreach $key (keys(%hash)){ > >> my $priority=$hash{$key}--; > >> %newhash=($key, $priority); > >> } > >> > >> # Put the new $priority values into the MySQL > table > >> > >> $query=("UPDATE task_list SET priority=? WHERE > >> task_ID=?"); > >> $response->prepare($query); > >> > >> foreach $key (keys{%newhash}){ > >> $priority=$newhash{$key}; > >> $response->execute($priority, $key); > >> } > >> > >> $response->finish; > >> > >> # Test the result > >> > >> print "Content-Type: text/html\n\n"; > >> > >> $query=("SELECT" task_ID, priority FROM > task_list"); > >> $response->prepare($query); > >> $response->execute; > >> > >> while($key, $priority){ > >> print "Priority: $priority Task Ident: > >> $key<br>\n\n"; > >> } > >> > >> > >> Would someone be patient enough to point out the > >> mistake? > >> > >> Thanks > >> > >> Dave > >> > >> > >> -- > >> To unsubscribe, e-mail: > >> [EMAIL PROTECTED] > >> For additional commands, e-mail: > >> [EMAIL PROTECTED] > >> > > > > > > ===== > > -----BEGIN GEEK CODE BLOCK----- > > Version: 3.12 > > GIT d s+:++ a C++ UL++ US+ P+++ L++ > > W+++ w PS PE t++ b+ G e r+++ z++++ > > ------END GEEK CODE BLOCK------ > > > > __________________________________ > > Do you Yahoo!? > > Yahoo! Calendar - Free online calendar with sync > to Outlook(TM). > > http://calendar.yahoo.com > > > > > -- > To unsubscribe, e-mail: > [EMAIL PROTECTED] > For additional commands, e-mail: > [EMAIL PROTECTED] >
===== -----BEGIN GEEK CODE BLOCK----- Version: 3.12 GIT d s+:++ a C++ UL++ US+ P+++ L++ W+++ w PS PE t++ b+ G e r+++ z++++ ------END GEEK CODE BLOCK------ __________________________________ Do you Yahoo!? Yahoo! Calendar - Free online calendar with sync to Outlook(TM). http://calendar.yahoo.com -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]