Please go to the plugin admin page to Paste your ad code OR Suppress this ad slot.
Las encuestas juegan un papel importante en nuestro sitio web, ya que a través de ellas podemos conocer la opinión de nuestros visitantes sobre algún tema determinado. Este tutorial te enseña a crear un sistema de encuestas para tu web, escrito en el lenguaje ASP.
Este ejemplo muestra como montar un sistemas de encuestas en nuestra web
Lo basamos en una bd que contendrá la pregunta y las posibles respuestas a estas, esto nos evitar tocar el código html cada vez que variemos la encuesta. Mantendremos un registro por cada encuesta y un campo en dicho registro indicara cual es la encuesta activa en ese momento.
La estructura de la tabla encuestas en la BD Tencuestas es :
Nuestra aplicación consta de 2 módulos principales( encuesta.asp y verencuesta.asp) mas un modulo de visualización de todas las encuestas (historico.asp).
Además he incluido el código de 2 módulos de mantenimiento, que nos servirán para incluir nuevas encuestas desde la web (crearencuesta.htm y crearencuesta.asp). El uso de estos módulos implica la creación en la bd de una nueva tabla para el almacenamiento de la clave de creación de encuestas.
Estructura de la tabla clave en la BD Tencuestas
Para mostrar la encuesta en una página lo haremos con un include
Lo que nos permite mostrar la encuesta en cualquier página con solo una línea de código
set rse=createobject(«ADODB.Recordset») sqltxt=»SELECT * from encuestas where activa=true» rse.open sqltxt,connae if not rse.EOF then %>
<%else rse.close end if connae.close set connae=nothing %>
verencuesta.asp
<% @LCID = 1034 %> <%response.expires=-1000%>
<% Set Conn = Server.CreateObject(«ADODB.Connection») Conn.Open(«Provider=Microsoft.Jet.OLEDB.4.0;Data Source=» & Server.MapPath(«/xxxxx/Tencuestas.mdb»))
if request.form(«opcion»)<>«» then
select case true
case request.form(«opcion»)=0 campo=»r1″ case request.form(«opcion»)=1 campo=»r2″ case request.form(«opcion»)=2 campo=»r3″ case request.form(«opcion»)=3 campo=»r4″ end select
sqltxt=»update encuestas set «&campo&» = «&campo&»+1 where activa=True»
conn.execute sqltxt end if %>
Las encuestas de AspTutor
<%if request.form("opcion")<>«» then%>
Muchas gracias por participar en la encuesta
<%end if dim colores(3) colores(0)=»red» colores(1)=»blue» colores(2)=»green» colores(3)=»black» tamatabla=400 ‘tamaño de la tabla
set rs=createobject(«ADODB.Recordset») sqltxt=»SELECT * from encuestas where activa=true» rs.open sqltxt,conn if not rs.EOF then %>
» bgcolor=»#0000FF»>
<%=rs("pregunta")%>
if totvotos< 1 then totvotos=1 for i = 0 to rs(«nopciones»)-1 step 1 %> <%porcentaje=formatnumber(rs(i+4)*100/totvotos,2)%>
style=»background-color: rgb(0,255,255)»>Histórico de encuestas
<% Set Conn = Server.CreateObject(«ADODB.Connection») Conn.Open(«Provider=Microsoft.Jet.OLEDB.4.0;Data Source=» & Server.MapPath(«/xxxxx/Tencuestas.mdb»)) dim colores(3) colores(0)=»red» colores(1)=»blue» colores(2)=»green» colores(3)=»black» tamatabla=400 ‘tamaño de la tabla
set rs=createobject(«ADODB.Recordset») sqltxt=»SELECT * from encuestas order by idencuesta desc» rs.open sqltxt,conn do while not rs.EOF%>
» bgcolor=»#0000FF»>
<%=rs("pregunta")%>
if totvotos< 1 then totvotos=1 for i = 0 to rs(«nopciones»)-1 step 1 %> <%porcentaje=formatnumber(rs(i+4)*100/totvotos,2)%>
<%=rs(i)%>
<%=porcentaje%>%
<%next
%>
Total de votos: <%=totvotos%>
<%if rs("inicio")<>«» then%>
Fecha de inicio: <%=rs("inicio")%>
<%end if%>
<%if rs("fin")<>«» then%>
Fecha de cierre: <%=formatdatetime(rs("fin"),2)%>
<%end if%>
<%rs.movenext loop rs.close set rs=nothing conn.close set conn=nothing
%>
Your ads will be inserted here by
Easy Plugin for AdSense.
Please go to the plugin admin page to Paste your ad code OR Suppress this ad slot.
<%else rs.close pregunta=trim(request.form(«pregunta»)) tr1=trim(request.form(«tr1»)) tr2=trim(request.form(«tr2»)) tr3=trim(request.form(«tr3»)) tr4=trim(request.form(«tr4»)) if request.form(«activar»)=»ON» then activar=True else activar=false end if
if tr1=»» or tr2=»» or pregunta=»» then%>
Al menos se deben ofrecer una pregunta y las alternativas 1 y 2
<% else nopciones=2 rs.CursorType = adOpenKeyset rs.LockType = adLockOptimistic rs.open «encuestas»,conn rs.addnew rs(«pregunta»)=pregunta rs(«tr1»)=tr1 rs(«r1»)=0 rs(«tr2»)=tr2 rs(«r2»)=0 if tr3 <> «» then nopciones=3 rs(«tr3»)=tr3 rs(«r3»)=0 if tr4 <> «» then nopciones=4 rs(«tr4»)=tr4 rs(«r4»)=0 end if end if rs(«nopciones»)=nopciones rs(«activa»)=activar if request.form(«activar»)=»ON» then rs(«inicio»)=date end if rs.update%>
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.