Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Ankieta- Wyniki w txt
Ankietomaniak
post 20.06.2011, 12:51:56
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 20.06.2011

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


Witam,
mam problem, napisalem ankiete w php, chce teraz aby wyniki zostaly zapisane w pliku .txt, problem polega na tym ze mam 40 pytan, powiedzmy dla 10 uzytkownikow, zapisane dane chcialbym w pliku w nastepujacym szablonie
Imie nazwisko (Podawane w ankiecie)
pyt1 : numerodp
pyt2 : opis odpowiedzi
itp az do pyt40.

problem mam z przechodzeniem po odpowiedziach

  1. <?php
  2.  
  3. $plik = fopen("wyniki.txt", "r");
  4.  
  5. $dane = fread($plik, filesize("wyniki.txt"));
  6.  
  7. $wyniki = split(":", $dane);
  8.  
  9. fclose($plik);
  10.  
  11.  
  12. for ($i =1; $i<=5; $i++)
  13. {
  14. switch($_POST[$i]){
  15. case "0":
  16. $wyniki[0] = '0';
  17. break;
  18. case "1":
  19. $wyniki[0] = '1';
  20. break;
  21. case "2":
  22. $wyniki[0] = '2';
  23. break;
  24. case "3":
  25. $wyniki[0] = '3';
  26. break;
  27. case "4":
  28. $wyniki[0] = '4';
  29. break;
  30.  
  31. }
  32. }
  33.  
  34. $plik = fopen("wyniki.txt", "w");
  35.  
  36. flock($plik, 2);
  37.  
  38. fwrite($plik, "Pytanie 1: $wyniki[0]", 200);
  39.  
  40. flock($plik, 3);
  41.  
  42. fclose($plik);
  43.  
  44. header("Location: wyniki.txt");
  45.  
  46. ?>

programuje glownie w c++ teraz przyszlo mi na szybkosci zrobic ankiete w php i mam problem:(
licze na wasza pomoc
Go to the top of the page
+Quote Post
gorden
post 20.06.2011, 14:55:31
Post #2





Grupa: Zarejestrowani
Postów: 486
Pomógł: 101
Dołączył: 27.06.2010

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


całe sprawdzanie odpowiedzi zrób w foreach
zamiast switch możesz użyć while lub for
zamiast split użyj explode
używaj file_get_contents i file_put_contents zamiast tych przestarzałych fopen, fwrite itd.
Go to the top of the page
+Quote Post
mortus
post 20.06.2011, 15:47:29
Post #3





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Nie bardzo rozumiem, chcesz dane zapisać, czy odczytać i zmodyfikować?
Jak wygląda formularz ankiety?
Nie podoba mi się konstrukcja $_POST[$i], bo $i nie może być w cyfrą jak to jest u Ciebie (no chyba, że olejemy specyfikację (X)HTML).

@gorden fopen i fwrite nie są funkcjami "przestarzałymi" i nic nie stoi na przeszkodzie, aby je wykorzystać. Tym bardziej, że flile_get_contents() pobiera całą treść strony i nie rozróżnia linii. Dla file_put_contents() trzeba natomiast zawartość utworzyć w postaci łańcucha wyjściowego (w tym przypadku zawierającego również znaki końca linii), aby móc ją zapisać. Nie rozumiem również, po co "zamiast switch możesz użyć while lub for", przecież instrukcji warunkowej, jaką jest switch nie zastąpimy pętlą, a takowymi z pewnością są while i for.
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: 23.06.2025 - 11:38