yes i've looked around but i still don't understand much, i wrote this up and I don't understand why it doesn't work. No matter what $func is, it only runs the first if-statement. Maybe give me an example of how to do this without if/thens or point out my dumb mistake :)
#!/usr/bin/perl
use CGI;
$query = new CGI;
$func = $query->param("func");
$file = $query->param("file");
@text = $query->param("text");
print $query->header ( );
if ($func == "vi")
{
if (-1 != index($file, '.'))
{
open (FILE, ">/home/3dwccom/www/$file") ||
die "file must have .extension";
print FILE @text;
close (FILE);
print "File created successfully!";
}
else
{
die "name must have a . in it.";
}
}
elsif ($func == "edit")
{
open (PAGE, ">../$file") ||
die print "couldn't open file";
print PAGE @text;
close (PAGE);
print "File successfully edited";
}
elsif ($func == "rm")
{
`rm /home/3dwccom/www/$file` ||
die "couldn't remove file";
print "Success";
}
else {
print "there was an error";
}
Multiple forms submit to this so I'd like to keep only the listed variable, not different ones for each part.