Wpis z mikrobloga

#php #mysql #kiciochpyta #informatyka #pomoc ##!$%@?

Poszukuję magika, który powie mi, czy da się zrobić zapytanie, dzięki któremu pobiorę wartość powiązaną w taki sposób:

3 tabele. [U]czniowie, [K]lasa, [N]auczyciel

Powiązane w taki sposób, że:

U. idklasy => [K].idwychowawcy => [N] stąd pobieram Nazwisko.

Jestem mega głupi, dopiero się uczę, potrzebuję podpowiedzi :)
  • 37
  • Odpowiedz
@Wiceps: Więc tak (rozpiszę się trochę)

Robię dziennik ucznia, po zalogowaniu chcę dla sesji pobrać pewne wartości, które wypiszę.

Tabele takie jak napisałem wyżej: [U]czniowie, [K]lasa, [N]auczyciel

kolumny: [U]: ID; nazwa; password; IDklasy

[K]: ID; rok; grupa; ID
wychowawcy

[N]: ID; Nazwa; Password

Chcę mając ID ucznia uzyskać Nazwę jego wychowawcy.
  • Odpowiedz
@relik39: po zastosowaniu: $SESSION['nazwaklasa']=mysqlquery("SELECT Nazwa FROM nauczyciele, klasa WHERE IDwychowawcy = (SELECT IDwychowawcy FROM klasa INNER JOIN uczniowie ON ID = IDklasy)");

nic mi nie pobiera :( #jakzyc ?

ehh... dlaczego jestem taki głupi z informatyki :D I dlaczego muszę się tego uczyć będąc na Metalurgii ? :|
  • Odpowiedz
@relik39: dobra podpowiedź z tym myadmin ;) co to jest mysqlfetchrow? Problem polega na tym, że najpierw kazano nam wybrać tematy i prowadząca ma w dupie czy my umiemy zrobić projekty czy nie. Z informatyką ja mam tyle wspólnego co nic :|
  • Odpowiedz
@cryan: Działa w ogóle ta kwerenda w myadmin?

No a z tym fetchrow to w skrócie wygląda tak, że jak masz zapytanie SQL to nie możesz tak od razu jego wyniku przypisać do zmiennej PHP tylko musisz to zrobić poprzez tablice fetchrow (albo fetchassoc lub fetcharray), np.

$zapytanie = mysql_query(SELECT * FROM users)

$wynikzapytania = mysqlfetch_row($zapytanie)

Tutaj masz troche wiecej na ten temat.
  • Odpowiedz
@relik39: szczerze mówiąc - to w myadmin - musiałbym ogarnąć więcej rzeczy, bo jak w konsolę wklepię samą kwerendę, to mi nic nie wyskakuje poza błędem (łączenie z bazą etc.). W kodzie jest mi szybciej. Ja to robię tak, że najpierw w pliku login.php pobieram sobie wszystko w taki sposób:

$SESSION['id'] = $row['id'];

$
SESSION['nick'] = $row['nick'];

$SESSION['datarejestracji'] = $row['datarejestracji'];

$
SESSION['Kontakt']=$row['Kontakt'];

$_SESSION['ID_klasa']=$row['ID_klasa'];
potem w innym index2.php
  • Odpowiedz
@relik39: w sumie jestem debil, bo kod od góry wygląda tak:

(..)

else

{

// dodajemy wynik zapytania do tablicy

$row = mysqlfetcharray($result);

// ustawianie sesji ࠥ u࠹tkownik jest zalogowany

$_SESSION['logged'] = true;

// dodawanie do sesji id u࠹tkownika, login oraz datꡲejestracji

$_SESSION['id'] = $row['id'];

$_SESSION['nick'] = $row['nick'];

$_SESSION['data_rejestracji'] = $row['data_rejestracji'];

$_SESSION['Kontakt']=$row['Kontakt'];

$_SESSION['ID_klasa']=$row['ID_klasa'];

}

Więc ja cały czas chyba zapisuję do tej #!$%@? tablicy :D
  • Odpowiedz
@relik39: no ale to tak czy siak nie ułatwia mi nic.

$SESSION['nazwaklasy']="SELECT Nazwa FROM klasa WHERE ID =ID_klasa";

nic mi nie zwraca :/
  • Odpowiedz