Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP+MySQL] Numer klienta/zamówienia
Red22
post
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.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Red22
post
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
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 11:16