Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> XAMPP ograniczenie liczby kolumn, chcę zrobić tabelę na 580 kolumn
bigda
post 31.05.2020, 13:35:23
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.04.2018

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


Kłaniam się,

zainstalowałem XAMPPa na komputerze. Stworzyłem bazę i chcę dodać tabelę. Tabela musi mieć 580 kolumn. Niestety podczas próby dodania takiej tabeli wyrzuca mi błąd: pisze o zerwaniu połączenia. Mniejsze tabele dodaje bez problemu. W internecie wyczytałem, że maksymalna liczba kolumn powinna przekraczać 1000.
Taką samą tabelę próbuję stworzyć na koncie hostingowym (cba.pl). Tam nie wyrzuca błędu, ale komunikat: "wczytywanie" trwa od pół godziny.
Stąd moje pytanie: czy jest jakieś ograniczenie, które nie pozwala mi stworzyć takiej tabeli na localhoscie i czy konta hostingowe standardowo mają takie ograniczenia (na moim nic takiego nie wyczytałem).

Potrafię sobie wyobrazić, że można ewentualne ograniczenia ominąć dzieląc taką tabelę na kilka, ale zanim to zrobię, chciałbym zasięgnąć języka, bo może uda się prościej.

Jeszcze jedno: potem będę musiał dane z tej tabeli przetwarzać. Czy jest jakieś ograniczenie co do liczby zmiennych sesyjnych w php? Czy mogę w jednej sesji stworzyć ich 580?
Go to the top of the page
+Quote Post
viking
post 31.05.2020, 15:31:36
Post #2





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Nie widziałem systemu który by wymagał 580 kolumn chyba że jakaś totalna amatorszczyzna. Możesz przybliżyć temat?


--------------------
Go to the top of the page
+Quote Post
bigda
post 31.05.2020, 16:03:26
Post #3





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.04.2018

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


Amatorszczyzna, bo jestem totalnym amatorem.
Robię stronkę na własny użytek z testami psychologicznymi (zaraza, wizyty online itp.). Chcę dodać test, który ma 567 pytań. Każda odpowiedź to TAK lub NIE. Po zebraniu wszystkich odpowiedzi liczy się z nich wynik na 13 skalach. Nie chcę tego zrobić w zwykłym formularzu, bo osoba testowana nie powinna mieć wglądu do udzielonych ani przyszłych pytań. Poza tym to by był bardzo długi formularz. Biorę pod uwagę, że np. po udzieleniu 500 odpowiedzi osoba testowana straci zasięg na tel. Chciałbym, żeby mogła wrócić do testu od 501. pytania, a nie zaczynać od początku.
W miarę możliwości chciałbym też przechowywać surowe dane (tzn. odpowiedzi na każde pytanie, a nie tylko 13 przeliczonych skal), bo można potem na tym robić ciekawe statystyki.
Po odpowiedzi na każde pytanie chciałem odpowiednią wartość (tak lub nie) przesłać do bazy.
Go to the top of the page
+Quote Post
ohm
post 31.05.2020, 17:18:06
Post #4





Grupa: Zarejestrowani
Postów: 618
Pomógł: 143
Dołączył: 22.12.2010

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


No to pytanie powinno byc zgoła inne, czyli "jak zaprojektować bazę danych do tego typu testów" oraz "jak zaprojektowac system do tego typu testow"

Wiec zaczynajac od poczatku, baza powinna miec tabele:
- Pytania
- Odpowiedzi
- Uzytkownicy

W pytaniach powinienes przetrzymywac, jak sama nazwa mowi, pytania, czyli jakas tresc, opis, moze jakas flaga widocznosci pytania dla uzytkownika, itp.
W odpowiedziach powinienes trzymac id pytania (z kluczem obcym do pytania), id uzytkownika (tak samo z tzw. relacją) i odpowiedz (najprosciej zwykly boolean 1 - tak, 0 - nie)
W uzytkownikach jakis unikalny identyfikator + moze jakies podstawowe dane.

Dzieki takiemu rozwiazaniu masz kilka kolumn, odpowiedzi mozesz miec kilka milionow i nie bedzie zadnego problemu z przetwarzaniem takich odpowiedzi.

Co do samego systemu, to wg mnie, najlepiej aby kazdy uzytkownik otrzymywal jakis unikalny, generowany losowo, identyfikator. Przykładowo mógłby być przetrzymywany w cookies (co by na zanik zasiegu i sesji nie cierpiał wink.gif )
Nastepnie, w przypadku wejscia na strone, w skrypcie wyszukujesz pytanie jakie uzytkownikowi powinienes zadac (tutaj kłaniają się odpowiednie zapytania do bazy danych), po zapisaniu w jakikolwiek sposob (czy to ajaxem czy po odswiezeniu strony) czynnosc ta powtarza sie do czasu az skoncza sie pytania, jesli brak jest pytania, to wyswietlasz uzytkownikowi odpowiednia informacje czy tam statystyki, co tam w projekcie powinno byc.
Oczywiscie kazda odpowiedz na pytanie zostaje zapisana w bazie danych na bieżąco, co by uzytkownik mogl wrocic do odpowiadania na pytania w dowolnej chwili.

To chyba taki najprostszy system jaki daloby sie zrobic.

Ten post edytował ohm 31.05.2020, 17:18:50
Go to the top of the page
+Quote Post
bigda
post 31.05.2020, 17:43:06
Post #5





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.04.2018

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


Wielkie dzięki za wyjaśnienia. Żebym dobrze zrozumiał, w odpowiedziach jedna kolumna to id pytania, czyli cały test zrobiony przez jednego użytkownika to 567 wierszy (tyle jest pytań)?

I jeszcze jedno, z czego wynika problem ze zrobieniem 580 kolumn?
Go to the top of the page
+Quote Post
ohm
post 31.05.2020, 18:00:37
Post #6





Grupa: Zarejestrowani
Postów: 618
Pomógł: 143
Dołączył: 22.12.2010

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


Cytat(bigda @ 31.05.2020, 18:43:06 ) *
Wielkie dzięki za wyjaśnienia. Żebym dobrze zrozumiał, w odpowiedziach jedna kolumna to id pytania, czyli cały test zrobiony przez jednego użytkownika to 567 wierszy (tyle jest pytań)?

Dokładnie tak, dzieki temu pozniej mozesz wyciagac sobie np stosunek tak/nie dla danego id pytania, korelacje miedzy poszczegolnymi pytaniami, itp, itd. Bazujesz tylko na samych identyfikatorach ktore dzialaja blyskawicznie, a tresci dodatkowe z pytania dolaczasz sobie z reszty tabel.

Cytat(bigda @ 31.05.2020, 18:43:06 ) *
I jeszcze jedno, z czego wynika problem ze zrobieniem 580 kolumn?


Niestety ciezko mi tu powiedziec przyczyny, ale nigdy nie spotkalem sie zeby byla taka ilosc kolumn i zwiazanyme z tym problemy.
Go to the top of the page
+Quote Post
bigda
post 31.05.2020, 18:26:46
Post #7





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.04.2018

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


Jeszcze raz dziękuję za wyjaśnienia.
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 28.03.2024 - 14:19