Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Pola użytkownika
ghastblood
post 20.03.2013, 14:40:41
Post #1





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


Witam

mam taki problem jak mogę zrobić żeby użytkownik mógł generować własne formularze. np użytkownik z uprawnieniami organizatora może wygenerować formularz rejestracji uczestników jakiego eventu. Np generuje formularz zawierający imie nazwisko wiek pesel nip czy co tam potrzebuje. Jak powinienem zapisywać te dane ? Jakieś generowanie do mysql czy takie dane zapisywać do pliku ? Proszę o jakiś pomysł na rozwiązanie tego problemu. Może ktoś ma jakiś przykład.
Go to the top of the page
+Quote Post
Sephirus
post 20.03.2013, 15:23:26
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Można to ogarnąć na bazie danych. Przykładowo robisz sobie tabelę:

formularz

id | id_user | ... <- tu jakieś pola opisujące formularz

pola

id | id_formularz | typ | sorter | ... <- tu dodatkowe pola opisujące pole (nazwa, opis - to co Ci potrzebne)

W tym momencie tworzysz sobie formularz, dodajesz pola. Możesz go wyświetlić po id formularza. Odpowiednio powinieneś obsłużyć jedynie akcje wysyłania.

Kolejna tabela

id | id_user | id_formularz | id_pole | wartosc

służyła by do zapisywania danych wypełnionych pól z danego formularza... itd... itp...

Można to fajnie ogarnąć jak się dobrze zaprojektuje wink.gif


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
krzysiekk
post 20.03.2013, 17:08:22
Post #3





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 13.03.2006
Skąd: Jaworze

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


"Kolejna tabela

id | id_user | id_formularz | id_pole | wartosc

"

mam pytanie w jaki sposób ma być przechowywana wartość formularza jeśli nie znamy ilości pól formularza co za tym idzie nie możemy tworzyć w bazie tabeli z określoną ilością pól .


kiedyś spotkałem się z takim przypadkiem


formularz tworzony przez admina( nieznana ilość pól) 10 ,20 ... nadawany był ID formularza

dane zapisywane były w bazie tak jak kolega pisał id | ID_FORM | WARTOŚĆ FORMULARZA wszystkie pola przetworzone
  1. $result = json_encode($form);
Go to the top of the page
+Quote Post
ghastblood
post 22.03.2013, 15:35:22
Post #4





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


Witam właśnie zabrałem się za generowanie formularzy i mam problem z polem select

kod

  1. if($_GET["id"])
  2. {
  3. db_connect($host, $user, $pass, $base);
  4.  
  5. $r = mysql_query("SELECT * FROM pole WHERE pole_form_id = '".$_GET['id']."' ORDER BY pole_form_posiotion ");
  6.  
  7.  
  8. while($q = mysql_fetch_assoc($r))
  9. {
  10.  
  11. if($q['pole_type'] == 'textbox')
  12. {
  13. txtbox($q['pole_lable_name'], $q['pole_name'], $q['pole_type']);
  14. }
  15.  
  16. if($q['pole_type'] == 'select')
  17. {
  18. selectbox($q['pole_lable_name'], $q['pole_name']);
  19. $r = mysql_query("SELECT * FROM pole_select INNER JOIN pole ON pole_select_pole_id = pole_id WHERE pole_id='".$q['pole_id']."'");
  20. while($q = mysql_fetch_assoc($r))
  21. {
  22. selectbox_option($q['pole_select_nazwa'], '');
  23.  
  24. }
  25.  
  26. selectbox_close();
  27. }
  28.  
  29. }
  30.  
  31. db_close();
  32.  
  33. }

obojętnie ile dodam ich to bazy danych zawsze otrzymam pierwszego napotkanego selecta

funkcji nie tłumaczę bo w zasadzie jest tam tylko echo np
  1. echo '<select>'; , echo '</select>';


Ten post edytował ghastblood 22.03.2013, 15:38:55
Go to the top of the page
+Quote Post
nospor
post 22.03.2013, 15:44:23
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Nadpisujesz sobie zmienne $q i $r....


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ghastblood
post 22.03.2013, 16:09:50
Post #6





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


Dzięki nospor za pomoc.
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: 16.07.2025 - 06:24