Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobieranie wartosci dla danego uzytkownika i wstawianie do bazy danych
arfer
post
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 23.04.2012

Ostrzeżenie: (0%)
-----


Witam

Mam w bazie danych 3 tabele:
- uzytkownicy zawierajacą id uzytkownikow i odpowiednie dla nich imiona
- zespoly zawierającą id zespolów i odpowednie dla nich nazwy
- wyniki zawierajace kolumne do wpisania id uzytkownika id zespolu i jakiegos wyniku

Do tabeli wyniki wpisuje id wybranego uzytkownika oraz id zespolu dla ktorego jest w danym momencie przypisany i jakis wynik. Na tej podstawie tworzonych jest kilkaset wynikow z ktorych potem w wybrany przez siebie sposob moge tworzyc konkretne zestawienia np jacy uzytkownicy byli w jakich zespolach itd. Jeden uzytkownik w danym momencie moze byc tylko w jednym zespole ale z czasem moze go zmienic dlatego nie moge przypisac mu stalego id zespolu w tabeli uzytkownicy bo czasem on sie zmienia dlatego kazdorazowo przy wpisywaniu wynikow oprocz id uzytkownika podaje takze id zespolu. Problem jest taki ze uzytkownicy bardzo rzadko zmieniaja zespoly w konsekwencji za kazdym razem przy wpisywaniu wynikow musze przypisywac kazdemu uzytkownikowi ten zespol co przy duzej liczbie wynikow jest meczace. Chcialbym to zatem lekko zmodyfikowac aby dodajac wyniki do bazy automatycznie przypisywany byl ustalony dla danego uzytkownika jego zespol. Jedyna mozliwoscia ktora widze jest stworzenie nowej kolumny w tabeli uzytkownicy z wartoscia id zespolu. Dodajac nowego uzytkownika wpisywalbym mu na stale id zespolu i on automatycznie bylby wstawiany do bazy razem z uzytkownikiem. Jesli zespol zmienilby sie wtedy edytowalbym tego uzytkownika zmieniajac mu id zespolu i przy wpisywaniu kolejnych wynikow do bazy trafialoby juz nowe id zespolu. Czy ktos moglby mi pomoc w sformulowaniu zapytania ktore by pobieralo id zespolu danego uzytkownika ktoremu wpisuje wynik i wstawialo do bazy danych wyniki?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
bostaf
post
Post #2





Grupa: Zarejestrowani
Postów: 374
Pomógł: 79
Dołączył: 6.04.2010
Skąd: Ostrów Wielkopolski

Ostrzeżenie: (0%)
-----


  1. SET @id_usera = 1; -- tak zrobię, ale czy to zrobisz zmienną PHP czy inaczej to nie ma znaczenia
  2. SET @wynik = 123; -- to też znamy - wpisuje się w formularzu wprowadzania danych
  3. INSERT INTO wyniki (id_uzytkownika, id_zespolu, wynik)
  4. VALUES (
  5. @id_usera,
  6. (SELECT id_zespolu FROM uzytkownicy WHERE id_uzytkownika = @id_usera),
  7. @wynik
  8. );

Sztuczka polega na tym, że INSERTując możesz pobierać dane z innych tabel.
Go to the top of the page
+Quote Post
mmmmmmm
post
Post #3





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

Ostrzeżenie: (0%)
-----


  1. INSERT INTO wyniki (id_uzytkownika, id_zespolu, wynik)
  2. SELECT @id_usera, id_zespolu, @wynik FROM uzytkownicy WHERE id_uzytkownika = @id_usera;
Go to the top of the page
+Quote Post
bostaf
post
Post #4





Grupa: Zarejestrowani
Postów: 374
Pomógł: 79
Dołączył: 6.04.2010
Skąd: Ostrów Wielkopolski

Ostrzeżenie: (0%)
-----


Cytat(mmmmmmm @ 9.10.2012, 23:45:21 ) *
  1. INSERT INTO wyniki (id_uzytkownika, id_zespolu, wynik)
  2. SELECT @id_usera, id_zespolu, @wynik FROM uzytkownicy WHERE id_uzytkownika = @id_usera;

Taaaaa... jak popatrzyłem na swoja propozycję wyżej to pomyślałem "co za osiołek to napisał".
Go to the top of the page
+Quote Post

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: 15.09.2025 - 04:10