If you want to delete a song based on the filename, one way of doing it is to go through the songs comparing the filename to the list to delete:
# i renamed %test to %songs for sanity's sake for my $song_title (keys %songs) { my $song_file = $songs{$song_title}; if (grep $_ eq $song_file, @{$q->param('files')) { delete $song{$song_title}; unlink $song_file; } }
You say you also tried my %test = (@song_titles, @song_files); which just strings the two lists together but because a hash takes pairs of elements you found that the pairings were incorrect. This can be resolved with my initial example (see above post) of @songs{@song_titles} = @song_files;.

The thing with hashes is that the keys are all unique so to me it would make more sense if you used the filename (including path) as the key and the title (which there may be more than one instance of) as the value - this also removes your need to iterate through the songs to find the one to delete. Just an idea to make it work for you instead of the other way around.

Hope this helps,

   larryk                                          
perl -le "s,,reverse killer,e,y,rifle,lycra,,print"
Will code for food - looking for work - London - CV

In reply to Re: Re: Re: Re: Re: Adding and Deleting Upload File name and File by larryk
in thread Adding and Deleting Upload File name and File by lex2001

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.