Kreton
9.07.2006, 15:37:33
Mam w bazie kolumny: Imie , Nazwisko, Kolejne Przedmioty.
I teraz zastanawiam się jak zrobić aby zapisać kolejne nazwy tych kolumn do tablicy. Zakładam ze ilość kolum bedzie się zmieniać.
Dorwałem funkcję mysql_fetch_field, która zwraca mi obiekt. Tylko ze mam klasę która ma wyświetlać oceny. Czyli będę miał klasę w klasie. Co wtedy. Jak mam coś takiego wywołać ? stosować 2 razy $zmienna->xxxx-> ? sam nie wiem. A moze jest jakiś inny szybszy i łątwiejszy sposób na wypisanie nazw kolum a potem wrzucenie ich do tablicy ? Nie wiem jak to zrobić . Help
Z góry THX.
Cysiaczek
9.07.2006, 16:16:56
Nie ma problemu. To się nazywa "delegacja". $obiekt1->obiekt2->dane. To oczywiście pod warunkiem, że chcesz koniecznie obiektowo

Czy byłoby dużym obciązeniem dla klasy utworzyć w niej składową (array) i do niej pakować wynik mysql_fetch_field ? Pokaż kod.
Kreton
10.07.2006, 23:55:05
Nie stety kodu jeszcze nie mam. Moge jedynie pokazać jak wygląda tabela i tyle. Co do obiektowości, chce to zrobić w OO poniewaz zamierzam to zrobic ogolnodostępnym kodem do edycji, a uwazam ze jednak OO bedzie najlatwiejsze potem do edycji zarówno dla mnie jak i przyszłych moderów.
Chdzo mi o takie coś : skrypt wypisuje dane w taki sposób:
[Nazwa kolumny]:[dane z wiersza],[Nazwa kolumny_2]:[dane z wiersza]
A w praktyce: Nazwisko : bla bla bla, Matematyka : 1,2,3,4,5, Historia : 3,4,4,4,5
Nie moge z góry ustawić ze wierszowi 3 kolumnie bedzie odpowiadal poski, 4 matematyka bo liczba przedmiotow sie zmienia, i jest rozna w klasach, szkolach itd.
Widze ze temat wygasł troszke. Wiec ponawiam pytanie, czy ma ktoś jakąś ideę, pomysł jak to rozwiązać ?
Cysiaczek
11.07.2006, 06:00:08
http://pl.php.net/manual/pl/function.mysql-field-name.php - może to pomoże?
Po drugie używaj normalnie $obiekt1->obiekt2->name (zawiera nazwę kolumny w bazie). Jest o tym w manualu.
Kreton
11.07.2006, 14:50:11
wielkie thx. Ta pierwsza funkcja jest jak njbardziej odpowiedania, co prawda nie daje ona tablicy ale ponizej jest skrypt z jej wykorzystaniem i prezkszalceniem wynikow to tablicy.
Jeszcze raz THX