Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: powiazanie danych w bazie XML
Forum PHP.pl > Forum > XML, AJAX > XML
machcin1
Witam. Otóż mam do zrobienia baza danych w formacie XML.
Pliki są zapisane jako .xq
baza jest dla wykladowców ktorzy moga wystawic ocene studentowi.
i chcialbym zeby po zalogowaniu sie na wlasne konto kazdy wykładowca mial wyłącznie swoj przedmiot,
a nie ze kazdy ma swoj i pozostałe.
I tu mam przykladowy kod, gdzie wykladowca jest przypisany do przedmiotu
<?xml version="1.0" encoding="utf-8"?>
<subjects_teachers>
<subject_teacher>
<teacher>patryk</teacher>
<subject>1</subject>
</subject_teacher>
<subject_teacher>
<teacher>jarosław</teacher>
<subject>2</subject>
</subject_teacher>
<subject_teacher>
<teacher>paweł</teacher>
<subject>3</subject>
</subject_teacher>
</subjects_teachers>

A tu mam plik xml z przedmiotami
<?xml version="1.0" encoding="utf-8"?>
<subjects>
<subject id ="1">
<name>Podstawy użytkowania komputerów</name>
<semestr>1</semestr>
<specialization>1</specialization>
</subject>
<subject id ="2">
<name>Matematyka</name>
<semestr>1</semestr>
<specialization>1</specialization>
</subject>
<subject id ="3">
<name>Język angielski</name>
<semestr>1</semestr>
<specialization>1</specialization>
</subject>
<subjects>

i teraz mam pytanie jaki kod musze wpisac zeby podczas logowania dany wykladowca był przypisany do danego przedmiotu. questionmark.gif?

Bardzo prosze o pomoc
Łukasz
carbolymer
Taką zależność to w php musisz zrobić. Po zalogowaniu się wyciągasz przedmioty z imienia takim kodem:
  1. $sTeachers=<<<one
  2. <?xml version="1.0" encoding="utf-8"?>
  3. <subjects_teachers>
  4. <subject_teacher>
  5. <teacher>patryk</teacher>
  6. <subject>1</subject>
  7. </subject_teacher>
  8. <subject_teacher>
  9. <teacher>jaroslaw</teacher>
  10. <subject>2</subject>
  11. </subject_teacher>
  12. <subject_teacher>
  13. <teacher>pawel</teacher>
  14. <subject>3</subject>
  15. </subject_teacher>
  16. </subjects_teachers>
  17. one;
  18.  
  19. $sSubjects=<<<one
  20. <?xml version="1.0" encoding="utf-8"?>
  21. <subjects>
  22. <subject id ="1">
  23. <name>Podstawy uzytkowania komputerow</name>
  24. <semestr>1</semestr>
  25. <specialization>1</specialization>
  26. </subject>
  27. <subject id ="2">
  28. <name>Matematyka</name>
  29. <semestr>1</semestr>
  30. <specialization>1</specialization>
  31. </subject>
  32. <subject id ="3">
  33. <name>Jezyk angielski</name>
  34. <semestr>1</semestr>
  35. <specialization>1</specialization>
  36. </subject>
  37. </subjects>
  38. one;
  39.  
  40. $oTeachers = simplexml_load_string($sTeachers);
  41. $oSubjects = simplexml_load_string($sSubjects);
  42.  
  43. $aTeacher = $oTeachers->xpath("/subjects_teachers/subject_teacher[teacher='patryk']");
  44. $aSubject = $oSubjects->xpath('/subjects/subject[@id="'.$aTeacher[0]->subject.'"]');
  45. if(empty($aSubject)) echo "Nie ma przedmiotu dla tego nauczyciela\n";
  46. else echo "Przedmiot tego nauczyciela to: ".$aSubject[0]->name;


Jeżeli nauczyciel uczy wiecej niż 1 przedmiot to kolejne właściwości "subject" elementów w talbicy $aTeacher będą zawierały id tych przedmiotów.
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.