فرم نظر سنجي و نتايج نظرسنجي بصورت نمودار(هر كي مي خواد كليك كنه)

AliReza26

Active Member
سلام

يه فرم نظر سنجي و نتايج نظرسنجي بصورت نمودار را به زبان ASP نوشتم اميدوارم كه خوشتون بيايد.
براي اين برنامه احتياج به دو صفحه داريم يكي HTML و يكي ديگر ASP

ابتدا فرم نظر سنجي را در صفحه HTML بصورت زير ايجاد مي كنيم (با نام vote.html ذخيره مي كنيم) :

کد:
<html>
<head><title>Vote</title></head>
<body bgcolor="555555">

<hr width=50% color=777777 align=left>
<font face=tahoma size=2 color=ffffff>Please Vote.</font><BR>
<hr width=50% color=777777 align=left>
<form action=showvote.asp method=post>
<input type=radio name=vote value="4"><font face=tahoma size=2 color=000000> Excellent</font><BR>
<input type=radio name=vote value="3" checked=checked><font face=tahoma size=2 color=000000> Good</font><BR>
<input type=radio name=vote value="2"><font face=tahoma size=2 color=000000> Middle</font><BR>
<input type=radio name=vote value="1"><font face=tahoma size=2 color=000000> Bad</font><BR><BR>
<input type=submit value=" Vote ">
</form>
<a href=showvote.asp title="Show vote result"><font face=tahoma size=2 color=ffffff>Show vote result</font></a>
</body>
</html>
و در مر حله بعد كدهاي زير را در صفحه ASP بنام showvote.asp مي نويسيم :


کد:
<html>
<head><title>Vote</title></head>
<body bgcolor="555555">

<% 
 
if request.form("vote") = "4" then

 Const ForReading = 1
     Dim objOpenFile1, objFSO1, strPath1, iCount1
    
     strPath1 = "counter4.txt"
     strPath1 = Server.MapPath(strPath1)
     Set objFSO1 = _
         Server.CreateObject("Scripting.FileSystemObject")
     If objFSO1.FileExists(strPath1) Then
        Set objOpenFile1 = _
          objFSO1.OpenTextFile(strPath1, ForReading)



        iCount1 = Cint(objOpenFile1.ReadLine) + 1
        objOpenFile1.Close
     Else
        iCount1 = 1
     End if
     Set objOpenFile1 = _
         objFSO1.CreateTextFile(strPath1, True)
     objOpenFile1.WriteLine(iCount1)         
     objOpenFile1.Close
     Set objOpenFile1 = Nothing
     Set objFSO1 = Nothing
 %>

<% 
 '-------------------------------------------------------------------
elseif request.form("vote") = "3" then


     Dim objOpenFile3, objFSO3, strPath3, iCount3
    
     strPath3 = "counter3.txt"
     strPath3 = Server.MapPath(strPath3)
     Set objFSO3 = _
         Server.CreateObject("Scripting.FileSystemObject")
     If objFSO3.FileExists(strPath3) Then
        Set objOpenFile3 = _
          objFSO3.OpenTextFile(strPath3, ForReading)



        iCount3 = Cint(objOpenFile3.ReadLine) + 1
        objOpenFile3.Close
     Else
        iCount3 = 1
     End if
     Set objOpenFile3 = _
         objFSO3.CreateTextFile(strPath3, True)
     objOpenFile3.WriteLine(iCount3)         
     objOpenFile3.Close
     Set objOpenFile3 = Nothing
     Set objFSO3 = Nothing
 %>


<% 
'------------------------------------------------------------------- 
elseif request.form("vote") = "2" then


     Dim objOpenFile4, objFSO4, strPath4, iCount4
    
     strPath4 = "counter2.txt"
     strPath4 = Server.MapPath(strPath4)
     Set objFSO4 = _
         Server.CreateObject("Scripting.FileSystemObject")
     If objFSO4.FileExists(strPath4) Then
        Set objOpenFile4 = _
          objFSO4.OpenTextFile(strPath4, ForReading)



        iCount4 = Cint(objOpenFile4.ReadLine) + 1
        objOpenFile4.Close
     Else
        iCount4 = 1
     End if
     Set objOpenFile4 = _
         objFSO4.CreateTextFile(strPath4, True)
     objOpenFile4.WriteLine(iCount4)         
     objOpenFile4.Close
     Set objOpenFile4 = Nothing
     Set objFSO4 = Nothing

 %>


<% 
'------------------------------------------------------------------- 
elseif request.form("vote") = "1" then


     Dim objOpenFile5, objFSO5, strPath5, iCount5
    
     strPath5 = "counter1.txt"
     strPath5 = Server.MapPath(strPath5)
     Set objFSO5 = _
         Server.CreateObject("Scripting.FileSystemObject")
     If objFSO5.FileExists(strPath5) Then
        Set objOpenFile5 = _
          objFSO5.OpenTextFile(strPath5, ForReading)



        iCount5 = Cint(objOpenFile5.ReadLine) + 1
        objOpenFile5.Close
     Else
        iCount5 = 1
     End if
     Set objOpenFile5 = _
         objFSO5.CreateTextFile(strPath5, True)
     objOpenFile5.WriteLine(iCount5)         
     objOpenFile5.Close
     Set objOpenFile5 = Nothing
     Set objFSO5 = Nothing

 %>

<%  
end if
'------------------------------------------------------------------------------------ 
'----------------------------------------------------------------------------------- 
'----------------------------------------------------------------------------------


     Dim objOpenFile12, objFSO12, strPath12 ,icount104
    
     strPath12 = "counter4.txt"
     strPath12 = Server.MapPath(strPath12)
     Set objFSO12 = _
         Server.CreateObject("Scripting.FileSystemObject")
     If objFSO12.FileExists(strPath12) Then

        Set objOpenFile12 = _
          objFSO12.OpenTextFile(strPath12,1)

         icount104 = cint(objOpenFile12.ReadLine)

        objOpenFile12.Close

     End if
             
     Set objOpenFile12 = Nothing
     Set objFSO12 = Nothing
 %>
<BR>
<%  

     Dim objOpenFile13, objFSO13, strPath13,icount103
    
     strPath13 = "counter3.txt"
     strPath13 = Server.MapPath(strPath13)
     Set objFSO13 = _
         Server.CreateObject("Scripting.FileSystemObject")
     If objFSO13.FileExists(strPath13) Then

        Set objOpenFile13 = _
          objFSO13.OpenTextFile(strPath13,1)
         icount103 = cint(objOpenFile13.ReadLine)

        objOpenFile13.Close

     End if
             
     Set objOpenFile13 = Nothing
     Set objFSO13 = Nothing
 %>

<BR>
<%  

     Dim objOpenFile14, objFSO14, strPath14,icount102
    
     strPath14 = "counter2.txt"
     strPath14 = Server.MapPath(strPath14)
     Set objFSO14 = _
         Server.CreateObject("Scripting.FileSystemObject")
     If objFSO14.FileExists(strPath14) Then

        Set objOpenFile14 = _
          objFSO14.OpenTextFile(strPath14,1)
         icount102 = cint(objOpenFile14.ReadLine)

        objOpenFile14.Close

     End if
             
     Set objOpenFile14 = Nothing
     Set objFSO14 = Nothing

 %>
<BR>
<%  

     Dim objOpenFile15, objFSO15, strPath15,icount101
    
     strPath15 = "counter1.txt"
     strPath15 = Server.MapPath(strPath15)
     Set objFSO15 = _
         Server.CreateObject("Scripting.FileSystemObject")
     If objFSO15.FileExists(strPath15) Then

        Set objOpenFile15 = _
          objFSO15.OpenTextFile(strPath15,1)
         icount101 = cint(objOpenFile15.ReadLine)

        objOpenFile15.Close

     End if
             
     Set objOpenFile15 = Nothing
     Set objFSO15 = Nothing

 %>
<!----------------------------------------------------------------->
<!----------------------------------------------------------------->
<!----------------------------------------------------------------->
<!----------------------------------------------------------------->
<!----------------------------------------------------------------->
<!----------------------------------------------------------------->

<div align=center>

<table border=1 bordercolor=333333>

<tr valign=bottom>


<td>

<%
dim icount100
icount100 = formatnumber((icount101 + icount102 + icount103 + icount104) ) 
icount101 = formatnumber((icount101 / icount100) * 100)
icount102 = formatnumber((icount102 / icount100) * 100)
icount103 = formatnumber((icount103 / icount100) * 100)
icount104 = formatnumber((icount104 / icount100) * 100)

        response.write  ("<hr width='20' color=000000 size='" & icount101 & "'>")


%>

</td>

<td>

<%

        response.write  ("<hr width='20' color=000000 size='" & icount102 & "'>")


%>

</td>

<td>

<%

        response.write  ("<hr width='20' color=000000 size='" & icount103 & "'>")


%>

</td>
<td>

<%

        response.write  ("<hr width='20' color=000000 size='" & icount104 & "'>")


%>

</td>
</tr>


<tr valign=bottom>

<td>

<%
if (int(icount101) > int(icount102)) AND (int(icount101) > int(icount103)) AND (int(icount101) > int(icount104)) then
        response.write  ("<font face=tahoma size=1 color=red>")
else
        response.write  ("<font face=tahoma size=1 color=000000>")
end if

        response.write  ("   Bad = " & icount101 & " %</font>   ")

%>

</td>

<td>

<%
if (int(icount102) > int(icount101)) AND (int(icount102) > int(icount103)) AND (int(icount102) > int(icount104)) then
        response.write  ("<font face=tahoma size=1 color=red>")
else
        response.write  ("<font face=tahoma size=1 color=000000>")
end if

        response.write  ("   Middle = " & icount102 & " %</font>   ")

%>

</td>

<td>

<%
if (int(icount103) > int(icount102)) AND (int(icount103) > int(icount101)) AND (int(icount103) > int(icount104)) then
        response.write  ("<font face=tahoma size=1 color=red>")
else
        response.write  ("<font face=tahoma size=1 color=000000>")
end if

        response.write  ("   Good = " & icount103 & " %</font>   ")

%>

</td>
<td>

<%
if (int(icount104) > int(icount102)) AND (int(icount104) > int(icount103)) AND (int(icount104) > int(icount101)) then
        response.write  ("<font face=tahoma size=1 color=red>")
else
        response.write  ("<font face=tahoma size=1 color=000000>")
end if

        response.write  ("   Excellent = " & icount104 & " %</font>   ")

%>

</td>
</tr>
</table>
<BR><BR><BR><a href="vote.html"><font face=tahoma size=2 color=ffffff>Back to vote page</font></a>
</div>
</body>
</html>

در آخر چند توضيح :
1- بعد از ايجاد دو صفحه ,ابتدا صفحه vote.html را باز كنيد.
2- نمودار نتايج نظرسنجي بصورت درصد مي باشد.
3-براي هر 4 وضعيت( excellent,good,middle,bad ) چهار فايل text در دايركتوريي كه دو صفحه نظرسنجي و نتايج نظرسنجي را ذخيره كرديد, ايجاد مي شود.


اميدوارم اين فرم نظرسنجي براي شما مفيد واقع شود.
قربان شما AliReza26
 
آقا دستت درد نكنه
من خيلي وقت بود دنبال همچين چيزي بودم

خيلي ممنون و موفق باشي .
 

f_mostafa_f

Active Member
آقا يه سوال؟؟؟

من مورد asp اطلاعات زيادي ندارم...

به هرچي راي ميدم ميره به صفحه showvote.asp ولي من نموداري نميبينم..

من از ويندوز xp استفاده ميكنم .

البته من هنوز اين رو روي سرور تست نكردم.

اگه برتون امكان داره يه راهنمايي مارو بكنين..

يعني يه راهنمايي به ما بكنين.
 

AliReza26

Active Member
f_mostafa_f گفت:
آقا يه سوال؟؟؟

من مورد asp اطلاعات زيادي ندارم...

به هرچي راي ميدم ميره به صفحه showvote.asp ولي من نموداري نميبينم..

من از ويندوز xp استفاده ميكنم .

البته من هنوز اين رو روي سرور تست نكردم.

اگه برتون امكان داره يه راهنمايي مارو بكنين..

يعني يه راهنمايي به ما بكنين.
شما آن را بايد روي يه سرور امتحان كني.
اگر هم مي خواهي تو كامپيوترت امتحان كني بايد ابتدا شبكه محلي ات (localhost) را راه اندازي كني بعد كد ها را اجرا كني.
 

alachig

Member
آقا ايول. واقعاْ عاليه.
اول بزار امتحان بكنم. دوباره ميام واسه تشكر...
 

toranj_1455

Member
ممنون از مطلب جالبي كه فرستاديد

اگه زحمتي نيست لطف كنيد و فايل زيپ اينو بزاريد تا كساني كه علاقه دارن راحت بردارن

ممنون
عليرضا
 
جواب

آقا مرسي خيلي باحال بود
ولي يك مشكلي كه داشت اگر تعداد مثلا 30000 تا بشه اونوقت خطا ميگيره
 
جواب

آقا مرسي خيلي باحال بود
ولي يك مشكلي كه داشت اگر تعداد مثلا 30000 تا بشه اونوقت خطا ميگيره
 

جدیدترین ارسال ها

بالا