Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kilka warunków według danych z bazy danych POMOCY !
Forum PHP.pl > Forum > PHP
kedi1989
Witam serdecznie exclamation.gif



MAM TAKI KOD:


  1. if (isset($_POST['ok']))
  2. {
  3.  
  4. $wybrana_grupa = $_POST['grupa'];
  5. $wybrany_kurs = $_POST['kurs'];
  6.  
  7. if(empty($wybrana_grupa) || empty($wybrany_kurs))
  8. {
  9.  
  10. echo "Musisz wybrac ktoras grupe lub kurs";
  11.  
  12. }
  13.  
  14. else
  15.  
  16. {
  17. $indeks = $_SESSION['indeks'];
  18.  
  19. $sprawdzenie1 = mysql_query("SELECT * FROM przynaleznosc WHERE kurs='$wybrany_kurs' ");
  20. $sprawdzenie2 = mysql_query("SELECT * FROM przynaleznosc WHERE grupa='$wybrana_grupa' ");
  21.  
  22.  
  23. if((mysql_num_rows($sprawdzenie1)!=0) & (mysql_num_rows($sprawdzenie2)!=0)) echo 'Już nalezysz do tej grupy i kursu!';
  24.  
  25. else
  26. {
  27.  
  28. $query = "INSERT INTO `przynaleznosc` (`indeks`, `grupa`, `kurs` ) VALUES ('$indeks', '$wybrana_grupa', '$wybrany_kurs' )";
  29.  
  30.  
  31. if(mysql_query($query)) echo 'Poprawnie dolaczyles do grupy i kursu';
  32.  
  33.  
  34. }





ORAZ TABELE z danymi w której są ID, INDEKS, GRUPA , KURS



Chciałbym aby osoba po wybraniu grupy i kursu mogła do nich dołączyć. Wszystko jest ok o ile dołącza tylko jeden użytkownik np. o indeksie 00000;

Kiedy inny uzytkownik o indeksie 11111 proboje dolaczyc do grupy i kursu w ktorym jest uzytkownik o indeksie 00000, walidacja nie przepuszcza mnie dalej.

Jak i jaki warunek stworzyć na podstawie INDEKSU, GRUPY i KURSU z bazy danych, aby grupy i kursy nie mogly sie powtórzyć u tego samego użytkownika ale żeby kolejny użytkownik mógł również je dodać będąć już na swoim koncie.

Stosunkowo proste.... Ale nie moge nic wymyślić . Wiem że to pierdoła i dlatego coraz bardziej się irytuje, ciemność mam dziś w głowie....

Czy ktoś może mi podpowiedzieć ?


dzastin
Jeżeli dobrze zrozumiałem z tej nieco chaotycznej wypowiedzi, to najlepiej zrób jedno zapytanie, a nie dwa
  1. SELECT * FROM przynaleznosc WHERE kurs='wybrany_kurs' AND grupa='wybrana_grupa'


Poza tym budując zapytania na podstawie bezpośredniej konkatenacji z wartościami z tablicy $_POST prosisz się o sql injection.
kedi1989
Ilość zapytań mi tu nic nie daje....

Musze sprawdzić takie warunki z tabeli.

np. Czy uzytkownik o indeksie XX jest w grupie X i kursie Y - jeżeli już jest w tej grupie i tym kursie to nie może do niego ponownie dołączyć.

Sprawdzam ten warunek lecz kiedy przeloguje się na użytkownika o indeksie YY to nie mogę dołączyć do grupy X i grupy Y bo użytkownik o indeksie XX już tam jest rozumiesz?


Nie wiem jaki warunek skonstruować na podstawie danych z bazy aby każdy z użytkowników mógł dołączać do tych samych grup i kursów.

O to mi się rozchodzi....

Jednak udało się ... Widzicie to że jestem amatorem sprawia czasami że na głupocie się siedzi... 3 godziny nad tym siedziałem a to takie proste....

Skonstruowałem jedno zapytanie sugerując się kolegą powyżej. Tylko że zrobiłem tak :
  1. SELECT indeks FROM przynaleznosc WHERE kurs='$wybrany_kurs' AND grupa='$wybrana_grupa' AND indeks='$indeks'


I w tym momencie jeżeli znajdzie gostka który już ma dana grupę i kurs to zwraca mi wyniki i IF'em prowadzę sobie to już dalej smile.gif



To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.