Biblioteka/bin/app.pl

67 lines
1.3 KiB
Perl
Executable File

#!/usr/bin/env perl
use warnings;
use strict;
use Dancer;
use DBI;
#Struktura bazy
#id, int; isbn, int; tytul, string; autor, string; owner, string; state, bool (czy pozyczona, 0=dostepna, 1=wzieta); type, bool (mozna brac ze soba? 1=tak, 0=nie)
my $dbfile = 'ksiazki.db';
my $dbh = DBI->connect("dbi:SQLite:dbname=$dbfile", "", "");
get '/' => sub
{
my $sth = $dbh->prepare("select * from ksiazki");
$sth->execute();
my @id;
my @isbn;
my @title;
my @author;
my @owner;
my @state;
my @type;
#my $result=''; #Poniewaz trzeba zwrocic string, wartosci kolejno pobierane z bazy,
#beda dodawane do zmiennej ze stringiem, na razie pustym
my $i=0;
my @result;
my $ii=0;
(@result)=@{$sth->fetchall_arrayref} or die "blad przy pobieraniu danych";
# |kolejne rekordy|kolejne pola rekordow
#return ${$result[2]}[4];
template 'a.tt',
{
'table' => \@result
}
};
get '/req/:book' => sub
{
my $id=params->{book};
my $sth;
$sth=$dbh->prepare("select type from ksiazki where id=?");
$sth->execute($id);
my $type = $sth->fetchrow_array;
if ($type == 1)
{
$sth = $dbh->prepare("update ksiazki set state=not state where id=?");
$sth->execute($id);
return 0;
}
elsif ($type == 0)
{
return 1;
}
else #Stalo sie cos dziwnego...
{
return "OMGLOLWTF";
}
};
dance;