in reply to Re^3: help on this code below
in thread help on this code below

i am able to print the value of $puser in the browser but i am not able to save any file with the value of $puser means lets say after doing $puser = $query->param("pusr"); if $puser value is "JANKPA" then if i use print $puser the browser is able to display the value as JANKPA, but when i do  rename("SOMEFILE.txt",$puser"); the file is not getting renamed to JANKPA

Replies are listed 'Best First'.
Re^5: help on this code below
by choroba (Cardinal) on Oct 28, 2011 at 13:33 UTC
    Do you at least check for the return value of rename? Have you studied its documentation?
Re^5: help on this code below
by aaron_baugher (Curate) on Oct 28, 2011 at 18:13 UTC

    It might help if you stop moving the goalposts. First you're having trouble opening a file, now you're trying to rename one. One problem at a time. We still haven't seen the code that opens the file, but make sure it checks for errors, something like this

    my $puserfile = "$SAVE_DIRECTORY/$puser"; open my $puserfn, '>', $puserfile or die "Cannot open $puserfile for w +riting: $!";

    That will try to open the file, and on failure report the filename and the reason to the error log. If you don't have easy access to the error log, change 'die' to 'print' to at least see it in your browser, or look at CGI.pm's ability to report all errors to the browser.

    Debugging isn't that complicated, but you have to think through what's happening. Like I said before, check what errors are being generated, and make sure your code checks for them. If your code is supposed to create a file and it's not happening, error-check that part of the code. Don't just try something different. Make sure the filename it's trying to open is okay -- the full filename; don't assume any part of it is what you think it is. If it's a relative pathname, check the cwd at that point to make sure that's correct too. Check everything, and use error checking. Let Perl tell you what the problem is.