Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> proszę o pomoc w zapytaniu mysql, zapytanie do MySQL połączenie dwóch tabel i wyjęcie tablicy
konfeusz
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 26.09.2009

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


Witam serdecznie.

Mam dosyć nurtujący mnie problem nad którym siedzę już 3 dzień i jakoś nic sensownego nie przychodzi mi do głowy.
(niestety magikiem jeszcze nie jestem, więc zwracam się do Was o pomoc)

Sprawa wygląda tak: potrzebuję stworzyć przycisk do przechodzenia na kolejne podstrony (chronologicznie), problem w tym, ze kolejność stron wyświetlane są wg wzorca podanego w bazie danych, natomiast ich (stron) nr ID nie zawsze są wpisane po kolei. Następny problem to taki, że mam jedynie dostęp w kodzie php do nr ID strony, natomiast model wyświetlania dla stron jest jeden z dwóch (quiz lub page).

Zeby bylo bardziej zrozumiale przedstawię tabele.

A. tabela 'modules' posiada takie pola:
1. 'id' - id strony
2. course - numer kursu i tu zawsze będzie stała (8)
3. module - tu jest numer modułu modelu wyświetlania strony (quiz=13), (page=12) to jest potrzebne do budowania odpowiednich linków.

Stworzyłem zapytanie do bazy i wyjąłem co mi potrzeba, a wygląda to tak:

  1. $idd=$_GET['id']; //jedyne co mogę wyjąć z kodu, to nr id strony
  2. $idd2=++$idd;
  3. //połączenie z bazą
  4. mysql_connect('localhost', 'modin', 'pass');
  5. mysql_select_db('modin');
  6. $wynik = mysql_query("SELECT id,module FROM modules WHERE id= '$idd2'")
  7. or die('Błąd zapytania');
  8. mysql_query("SET NAMES 'UTF8'");
  9. $zawod=mysql_fetch_array($wynik);
  10. $modul=$zawod['1'];
  11. if($modul==13){
  12. echo "<a href=\"http://strona.pl/elearning/mod/quiz/view.php?id=".$idd2."\">następny quiz</a><br><br>";
  13. } elseif ($modul==12){
  14. echo "<a href=\"http://strona.pl/elearning/mod/page/view.php?id=".$idd2."\">następny quiz</a><br><br>";
  15. } else {
  16. echo "błąd";}


i tu jest wszystko fajnie, ale okazuje się, że nr id strony nie zawsze są po kolei np od 1 do 100, ale są pomieszane i czasami zaraz za 2 jest 30 lub podobnie.
Znalazłem drugą tabelkę, która odpowiada właśnie za kolejność wyświetlanych stron, a wygląda ona tak:

B. tabela 'sections' posiada takie pola:
1. 'id' - własne id
2. 'course' - numer kursu i tu ma wybierać tylko 8
3. 'section' - nr sekcji od 1-24
4. 'sequence' - i tu podane są po kolei numery id stron które mają być wyświetlane.

i teraz obrazowo, w sekcji nr 1 jest 5 stron wyswietlanych po kolei (183,184,185,186,187), natomiast juz w sekcji 4 kolejność jest taka (199,200,202,201)

Na mój rozum, należało by stworzyć zapytanie które wyjmowało by numery sekcji od 1-24, stworzyło tablicę gdzie wkładało by po kolei nr id stron z pola 'sequence' z poszczególnych 'section', tylko dla 'course==8', tak żeby tablica zawierała po kolei nr id stron, później sprawdzała obecny id stron i budowała link tak jak powyżej z uwzględnieniem nr modułu.

Wiem jak zadać takie pytanie co przedstawiłem powyżej, ale nie mam pojęcia jak napisać to w php. Jakoś nie mogę się skupić a mam naglący termin by to stworzyć.
Bardzo proszę o pomoc.

Pozdrawiam, Bartek.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 21.08.2025 - 14:01