Witam, na zaliczenie przedmiotu mam za implementować wypożyczalnie filmów dvd. Już mam prawie z kończoną, ale jest pewien problem gdyż nie mogę umieścić zamówienia w bazie danych. Mam już napisaną funkcje ale coś jest z nią nie tak. Zalogowany użytkownik może akceptowac swoje zamówienie i jest wywoływana funkcja "umiesc_zamowienie". Dane klienta mają być pobierane z sessi po jego id. i wydaje mi sie ze w tym tkwi problem. Proszę o pomoc!
function umiesc_zamowienie($szczegoly_zamowienia)
{
$lacz = lacz_bd();
$lacz->autocommit(FALSE);
if (isset($_SESSION['SESS_MEMBER_ID']) and
isset($_SESSION['LOGINQ'])) {
$sesid=$_SESSION['SESS_MEMBER_ID'];
print "Jestes zalogowany <br>"; }
else
{
print "Nie jestes zalogowany"; }
$zapytanie = "insert into wypozyczenie values ('', ".$_SESSION['SESS_MEMBER_ID'].", ".$_SESSION['calkowita_wartosc'].", '$data', 'CZESCIOWE''')";
$wynik = $lacz->query($zapytanie);
if (!$wynik)
return false;
$id_klient=$_SESSION['SESS_MEMBER_ID'];
$zapytanie = "select id_wypozyczenie from wypozyczenie where
id_klient = $id_klient and
wartosc > ".$_SESSION['calkowita_wartosc']."-.001 and
wartosc < ".$_SESSION['calkowita_wartosc']."+.001 and
data = '$data' and
stan_zam = 'CZESCIOWE'";
$wynik = $lacz->query($zapytanie);
if($wynik->num_rows>0)
{
$wypozyczenie = $wynik->fetch_object();
$idwyp = $wypozyczenie->id_wypozyczenie;
}
else
return false;
foreach($_SESSION['koszyk'] as $id_film => $ilosc)
{
$dane=pobierz_dane_film($id_film);
$zapytanie = "delete from produkty_wypozyczenie where
id_wypozyczenie = '$idwyp' and id_film = '$id_film'";
$wynik = $lacz->query($zapytanie);
$zapytanie = "insert into produkty_wypozyczenie values
('$idwyp', '$id_film', ".$dane['cena'].", $ilosc)";
$wynik = $lacz->query($zapytanie);
if(!$wynik)
return false;
}
$lacz->commit();
$lacz->autocommit(TRUE);
return $idwyp;
}
Struktura tabeli klient
CREATE TABLE IF NOT EXISTS `klient` (
`id_klient` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`login` varchar(50) NOT NULL,
`haslo` varchar(50) NOT NULL,
`email` varchar(50) NOT NULL,
`imie` varchar(50) NOT NULL,
`nazwisko` varchar(50) NOT NULL,
`adres` varchar(50) NOT NULL,
`kod_pocztowy` varchar(5) NOT NULL,
`miejscowosc` varchar(50) NOT NULL,
`telefon` varchar(16) NOT NULL,
PRIMARY KEY (`id_klient`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
Struktura tabeli wypozyczenie
CREATE TABLE IF NOT EXISTS `wypozyczenie` (
`id_wypozyczenie` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`id_klient` int(11) NOT NULL,
`data` date NOT NULL,
`wartosc` float(6,2) DEFAULT NULL,
`stan_zam` char(10) DEFAULT NULL,
PRIMARY KEY (`id_wypozyczenie`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Struktura tabeli produkty
CREATE TABLE IF NOT EXISTS `produkty_wypozyczenie` (
`id_wypozyczenie` int(10) UNSIGNED NOT NULL,
`id_film` int(11) NOT NULL,
`cena` float(4,2) NOT NULL,
`ilosc` tinyint(3) UNSIGNED NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;