Home  >  Article  >  Backend Development  >  Online survey PHP online survey system

Online survey PHP online survey system

WBOY
WBOYOriginal
2016-07-29 08:33:351732browse

PHP Online Survey System
This is a simple voting program, which is a very good introductory program for friends who are just learning PHP. Here I will introduce it to you, I hope it will be helpful to my friends.
The system is composed of the following four files: survey.htm with HTML survey form, survey.php that implements the survey function, data.txt that records survey items, and survey.txt that records survey results. Among them, data.txt and We can create survey.txt separately using NOTEPAD and transfer it to the program directory. The file data.txt stores the items to be investigated. Note that each item should occupy one line; survey.txt can be an empty file with no content. The code of
Survey.htm can be as follows:


survey



Survey Project 1


< ;input type="radio" name="vote" value="1">Survey item 2


Survey item three


Survey item four


< input type="radio" name="vote" value="4">Survey item five



View results



Note that the number and order of the survey items in the file data.txt must be consistent with the survey items above, otherwise it will An error occurred or the results of the investigation were inaccurate. At the same time, in order to display the survey results in the form of a bar chart, several bar pictures of different colors should be prepared.Such as: 0.gif, 1.gif, 2.gif, 3.gif, 4.gif, etc.
The following is the survey.php code to implement the survey function:
$data="data.txt";
$votes="survey.txt";
$dataf=file($data); /*Read the items in the survey project file*/
$file_votes=fopen($votes, "r");
$line_votes=fgets ($file_votes, 255); /*Read the recorded survey results*/
fclose($file_votes);
$single_vote=explode("|", $line_votes); /* And cut the data according to the specified string Open, and then transfer the string back to the array variable */
if ($result!=1) /*If the survey has been accepted*/
{
$file_votes=file($votes, "r");
if ($REMOTE_ADDR == $file_votes[1])                                                                                                                                                                                                                                                                                        ";
                                          exit; =0; $i<=count($dataf)-1; $i++)
                                                                                                                                        $single_vote[$i]+= ; Enter the voter’s IP*/
fclose($ficdest);
$result=1; /*Voting successful*/
}
/*Write the voting results and display the voting results*/
if ($result==1)
{
echo "";
for ($i=0; $i<=count($dataf)-1; $i++)
{
/*Get the total number of votes*/
$tot_votes+ =$single_vote[$i];
}
for ($i=0; $i<=count($dataf)-1; $i++)
{
} $imag=strval($i).".gif"; /*Determine which type of picture is used to display statistical results*/
$ Stat [$ i] = $ SINGLE_VOTE [$ i]/$ TOT_VOTES*100;/*Calculating percentage*/
$ STAT [$ i ]*5;/*Bar graph and magnification, here is the width of the pixel that is 5 times the percentage*/
 echo "";
}
echo "
  • ";
    echo "$dataf[$i]
  • ";
    echo "< img src="$imag" height=20 width=$scla align=middle> ";/*Output barcode image*/
      printf("%.1f", "$stat[$i]");
      echo "%
    ";
    /*Output the number of votes in this column*/
    echo "$single_vote[$i]< /font>";
    echo "

    ";
    echo "Total Number of votes: $tot_votes ";
    }
    ?>
    Explanation:
    In order to prevent one person from voting multiple times, the IP of the most recent voter is recorded, and the most recent one is recorded. The IP address of the bit vote is stored in the environment variable REMOTE_ADDR when the WEB client makes a request to the server.
    I am also a beginner, and there may be many errors and inappropriatenesses in this article. I welcome your valuable comments and suggestions. . Thanks!
    Personal Homepage: http://bamboo.oso.com.cn
    Email:wangyy@363.net

    The above introduces the network adjustment PHP online survey system, including the content of network adjustment. I hope it will be helpful to friends who are interested in PHP tutorials.


    Statement:
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn