![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 23.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
do rzeczy mam skrypt ktory dodaje mi sonde do bazy danych na podstawie formularza do ktorego wpisuje sie pytanie i 6 odpowiedzi z tym ze nie wsystkie sa konieczne(min. 2). Jak zrobic by wyswietlalo mi formularz(sonde) z mozliwymi do wyboru odpowiedziami z tym ze liczba tych odpowiedzi jest ustalana w zaleznosci od tego ile pol o1-o6 jest wypelnionych. Te pola sa wypelniane innym formularzem ktory dodaje sonde do bazy oto baza: pola od o1 do o6 to pola zawierajace odpowiedzi. a pola g1 do g6 beda zawieraly glosy (IMG:http://designwww.ovh.org/baza.jpg) Bardzo proszę o odpowiedz i z góry dziękuje. Jest to dosyć skomplikowane(jak dla mnie) więc jeśli ktoś mi pomoże i będzie chciał to w ramach wdzięczności mogę wykonać jakąś grafikę. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Najlepiej stwórz sobie w bazie 2 tabele:
1. tabela: Sondy a w niej 2 kolumny: id, pytanie 2. tabela: Odpowiedzi a w niej 4 kolumny id, idSondy, odpowiedz, liczbaGlosow Następnie dodając nową sondę dodajesz do tabeli nr 1 rekord z pytaniem oraz numerem id, a do tabeli nr 2 wstawiasz rekordy z pytaniami. W każdym rekordzie z pytaniami wstawiasz w kolumnie idSondy taką samą wartość, jaką wstawiłeś w kolumnie id w tabeli nr 1. Dzięki temu będziesz mógł relacyjnie powiązać te dwie tabele ze sobą i tworzyć sondy z dowolną ilością odpowiedzi. Później tylko tworzysz sobie odpowiedni formularz do głosowania i aktualizujesz pola w kolumnie liczbaGlosow w tabeli nr 2. Pozdrawiam. Ten post edytował Speedy 23.01.2008, 14:16:08 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 23.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
to już obojętne czy 2 tabele czy jedna choć twój pomysł z dwiema jest chyba lepszy i tak pewnie zrobie ale jak juz bede mial te tabele to jak na podstawie wyników zapytania wyswietlić formularz sondy który w zależności od wyników zapytania będzie mial 2 albo wiecej pól z odowiedziami?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Np. W tabeli Sondy masz rekord o id = 5.
Pobierasz pytanie z tabeli nr 1 (Sondy).
Następnie odpowiednio przetwarzasz je sobie funkcjami w php i wyświetlasz pytanie. W dalszej kolejności pobierasz odpowiedzi z tabeli nr 2 (Odpowiedzi).
Po wykonaniu takiego zapytania zostaną pobrane wszystkie odpowiedzi dla sondy o id = 5. To zapytanie możesz również przetworzyć za pomocą php i stworzyć np. tablicę z danymi, na podstawie której możesz wygenerować stosowny formularz. Numer id sondy możesz sobie przechowywać w url-u np. jako zmienną $_GET['id'] i wstawiać ją do tego zapytania (pamiętaj też o odpowiedniej filtracji, aby uniknąć sql injection). Id sond nie muszą być kolejnymi numerami. Możesz sobie je generować np. na bazie aktualnego czasu za pomocą funkcji date('YmdGis'); , która wygeneruje Ci unikalną liczbę, w której będzie zawarta data, godzina, minuta oraz sekunda, w której została dodana sonda. Ten post edytował Speedy 23.01.2008, 18:34:31 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 23.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Bardzo zależy mi na tym projekcie z sondami który aktualnie robie. Jest możliwość żebyś mi podał swój numer gg mam jeszcze kilka pytań.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Napisz te pytania na forum. Może ktoś jeszcze na tym skorzysta. Niestety nie mam teraz zbyt wiele czasu, żeby poświęcać go na takie rozmowy na gg. Jeśli pytania zadasz w tym lub innym wątku, to najprawdopodobniej będę mógł w wolnej chwili odpisać.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 23.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
nie do konca zrozumialem twoja odpowiedz
Cytat wiem ze dostane wszystkie odpowiedzi do sondy o id 5 ale moj problem polega na tym ze nie wiem jak na podstawie ilosci tych odpowiedzi wyswietlic odpowiednia ilosc tych odpowiedzi w formularzu do glosowania |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
To zapytanie, jak już napisałem wcześniej, powinno Ci zwrócić wszystkie rekordy z pytaniami.
Następnie puszczasz w pętli instrukcję mysql_fetch_array" title="Zobacz w manualu PHP" target="_manual Możesz skorzystać z funkcji wziętej żywcem z komentarzy z manuala php.
Następnie puszczasz sobie w pętli tę tablicę i generujesz formularz. Oto przykładowe, schematyczne generowanie formularza z wykorzystaniem ww. funkcji (chodzi o sam pomysł) :
Ten post edytował Speedy 24.01.2008, 02:28:31 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 13:36 |