Я пытался создать сайт с использованием Perl Dancer, ниже мой код.Это кажется правильным, но страница продолжает загружаться и никогда не вводит значения в базу данных.Когда я отменяю страницу, я получаю сообщение об ошибке "request to POST /appform crashed: Can't call method "execute" on an undefined value
".Я не могу понять, что не так в коде.Если у вас есть другой код, пожалуйста, укажите.Я использую SQLite для базы данных.Есть база данных campus.db
, и я вставляю значение в таблицу student
.
post '/appform' => sub {
my $q = CGI ->new;
my $name = $q->param ("firstname");
my $password = $q->param("password");
my $mobile_no = $q->param("mobile");
my $gender = $q->param("gender");
my $email = $q->param("email");
my $address = $q->param("address");
my $sslc = $q->param("SSLC");
my $hsc = $q->param("HSC");
my $cgpa = $q->param("cgpa");
my $languages = $q->param("lang");
my $internships = $q->param("intern");
my $preferred_loc = $q->param("country");
my $sql = "insert into student(name,mobile_no,gender,email,address,sslc,hsc,cgpa,languages,internships,preferred_loc,password,applied_job,company_applied) values ('?','?','?','?','?','?','?','?','?','?','?','?','?','?');";
my $sth = database->prepare($sql);
$sth->execute($name,$mobile_no,$gender,$email,$address,$sslc,$hsc,$cgpa,$languages,$internships,$preferred_loc,$password) or die $sth->errstr;
#$sth->execute();
$sth-> finish;
set_flash('New entry posted!');
redirect '/';
};