PHP 온라인 설문조사 시스템
간단한 투표 프로그램으로, 이제 막 PHP를 배우는 친구들에게 아주 좋은 입문 프로그램입니다. 여기에서 소개하겠습니다. 친구들에게 도움이 되길 바랍니다.
시스템은 HTML 설문조사 양식을 포함하는 Survey.htm, 설문조사 기능을 구현하는 Survey.php, 설문조사 항목을 기록하는 data.txt, 설문조사 결과를 기록하는 Survey.txt 4가지 파일로 구성됩니다. data.txt 및 Survey.txt를 NOTEPAD를 사용하여 각각 생성하고 프로그램 디렉터리로 전송할 수 있습니다. data.txt 파일은 조사할 항목을 저장합니다. 각 항목은 한 줄을 차지해야 합니다. Survey.txt는 내용이 없는 빈 파일일 수 있습니다.
Survey.htm의 코드는 다음과 같습니다.
survey >
/html>
data.txt 파일에 있는 설문 항목의 수와 순서는 위의 설문 항목과 일치해야 합니다. 그렇지 않으면 오류가 발생하거나 설문 조사 결과가 부정확해집니다. 동시에, 설문조사 결과를 막대 차트 형태로 표시하기 위해서는 서로 다른 색상의 막대 그림을 여러 장 준비해야 합니다.예: 0.gif, 1.gif, 2.gif, 3.gif, 4.gif 등
다음은 설문조사 기능을 구현하는 Survey.php 코드입니다.
$data=" data.txt";
$votes="survey.txt";
$dataf=file($data) /*설문조사 프로젝트 파일의 항목 읽기*/
$ file_votes=fopen($ votes, "r");
$line_votes=fgets($file_votes, 255) /*기록된 설문조사 결과 읽기*/
fclose($file_votes)
$single_vote =explode(" |", $line_votes); /* 지정된 문자열에 따라 데이터를 잘라낸 다음 해당 문자열을 다시 배열 변수로 전송합니다. */
if ($result!=1) /* 설문조사가 수락되었습니다 */
{
$file_votes=file($votes, "r")
if ($REMOTE_ADDR == $file_votes[1]) /*동일인인지 확인하세요 */
{
echo "
이미 투표하셨습니다. 참여해 주셔서 감사합니다!";
종료; ")
for ($i=0; $i<=count($dataf)-1; $i )
/* 어떤 항목이 선택되었는지 확인*/
$single_vote[$i] =1; | 🎜> }
fputs($ficdest, "n$REMOTE_ADDR");/* //투표자 IP 쓰기* /
fclose($ficdest);
$result=1; /* 투표 성공*/
}
/*투표 결과를 쓰고 투표 결과를 표시합니다*/
if ($ 결과==1)
{
echo "
for ($i=0; $i {
/*총 투표 수 가져오기*/
$tot_votes =$single_vote [$i]
}
for ($i=0; $i<=count($dataf; )-1; $i )
{
$imag=strval($i). ".gif";/*통계 결과를 표시하는 데 사용할 막대 그림 결정*/
$stat[$i ]=$single_vote[$i]/$tot_votes*100; /*백분율 계산*/
$scla=$stat[$i]*5;/*막대 차트 및 배율, 여기서는 너비로 표시됩니다. 5배의 픽셀 수*/
echo "< td>"
echo "$dataf[$i ]"; echo " ";/*바코드 이미지 출력*/ printf("%.1f", "$stat[$i]"); echo "% | ";
/*이 열에 대한 투표 수 출력*/
echo "$single_vote[$i] echo "
";
}
echo "
";
echo "총 투표 수: $tot_votes ";
}
?>
참고:
여기서는 한 사람이 여러 번 투표하는 것을 방지하기 위해 다음과 같은 방법을 사용합니다. 가장 최근에 투표한 사람의 IP 주소를 기록하는 기능이 구현되어 있으며, 서버가 요청할 때 가장 최근에 투표한 사람의 IP 주소가 WEB 클라이언트의 IP 주소로 저장됩니다.
I. 저도 초보자입니다. 이 글에는 많은 오류와 부적절한 내용이 있을 수 있습니다. 여러분의 소중한 의견과 제안을 환영합니다. 감사해요!
개인 홈페이지: http://bamboo.oso.com.cn
이메일:wangyy@363.net
위 내용은 네트워크 조정 내용을 포함한 네트워크 조정 PHP 온라인 설문조사 시스템을 소개한 것입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.