![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 12.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Mam pewien problem: piszę na zaliczenie przedmiotu stronę w PHP korzystającą z baz danych. Strona jest dosyć prosta i jedyny problem jaki mam jest następujący - klient loguje się, wchodzi i chce kupić coś. Tranzakcja jest zapisywana w tabeli. Tabele ułożyłem następująco:
Users (id, nazwa, haslo) Ksiazki (id,autor,tytul) Zamowienia(id,idksiazki,iduser) I problem jest następujący: nie wiem jak z zapytania np. $query = "SELECT Id FROM users WHERE Nazwa='$user' "; $query .= "AND Haslo='$pass'"; wyciągnąć to Id użytkownika, by później móc wpisać je do tabeli ZAMOWIENIA. Id książki już zrobiłem i działa. Ale by wszystko działało i pokazywało jaki klient co zamówił, potrzebny mi sposób zapisywania ID zalogowanej osoby do innej tabeli w bazie... I na tym utknąłem. Wszelkie pomysły (nawet innego rozwiązania tego ) mile widziane. Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 12.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
W pliku do logowania nie było session start. Dałem i coś ruszyło ale dalej nie przekazuje mi do funkcji tego :/. Oto funkcja:
Kod function zamowienie($id) { if (!$db_lnk = mysql_connect("localhost", "st073", "Qg3t5f9N")){ //echo('Bł±d z poł±czeniem'); return SERVER_ERROR; } if(!mysql_select_db('st073')){ //echo('Bł±d bazy danych'); @mysql_close(); return SERVER_ERROR; } if(!session_is_registered("id")) { $userid = $_SESSION['id']; } $query = "INSERT INTO zamowienia (ksiazkaid,userid)VALUES('$id','$userid')"; if(!$result = mysql_query($query)){ //echo("Odrzucone zapytanie: $query"); return false; } } z tym, że $id jest przekazywane z innej funkcji (w tym pliku) i jest to ID książki - to działa poprawnie. W pliku głównym wywołanie to Kod if($_GET['action'] == 'zamowienie'){ if(isSet($_GET['id']) && isSet($_SESSION['Id'])){ include "funkcje.php"; zamowienie($_GET['id'] && isSet($_SESSION['Id'])); } I tu w ogóle nawet nie dodaje nic do bazy. Bez SESSION dodaje ale bez userid :/. Tzn inaczej: on DODAJE ale wartość 0. Czyli tak jakby źle czytał ID użytkownika z tabeli. Ale logowanie jest w porządku. On wciąż nie przekazuje numer ID z bazy logującego się użytkownika do zmiennej. Dlatego ta zmienna jest ciągle pusta. Ten post edytował Red22 13.01.2008, 16:01:53 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 11:16 |