Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ankieta-nie działa :(
Forum PHP.pl > Forum > Gotowe rozwiązania
dejot
Witam, jak widać jestem początkujący jeśli chodzi o php, i mam pewien problem:( : posiadam ankiete-gotowca wykonanego na podstawie książki "PHP4 Ćwiczenia praktyczne", i mimo moich oczekiwań skrypt nie działa sad.gif

Oto pliki i ich kody:
6-12.htm

Cytat
<HTML>
 <HEAD>
   <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
   <TITLE>Strona z ankiet&plusmn;</TITLE>
   <STYLE>
     h2 {font-family: Arial, Helvetica, sans-serif; font-size: 12pt}
     p, td, input {font-family: Arial, Helvetica, sans-serif; font-size: 9pt}
   </STYLE>
 </HEAD>
 <BODY>
    <TABLE CELLPADDING=10><TR>
    <TD VALIGN=TOP WIDTH="33%">
       <P>OCEŃ TEN TEKST!.</P>
    </TD>
     
    <TD VALIGN=TOP WIDTH="33%">
       <!--#include virtual="6-12-2html.php" -->
    </TD>
    </TR></TABLE>

 </BODY>
</HTML>



plik 6-12-2.html.php


Cytat
<?  

 $glosowanie = array ('6' => 'rewelacyjna', '5' => 'bardzo dobra',
                      '4' => 'dobra', '3' => 'przeciętna',
                      '2' => 'zła', '1' => 'beznadziejna');

 function glosowanie ($glosowanie, $quiz) {
 
   setcookie ('glosowano', "1");  
   if (file_exists("dane/glosowanie.txt")) {  
     $plik = fopen ("dane/glosowanie.txt", "r+");
     flock ($plik, 2);
     $wiersz = fgets ($plik, 255);
     $wyniki = split ("|", $wiersz);
     fseek ($plik, 0);
   } else {                    
     $plik = fopen ("dane/glosowanie.txt", "w+");
     flock ($plik, 2);
   }

   for ($i=0; $i<count($glosowanie);$i++) {  
     if ($quiz == $i+1) { $wyniki[$i]++; }
     fputs ($plik, $wyniki[$i]);
     if ($i<count($glosowanie)-1) {fputs ($plik, '|'); }
   }
   flock ($plik, 3);
   fclose ($plik);
 }

 function wyswietlanie ($glosowanie, $glosowano) {
 
   if ($glosowano) {              
     if (file_exists("dane/glosowanie.txt")) {
       $plik = fopen ("dane/glosowanie.txt", "r");
       $wiersz = fgets ($plik, 255);
       fclose ($plik);
       $wyniki = split ("|", $wiersz);
       for ($i=0; $i<count($wyniki); $i++) { $liczbaglosow += $wyniki[$i]; }  
     }
     print "<P ALIGN=CENTER><B>Ankieta</B></P>n";
     print "<P>Oceń moj&plusmn; stronę:</P><TABLE>n";
     for (reset ($glosowanie); $klucz=key($glosowanie); next ($glosowanie)) {
       print "<TR><TD>".pos($glosowanie).":&nbsp;</TD><TD>";
       if ($liczbaglosow == 0) {
         $procent = 0;  
       } else {
         $procent = ($wyniki[$klucz-1]/$liczbaglosow)*100;
       }
       print "<IMG SRC="img/1.gif" WIDTH=$procent HEIGHT="10"></TD>";
       print "<TD ALIGN=RIGHT>&nbsp;";
       printf ("%0.0f", $procent);
       print ("%</TD></TR>");
     }
     print "</TABLE>";
   } else {                          
     print '<FORM METHOD=GET ACTION="6-12.php">';
     print "<P ALIGN=CENTER><B>Ankieta</B></P>n";
     print "<P>Oceń moj&plusmn; stronę:</P><TABLE>n";
     for (reset ($glosowanie); $klucz=key($glosowanie); next ($glosowanie)) {
       print ('<TR><TD><INPUT TYPE=radio NAME=quiz VALUE="'.$klucz. '"> '.
             pos($glosowanie)."</TD></TR>n");
     }

     print '</TABLE><CENTER><INPUT TYPE=submit VALUE="Głosuj"></CENTER></P>';
     print '</FORM>';
   }
 }

 if ($quiz) {  
   glosowanie ($glosowanie, $quiz);
   header ("Location: http://".$GLOBALS["SERVER_NAME"].
           $GLOBALS["REDIRECT_URL"]);

 } else {      
   wyswietlanie ($glosowanie, $glosowano);
 }
?>


oraz 6-12.php
Cytat
<HTML>
 <HEAD>
   <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
   <TITLE>Strona z ankiet&plusmn;</TITLE>
   <STYLE>
     h2 {font-family: Arial, Helvetica, sans-serif; font-size: 12pt}
     p, td, input {font-family: Arial, Helvetica, sans-serif; font-size: 9pt}
   </STYLE>
 </HEAD>
 <BODY>
   <?  
      require ("6-12-2html.php");
   ?>

 </BODY>
</HTML>



CZY JEST KTOŚ KTO POMOŻE MI POPRAWIĆ TEN KOD, ABY DZIAŁAŁ? Pokazuje mi błą w linii 12 pliku 6-12.php.

Z góry dzieki za pomoc!
Foxx
Zmień nazwę pliku 6-12-2.html.php na 6-12-2.php
Następnie w plikach 6-12.php oraz 6-12.htm zmień wszystkie odwołania do 6-12-2.html.php na odwołania właśnie do 6-12-2.php.

Drugi, prostszy sposób: zmień nazwę pliku 6-12-2.html.php na 6-12-2html.php smile.gif
BzikOS
@dejot: prosze poprawić swój post i umieścić kod w odpowiednich znacznikach BBCode (php w [php], html w [XML]).
BzikOS
Jeżeli do poniedziałku post nie zostanie dostosowany do regulaminu (patrz wskazówki wyżej) wątek wyląduje w śmietniku.
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-2024 Invision Power Services, Inc.