Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sonda na podst quizu + zapis do pliku
Forum PHP.pl > Forum > Przedszkole
roobik
Witam!
Bardzo rzadko piszę na tym Forum - wszystkie potrzebne mi do tej pory rzeczy znajdowałem. Utknąłem jednak w pewnej rzeczy. Chcę napisać coś na styl sondy, lecz mam coś takiego:
  1. <?php
  2. $emailok = &#092;"none\";
  3. begin();
  4.  
  5. function checkemail(){
  6. global $usersemail, $emailok;
  7. ereg(&#092;"@\", $usersemail, $temparray);
  8.            if ($usersemail == NULL) {
  9.                   $emailok = &#092;"no\";  
  10.            } else if ($temparray[0] != &#092;"@\") {
  11.                   $emailok = &#092;"no\";
  12.            } else if (strlen($usersemail) < 5) {
  13.                   $emailok = &#092;"no\";                 
  14.            } else if (strstr($usersemail, &#092;".\")) {
  15.                   $emailok = &#092;"yes\";
  16.            } else { 
  17.                   $emailok = &#092;"no\";                  
  18. }
  19. }
  20.  
  21. function begin(){
  22. global $temat;
  23. if (isset($temat)) {
  24.   print &#092;"Już brałe&para; udział w te&para;cie. <a HREF='quiz.htm'>[POWRÓT]</a>\"; 
  25. } else {
  26. checkemail();
  27.     global $emailok, $usersemail;
  28.     switch ($emailok) {
  29.     case &#092;"yes\":
  30.       setcookie( &#092;"temat\" , \"yes\" , time()+259200, \"/\", $SERVER_NAME, 0);
  31.       runresultsprocess();
  32.       break;
  33.     case &#092;"no\":
  34.       print &#092;"Podany e-mail ($usersemail) jest zły. <a href='javascript:history.back()'>[POWRÓT]</a> WprowadĽ ponownie.\";
  35.       break;
  36.     default:
  37.       print &#092;"Wyst&plusmn;pił problem z wysłaniem wiadomo&para;ci.\";
  38. }    
  39. }
  40. }
  41. ?>
  42. <html>
  43. <head>
  44. </head>
  45. <body link=\"#000080\" vlink=\"#000080\" alink=\"#000080\">
  46. <?php
  47. function runresultsprocess(){
  48.  
  49. $date = &#092;"26.04.2005\";                  
  50. $MP = &#092;"/usr/sbin/sendmail -t\";            
  51. $siteurl  = &#092;"http://www.\";    
  52. $youremail = &#092;"mój email\";              
  53. $sitename = &#092;"moja nazwa strony\";                    
  54. define (&#092;"Q1\", 2);  //w pyt 1 jest prawidłowa odp nr 2
  55. define (&#092;"Q2\", 1);  //w pyt 2 jest prawidłowa odp nr 1
  56. define (&#092;"Q3\", 4);  //w pyt 3 jest prawidłowa odp nr 4
  57. define (&#092;"Q4\", 3);  //w pyt 4 jest prawidłowa odp nr 3
  58. define (&#092;"Q5\", 3);  //w pyt 5 jest prawidłowa odp nr 3
  59. define (&#092;"Q6\", 2);  //w pyt 6 jest prawidłowa odp nr 2
  60.  
  61. $score == 0;//wartość poczatkowa to 0
  62. $numberwrong == 0; //liczba złych odp
  63. $questionanswers = array(Q1,Q2,Q3,Q4,Q5,Q6);
  64. global $question1,$question2,$question3,$question4,$question5,$question6;
  65. $questions = array($question1,$question2,$question3,$question4,$question5,$question6);
  66.  
  67.  
  68. $counter = 0;
  69. while ( $counter <= 5 ) {
  70. if ($questions[$counter] == $questionanswers[$counter]) {
  71.    global $score;
  72.    $score = $score +1;
  73.    $counter++;
  74. }else {
  75.    global $numberwrong;
  76.    $numberwrong = $numberwrong +1; 
  77.    $counter++;
  78. }
  79. }
  80.  
  81. global $usersemail, $score;
  82. print &#092;"Witaj <b> $usersemail </b>\";
  83. print (&#092;"<br>\");
  84. if ($score == 0){
  85. print (&#092;"Brałe&para; (brała&para;) udział  w te&para;cie na stronie $sitename . Twój wynik to 0 pkt.\");
  86. }else{
  87. print (&#092;"Twój wynik:  $score \");
  88. }
  89. if ($numberwrong == 0){
  90. print (&#092;"Brawo! Wszystkie odpowiedzi poprawne!\");
  91. }else{
  92. print (&#092;" Błędnych odpowiedzi udzielono $numberwrong .\");
  93. print &#092;"<br><br><p align='center'> Dziękujemy za udział w te&para;cie na stronie $sitename . Mail z wynikiem zostanie wysłany do administ
  94. atora.
  95. <br> Informujemy, że test zakończy się dn. $date. Je&para;li chcesz - spróbuj ponownie.<br>
  96. <a HREF='quiz.htm'>[POWRÓT]</a></b>&#092;";
  97. }
  98.  
  99.  
  100. $quiztaker = &#092;"$usersemail\";
  101. $subjecttaker = &#092;"Twoje wyniki z testu na stronie $sitename \";
  102. $messagetaker = &#092;"Dziękujemy za udział w te&para;cie na stronie $sitename .\" . \" $siteurl \"
  103. .&#092;" Twój wynik to $score pkt. Test kończy się dn. $date.\";
  104. $subjecttome = &#092;"Wyniki testu użytkownika $usersemail. Jego wynik:  $score pkt.\";
  105. $messagetome = &#092;"Z adresu ($usersemail) został wysłany wynik $score pkt. Przypomina się , że test kończy się dn.  
    $
  106. ate\";
  107. $fd = popen($MP ,\"w\");                    
  108.    fputs($fd, \"DO: $quiztakern\");
  109.    fputs($fd, \"OD: $youremailn\");
  110.    fputs($fd, \"TEMAT: $subjecttakern\");
  111.    fputs($fd, \"X-Mailer: PHP3n\");
  112.    fputs($fd, \"$messagetakern\");
  113. pclose($fd);
  114. $fd = popen($MP ,\"w\");                    
  115.    fputs($fd, \"DO: $youremailn\");
  116.    fputs($fd, \"OD: $youremailn\");
  117.    fputs($fd, \"TEMAT: $subjecttomen\");
  118.    fputs($fd, \"X-Mailer: PHP3n\");
  119.    fputs($fd, \"$messagetomen\");
  120. pclose($fd);
  121. }
  122. ?>
  123.  
  124. </body></html>


Ja natomiats chcę zrobić coś na podobny styl, z tym, że nie chcę, by brana była pod uwagę suma punktów - w ogóle bez żadnej punktacji. Po prostu użytkownik wybiera odpowiedzi, które są nadsyłane na jego adres i na adres admina.
Resztę rozbuduję sam. Potrzebuję tylko pomocy do tego... Jeśli więc ktoś potrafi mi pomóc będę wdzięczny.
Gość_gość
powycinaj wszystko c osię odwołuje do pytań będzie dobrze
roobik
"powycinałem" .... pokopało się całkowicie ... sad.gif
Czy ktoś potrafiłby mi pomóc? Nie znam się aż tak na php...
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.