Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dynamiczne generowanie podstron na podstawie nazw tabel
Forum PHP.pl > Forum > Bazy danych > MySQL
Leniobitz
Witajcie, mam nastepujacy problem:
Tworzę interfejs, który umożliwia dodawanie/usuwanie danych z tablicy 'customers'. Przy dodaniu kazdego rekordu, tworzy sie automatycznie nowa tablica, o nazwie takiej jak nazwa klienta. w tej tablicy beda zawarte uslugi, jakie klient wykupil w naszej firmie. Wyswietlilem liste nazw tych tabel, wszystko pieknie, ale teraz chce aby te nazwy byly "klikalne" i umozliwialy przejscie do dynamicznie wygenerowanej podstrony, na ktorej bedzie wyswietlana tabela z uslugami klienta ( z mozliwoscia edycji). problemem, z ktorym sie borykam, jest wlasnie utworzenie tego przejscia i dynamicznie generowanych podstron. Wiem jak zrobic takie strony w obrebie jednej tabeli, jednak tutaj chodzi o to, ze tych tabel uzywamy bardzo wiele i sa one generowane dynamicznie. Z góry dziękuje za pomoc smile.gif
Crozin
Po co w ogóle generujesz osobne tabele (nie tablice) dla każdego klienta? Przecież to jest bez sensu.
Leniobitz
Ma to sens, poniewaz kazdy klient bedzie mial uruchomione pewne uslugi, ktore beda zawieraly pewne parametry i slowa klucze. aplikacja, ktora bedzie do tego napisana bedzie pobierac te parametry i keywordsy, wyszukiwac w pewnej zupelnie zewnetrznej bazie danych produkty podobne i wracac do tabeli konkretnego produktu.
Ok, moze brzmi to troche metnie, ale naprawde jest potrzeba tworzenia osobnych tabel.
Crozin
Cytat
Ma to sens, poniewaz kazdy klient bedzie mial uruchomione pewne uslugi, ktore beda zawieraly pewne parametry i slowa klucze.
Przecież takie coś jak najbardziej da się zrealizować w normalnej, statycznej strukturze bazy danych. Mam wrażenie, że mamy tutaj do czynienia z problemem XY - podaj proszę więcej szczegółów dot. Twojej aplikacji.

Co do samego pytania. Każdy klikalny link powinien zawierać nazwę tabeli, której dotyczy, np.: display.php?table=klient_a. Później w skrypcie sprawdzasz czy aby na pewno przesłana wartość jest prawidłowa (w ogóle istnieje oraz dany użytkownik ma prawa do jej użycia) po czym robisz coś w stylu:
  1. $sql = 'SELECT ... FROM $table ...';
Leniobitz
Możliwe, że robię trochę naokoło, ponieważ to moje początki, postaram się wytłumaczyć:
1. Jest interfejs, gdzie dodajesz/usuwasz/edytujesz klientow. Klienci są w tabeli customers, ktora zawiera: ID, NAME, LOGIN, PASSWORD, MAIL.
2. Automatycznie tworzy się tabelka o wartości jaką wpisano w NAME.
3. W stworzonej tabeli (wartosc NAME), wpisujemy sobie produkty, ktore klient posiada. produkty posiadaja po kilka-kilkanascie slow kluczy, kategorii i podkategorii, kazde to oddzielna komorka tabeli.
4. Wpisując kolejny produkt, do tabeli klienta, podajemy nazwe, slowa, klucze, kategorie, podkategorie, automatycznie tworzy się tabelka o nazwie rownej wartości numeru produktu.
Po co mi ta baza? Ogólnie chodzi o wyszukiwanie produktów, które w jakiś sposób mogą być podobne do produktów klienta w pewnej bazie danych. wynik zwrotny, z numerami tych produktów, opisami, kategoriami etc. bedzie zapisywany w tabelach konkretnych produktow (pkt.5).
Założmy ze mam 10 klientow. Kazdy ma 10 produktów, a każdy produkt ma 10 podobnych, które są dopisane do ostatniej tabeli. dlatego stworzylem osobne tabele. Jezeli masz lepsze rozwiązanie, chętnie się z nim zapoznam, ponieważ jak mówiłem jestem początkujący biggrin.gif

Przepraszam za długi czas milczenia, ale byłem poza biurem 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.