Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Sposób na dużo danych
Forum PHP.pl > Forum > Przedszkole
Ayrox
Jeżeli mam np serwis gdzie każdy odpowiada na pytania: np 1 pytanie: 

Czy palisz papierosy? 1. tak 2. nie 3. czasami 4. bardzo rzadko

Czy pijesz alkohol?1. tak 2. nie 3. czasami 4. bardzo rzadko

Czy chodzisz na randki? 1. tak 2. nie 3. czasami 4. bardzo rzadko

Czy lubisz się bawić klockami lego? 1. tak 2. nie 3. czasami 4. bardzo rzadko

Czy chodzisz na dyskoteki? 1. tak 2. nie 3. czasami 4. bardzo rzadko

Czy lubisz zjeść hot doga? 1. tak 2. nie 3. czasami 4. bardzo rzadko



No i mam takie pytania załóżmy, nie chce zapychać bazy danych, chciałbym wszystko w jednym polu przetrzymywać np:

jest 6 pytań, 4 możliwe odpowiedzi, każda cyfra oznacza nr odpowiedzi na dane pytanie: np wygląd pola w bazie danych byłoby następujące np: 421345, co oznacza na 1 pytanie odpowiedz 4, na 2 pytanie odpowiedz 2, na 3 pytanie odpowiedz 1 itd. 

Póżniej przy odczywytaniu z bazy danych ciągu znaków rozbiłbym to na części, zrobiłbym podciągi ciągów znaków i dowiedział się czy dany użytkownik lubi palić papierosy, pić alkohol itd.

Czy takie rozwiązanie jest wydajne?
trucksweb
jedyne sluszne to zadania na tablicach
Ayrox
Tzn że jak?

Mam do mysql importować np: 4;1;3;2 itd itd?
Qleer
Zapisywać do bazy w postaci tablicy potem odczytywać i odpowiednią funkcją przekształcać na 'normalną' tablicę.

Polecam 2 funkcje winksmiley.jpg

serialize i unserialize - poczytaj o nich w manualu php i na pewno sobie poradzisz.

Pozdrawiam.
Ayrox
a wydajnym rozwiązaniem jest robienie tego np: 2;1;3;4 i rozbijanie na tablice explode(), czy moze 2134 i rozbijanie za pomoca podciagow?
bim2
Czemu się tak uparłeś? Najlepszym rozwiązaniem będzie serialize" title="Zobacz w manualu PHP" target="_manual i unserialize" title="Zobacz w manualu PHP" target="_manual ;/

explode() zadziała podobnie pewnie, ale ty będziesz się bardziej z nim męczył. winksmiley.jpg
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.