Todo el mundo debe estar familiarizado con las encuestas en línea. Se dan una pregunta y varias respuestas para que los usuarios las completen, luego los resultados se guardan en la base de datos, se realizan estadísticas automáticamente y finalmente se proporciona un gráfico estadístico. En este número, sígueme y haz un sistema de encuestas en línea.
1. Diseño funcional:
¿Es necesario diseñar funcionalmente un sistema tan simple? A algunas personas les puede parecer extraño, pero dicho esto, no importa qué tipo de sistema sea, si primero haces el diseño funcional, siempre podrás tener una comprensión más clara del sistema. Echemos un vistazo a lo que pueden hacer las encuestas en línea. La función básica ya se mencionó anteriormente, que es dar una pregunta y varias respuestas, luego hacer estadísticas y finalmente dar un gráfico. Sobre esta base, podemos considerar agregar un período de tiempo (período de validez) a una encuesta. Durante este período de tiempo, la encuesta es válida. Después de este período, la encuesta finalizará automáticamente. Además, podemos especificar que un usuario solo pueda enviar respuestas una vez a la vez. Si desea ser más restrictivo, puede especificar que una IP solo pueda enviar una respuesta una vez. Sin embargo, esto solo permitirá que una persona en un cibercafé la envíe. Para las preguntas de la encuesta, algunas pueden ser preguntas de opción única y otras pueden ser preguntas de opción múltiple. Finalmente, hablemos del gráfico estadístico. En el gráfico estadístico se deben mostrar las respuestas, el número de votantes por cada respuesta y la proporción de votos por cada respuesta. Generalmente basta con utilizar un diagrama horizontal, que es más fácil de implementar. Por supuesto, si quieres cambiarlo a un diagrama vertical, también puedes hacerlo.
Ahora, con base en lo anterior, las funciones de la encuesta en línea se resumen a continuación:
1. Los datos se guardan en la base de datos de ACCESS 2000
2. Cada usuario puede votar una vez por visita
3. Las estadísticas de cada encuesta se dan y se muestran con; gráficos estadísticos
4. Cada Cada encuesta tiene una fecha de vencimiento y finaliza automáticamente después del vencimiento. Sólo se pueden ver los resultados de las encuestas completadas.
5. Los administradores pueden agregar encuestas y modificar las respuestas de las encuestas (agregar, modificar, eliminar, modificar tipo).
6. Para las encuestas que han finalizado, los administradores solo pueden eliminar la encuesta pero no pueden modificar las respuestas.
7. Solo hay un administrador (usuario único)
2. Diseño de la base de datos
Ahora diseñemos la base de datos de acuerdo con los requisitos funcionales, debe haber al menos tres tablas, una es la tabla del administrador, la segunda es la tabla de encuestas y la otra. En tercer lugar está la tabla de resultados de la encuesta. El nombre del archivo de la base de datos es Survey.mdb y se puede cambiar a .asp. Si es así, realice las modificaciones correspondientes en el programa ASP.
Tabla 1. Nombre de la tabla de la tabla del administrador: administrar
-------------------------------------------------- ---------------
Descripción de la longitud del tipo de campo
-------------------------------------------------- ---------------
Manage_id numeración automática: no se utiliza aquí, se ampliará en el futuro
administrar_nombredeusuario Texto 15 Nombre de usuario del administrador
administrar_contraseña Texto 15 Contraseña de administrador
-------------------------------------------------- ---------------
Después de crear la tabla de administración, agregue un nuevo registro y complete su nombre de usuario y contraseña de administrador. Aquí completa
la tabla xmxoxo 2. Nombre de la tabla de encuesta: encuesta.
-------------------------------------------------- ---------------
Descripción de la longitud del tipo de campo
-------------------------------------------------- ---------------
Numeración automática de Survey_id: incremental, clave primaria, indexada, sin duplicación
encuesta_pregunta texto 255 pregunta de encuesta
tipo_encuesta si - tipo, no: opción única sí: opción múltiple
Survey_stime fecha: fecha larga, hora de inicio
Survey_etime fecha: fecha larga, hora de finalización
-------------------------------------------------- ---------------
Tabla 3. Formulario de finalización de la encuesta Nombre de la tabla: encuesta_voto
------------------------- ------ ----------------------------------------
Descripción de la longitud del tipo de campo
-------------------------------------------------- ---------------
vote_no numeración automática: creciente, clave primaria, indexada y sin duplicación
vote_id entero largo - indexado y repetido, decimal 0
vote_answer Texto 100 Respuestas de la encuesta
vote_count long - número de votos
-------------------------------------------------- ---------------
Entre ellos, la tabla encuesta_voto y el campo de identificación de la tabla de encuesta tienen una relación de muchos a uno. No es necesario establecer esta relación, pero establecer una relación aclarará las ideas.
3.No se utilizan muchas funciones aquí para
incluir archivos
. Se utilizan principalmente para operar la base de datos. Si desea evitar HTML y otros códigos al ingresar, simplemente use server.htmlencode para procesarlo, por lo que no es necesario. función especialpara manejar. Podemos seguir utilizando los archivos incluidos en el artículo anterior de la serie "Aprende de mí" "Aprende de mí a hacer un menú de árbol".
Archivo de función compartido, nombre de archivo: inc.asp
<%
''************************************************ *******************
''Función ASP de base de datos común
''************************************************ *******************
''Constantes de base de datos
Databasename="survey.mdb" ''Nombre de la base de datos, si cambia el nombre, simplemente modifíquelo aquí
''************************************************ *******************
''Abrir la base de datos
sub opendb (conectar)
establecer conectar=servidor.CreateObject("ADODB.conexión")
connect.ConnectionString="DRIVER={Controlador de Microsoft Access (*.mdb)}; DBQ=" &_
server.MapPath(nombre de la base de datos)
conectar.Abrir strconn
sub final
''************************************************ *******************
''Cerrar base de datos
sub cerradob (conectar)
conectar.cerrar
establecer conectar = nada
sub final
''************************************************ *******************
''Abre una sola mesa para leer.
sub opentable(conectar,tbname,myrs)
establecer myrs=server.createobject("ADODB.recordset")
rssql="seleccione * de " & tbname
myrs.abrir rssql,conectar,1,1
sub final
''************************************************ *******************
''Cerrar la tabla temporal
sub armario(s)
rs.cerrar
establecer rs = nada
sub final
''************************************************ *******************
''Consultar base de datos
sub tabla de búsqueda (conectar, sql, rs)
establecer rs=servidor.createobject("ADODB.recordset")
rs.open sql, conectar, 1,1
fin sub
''************************************************ **********************
''Consultar y cambiar la base de datos
sub tabla de cambios (conectar, sql, rs)
establecer rs=servidor.createobject("ADODB.recordset")
rs.open sql, conectar, 1,3
fin sub
''************************************************ **********************
''Mostrar información para la depuración
Sub w (mensaje)
respuesta.escribir mensaje
fin sub
''************************************************ **********************
''Interrupción del programa para depuración
subusuario()
respuesta.fin
sub final
%>
4. Diseño de documentos
De acuerdo con el pensamiento tradicional, siempre diseñamos encuestas en línea en tres partes. La primera es mostrar el cuestionario, la segunda es mostrar los resultados estadísticos de la encuesta; En aplicaciones prácticas, encontraremos que el cuestionario suele mostrarse en una determinada página web y los resultados suelen mostrarse en una ventana emergente. Se accede a la gestión de backend a través de otro enlace o formulario de inicio de sesión. Para utilizar la encuesta en línea de manera más conveniente, escribimos la parte de mostrar el cuestionario como un script JS, de modo que la página web que necesita mostrar el cuestionario pueda llamarlo libremente haciendo referencia al script. Bien, echemos un vistazo al diseño del archivo
1. Inc.asp incluye el archivo. Biblioteca de funciones principal
2, Surveycode.asp muestra el programa de cuestionario. Utilice un script en la página web principal para llamarlo.
3. Programa de lista de cuestionarios Survey.asp. Muestra el estado de todas las investigaciones.
4. Survey_vote.asp es un programa que muestra resultados estadísticos de encuestas. Traiga parámetros para representar las preguntas bajo investigación.
5. Programa de gestión Survey_manage.asp.
Aquí, nos hemos saltado el diseño de la página, porque el diseño de estilo no es de lo que estamos hablando, por lo que con respecto al estilo, diseño, CSS, etc. de la página web, diséñelo usted mismo.
5. Flujo de archivos:
primero escriba el flujo principal del programa, lo que puede facilitar su modificación, expansión y trasplante en el futuro. Lo más importante aquí es qué subrutinas escribir en el programa y cómo organizarlas.
1. Surveycode.asp muestra el formulario de encuesta
<%
''Obtenga el parámetro de cadena de consulta, la identificación representa el número de la encuesta
''Determinar la exactitud de los parámetros
''Determinar si la investigación se encuentra dentro del período de validez.
''Lea la pregunta de la encuesta, escriba
'' Generar respuestas de encuestas y generar formularios de encuesta
''Cerrar base de datos y tablas
%>
2. Survey.asp muestra todos los estados de la encuesta
<%
''Leer la base de datos
%>
<html>
''Mostrar todos los estados de la encuesta y agregar enlaces
</html>
3. Survey_vote.asp muestra resultados estadísticos.
Aquí hay dos funciones, una es mostrar sin enviar y la otra es realizar estadísticas después de enviar la respuesta y luego mostrar el resultado. Si no hay parámetros, es la primera forma. También se puede hacer en dos archivos.
<%
''Obtener parámetros. id representa el número de la encuesta. Todos los datos provienen del formulario.
''Determine si hay parámetros, si es así, realice estadísticas primero
''Si no, se mostrará directamente.
''Subrutina estadística
%>
<html>
''Mostrar subrutina
</html>
4. Programa de gestión Survey_manage.asp.
La parte de gestión es más compleja y necesita implementar más funciones. Primero enumeremos las funciones de administración:
1) Inicio de sesión de administrador. La administración solo se puede realizar después de iniciar sesión
. 2) Cerrar sesión. Salga de forma segura cuando termine de gestionar.
La gestión de encuestas incluye:
3) Agregar una encuesta. También agregue respuestas a la encuesta
4) Modifique una encuesta. Modificar contenido, hora, tipo, contenido de las respuestas de la encuesta, agregar, eliminar
5) Eliminar una encuesta. Una encuesta en curso no se puede eliminar.
Diseñar su proceso para estas funciones
<%
''Obtener parámetros. Acción representa acción, correspondiente a las funciones anteriores.
''Redirigir a la subrutina correspondiente según la acción
''Subrutina de inicio de sesión
''Salir de la subrutina de inicio de sesión
''Ejecutar la subrutina de agregar preguntas de la encuesta
''Ejecutar la subrutina de agregar respuestas a la encuesta
''Ejecutar la subrutina de encuesta modificada para modificar las preguntas y respuestas juntas
''Ejecutar subrutina de eliminación de preguntas de la encuesta
''Ejecutar la subrutina eliminar respuesta de la encuesta
<html>
<%
'' Determine si ha iniciado sesión; de lo contrario, muestre el formulario de inicio de sesión.
''Mostrar el formulario correspondiente según la acción
''Mostrar todas las subrutinas de la encuesta
''Muestra una única subrutina de encuesta. Las preguntas y respuestas se muestran juntas.
''Mostrar la subrutina de investigación agregada.
''Mostrar formulario de inicio de sesión
%>
</html>
6. Escritura de código
Una vez finalizado el diseño del proceso, la escritura del código estará más organizada. Empecemos de forma sencilla. Antes de escribir el código, debemos ingresar algunos registros en la base de datos para realizar pruebas. Primero agregue una pregunta de la encuesta, varias respuestas de la encuesta e ingrese manualmente información estadística.
Primero escribamos Surveycode.asp para mostrar el formulario de la encuesta. Este archivo debe llamarse en otras páginas, por lo que lo escribimos en una forma mixta de JS y VBS. Al llamar, puede ponerlo en un formulario y usar la siguiente declaración:
<SCRIPT Language="JavaScript" SRC="surveycode.asp?id=1"></SCRIPT>
Siga el proceso anterior, antes de mostrar el formulario, primero determinar si la investigación existe y está en curso. Además, se debe enviar un parámetro oculto en el formulario para representar el número de pregunta (id) de la encuesta. Cuando se envía la respuesta, el número de respuesta vote_no
nombre de archivo Surveycode.asp
<!--#include file="inc. áspid" -->
<%
id=solicitud.querystring("id")
si id<>"" entonces ''si hay parámetros
opendb my '' conectarse a la base de datos
sql="seleccione * de la encuesta donde encuesta_id="& id ''declaración de consulta
tabla de búsqueda my,sql,rs ''Consultar base de datos
si no es rs.eof entonces ''Si existe este registro de investigación
question=rs("survey_question") ''Lea la pregunta
Surveytype=rs("survey_type") ''Leer el tipo de respuesta
stime=rs("survey_stime") ''Leer la hora de inicio
etime=rs("survey_etime") ''Leer la hora de finalización
closetable rs ''Cerrar mesa
si stime<now() y etime>now() entonces ''si la investigación está en progreso
''Envíe el formulario de encuesta a continuación
''Primero envíe el formulario y las preguntas, luego envíe el formulario a encuesta_vote.asp
%>
document.write("<formulario acción=''survey_vote.asp'' target=''_blank'' método=''post''>");
document.write("<table border=''1'' cellpadding=''2'' cellspaceing=0'' bordercolorligh=''#000000''");
document.write(" bordercolordark=''#ffffff'' width=''100%'' align=''center''><tbody>");
document.write("<tr><td colspan=''2'' align=''center''><b><%=server.htmlencode(question)%></b></td></tr >");
<%
sql="seleccione vote_no,vote_answer de encuesta_vote donde vote_id="&id ''SQL para consultar la respuesta
tabla de búsqueda my,sql,rs ''Ejecutar consulta
si no es rs.eof entonces ''Si hay una respuesta, envíela
para i=1 a rs.recordcount
%>
document.write("<tr><td align=''right''><input name=''res'' type=''");
<%
si es tipo de encuesta, entonces ''Juzgue el tipo, muestre selección única o selección múltiple
%>
documento.write("casilla de verificación");
<% más%>
documento.write("radio");
<%end if ''La siguiente oración genera el texto de la respuesta y el valor enviado (vote_no)%>
document.write("'' valor=<%=rs("vote_no")%>></td><td><%=rs("vote_answer")%></td></tr>");
<%
rs.movenext
próximo
''Las siguientes oraciones generan un parámetro oculto y pasan el número de pregunta (id)
'' y use una función JS para definir el enlace después de hacer clic para ver
%>
document.write("<tr><td colspan=''2'' align=''center''><tipo de entrada=''hidden'' nombre=''id'' valor=''<%=id% >''>");
document.write("<tipo de entrada=''enviar'' clase=valor del botón=''votar''> ");
document.write("<tipo de entrada=clase de botón=valor del botón=''Ver'' onclick=''jump(<%=id%>)''>");
document.write("</td></tr></tbody></table></form>");
salto de función (id) {
ventana.open("survey_vote.asp?id="+id,"encuesta")
}
<%
terminar si
terminar si
terminar si
armarios
cerrado mi
terminar si
%>
Después de completar Surveycode.asp, hemos determinado los siguientes puntos en la implementación:
1. En Survey_vote.asp, si el ID del parámetro de cadena de consulta tiene un valor, se ve el resultado.
2. En Survey_vote.asp, si el parámetro del formulario; Si la identificación tiene un valor, primero se deben realizar estadísticas;
3. En encuesta_vote.asp, el parámetro del formulario enviado res es el número de respuesta vote_no
7. Resultados estadísticos
Primero, completaremos la visualización de los resultados estadísticos encuesta_voto; estrechamente relacionado con los archivos Surveycode.asp .asp. Al final del artículo anterior, hemos explicado algunos parámetros determinados en Surveycode.asp.
Resultados estadísticos encuesta_voto.asp
<!--#include file="inc.asp" -->
<html>
<cabeza>
<title>Estadísticas de la encuesta</title>
<enlace rel="hoja de estilo" href="main.css" tipo="texto/css">
</cabeza>
<cuerpo>
<%
''En la oración anterior, primero agregue el archivo de inclusión y haga referencia a la función.
id=request.querystring("id") ''Obtener ID del parámetro de cadena de consulta
opendb my '' conectarse a la base de datos
if id="" entonces ''Si no, no estás viendo el resultado directamente.
id=request.form("id") ''Obtener ID del parámetro del formulario
if id<>"" entonces ''Si hay un valor, se debe contar primero
Surveycount() ''Llamar a subrutina estadística
terminar si
terminar si
si id<>"" entonces
disp_survey() ''No importa cuál sea, el resultado se mostrará al final
terminar si
closeb mi ''Cerrar base de datos
''-----Subrutina estadística-----
subcuenta de encuesta()
if session("survey_ok")="" entonces ''Si aún no has votado
no=request.form("res") ''Obtener el número de respuesta
si no <> "" entonces
''Defina declaraciones SQL para aumentar el número de respuestas enviadas en 1
sql="actualizar encuesta_voto establecer voto_cuenta=voto_cuenta+1 donde voto_no= en (" & no & ")"
mi.ejecutar sql
terminar si
sesión("survey_ok")="ok"
terminar si
sub final
''------------------
''---Mostrar subrutina de resultados---
sub disp_survey()
''Definir sentencias SQL para obtener preguntas de encuesta
sql="seleccione encuesta_pregunta de la encuesta donde encuesta_id=" & id
tabla de búsqueda my,sql,rs ''Ejecutar consulta
question=rs("survey_question") ''Guardar la pregunta en question
closetable rs ''Cerrar mesa
''Defina la declaración SQL y obtenga el número total de respuestas
sql="seleccione suma(voto_count) como total de encuesta_voto donde voto_id="& id
tabla de búsqueda mi,sql,rs
total=rs("total")
closetable rs ''cerrar tabla
'' define la declaración SQL y obtiene todas las partes del texto de respuesta y los números de voto
sql="seleccione respuesta_voto, recuento_voto de voto_encuesta donde id_voto=" & id
tabla de búsqueda my,sql,rs ''Ejecutar consulta
'' Lo siguiente utiliza tablas para generar tablas estadísticas.
%>
<table width="500" border="1" align="center" cellpadding="2" cellspace="0"
bordercolorligh="#000000" bordercolordark="#ffffff">
<tr>
<td colspan="4" align="center"><b>Estadísticas de la encuesta</b></td>
</tr>
<tr>
<td colspan="4"><b>Pregunta de la encuesta: <%=question%></b></td>
</tr>
<tr>
<td width="150" align="center" height="20">Respuesta</td>
<td width="150" align="center" height="20">Participación electoral</td>
<td width="100" align="center" height="20">Proporción</td>
<td width="100" align="center" height="20">Número de votos</td>
</tr>
<%hacer mientras no sea rs.eof
si total = 0 entonces
percent=0 ''Si nadie vota, el porcentaje es 0
demás
percent=int(rs("vote_count")/total*10000)/100 ''Calcular porcentaje
terminar si
%>
<tr>
<td width="150" align="center"><%=rs("vote_answer")%></td>
<td ancho="150" align="izquierda">
<table border="0" width="<%=percent%>" bgcolor="#CCCC00" height="10">
<tr>
<td></td>
</tr>
</tabla>
</td>
<td width="100" align="center"><%=percent%>%</td>
<td width="100" align="center"><%=rs("vote_count")%></td>
</tr>
<%
rs.movenext
bucle
%>
<tr>
<td colspan="4"> Hay <%=total%> votos al <%=now()%>
<a href="javascript:window.close()">Cerrar ventana</a>
</td>
</tr>
</tabla>
<%
closetable rs ''Cerrar mesa
sub final
''------------------
%>
</cuerpo>
</html>
En el proceso de mostrar el voto, utilizamos la variable de sesión encuesta_ok para indicar si el voto se ha emitido. Además, estas estadísticas de visualización hacen referencia a archivos CSS para controlar el estilo de la tabla. Puede agregarlas usted mismo según sus propios requisitos.
8. Enumerar el estado de todas las encuestas
Ahora completemos encuesta.asp. Su tarea principal es enumerar el estado de todas las encuestas, incluyendo:
1. Preguntas de la encuesta, vinculadas a la página del formulario de votación (escritas directamente en esta página)
; La hora de inicio de la encuesta;
3. La hora de finalización de la encuesta;
4. El estado de la encuesta: no iniciada, en curso, finalizada;
5. El número de votos de la encuesta
; elección o opción múltiple;
7. También proporcione un enlace para ver los resultados de la votación;
de acuerdo con estos requisitos, simplemente consulte la tabla correspondiente. Algunas declaraciones, como obtener el número total de votos, las declaraciones SQL realmente se han escrito en encuesta_voto. áspid arriba.
Enumerar el estado de todas las encuestas encuesta.asp
<!--#include file="inc.asp" -->
<html>
<cabeza>
<title>Lista de encuestas en línea</title>
<enlace rel="hoja de estilo" href="main.css" tipo="texto/css">
</cabeza>
<cuerpo>
<%
id=request.querystring("id") ''Obtener parámetros
if id<>"" entonces ''Si hay parámetros, muestre este formulario de encuesta
respuesta.write "<SCRIPT Language=''JavaScript'' SRC=''surveycode.asp?id="&id&"''></SCRIPT>"
else '' De lo contrario, llame a la subrutina para mostrar el estado
disstat()
finalizar si
''-----Mostrar subrutina de estado----
subdistante()
opendb my '' conectarse a la base de datos
opentable my,"survey",rs ''Abrir la tabla directamente
''A continuación se utiliza una tabla para mostrar cada registro.
''Mostrar encabezado primero
%>
<table width="760" border="1" cellspace="0" cellpadding="2"
align="centro" bordercolorligh="#000000" bordercolordark="#ffffff">
<tr>
<td colspan="8" align="center"><b>Lista de encuestas en línea</b></td>
</tr>
<tr>
<td width="50" align="center" height="20">Número</td>
<td width="200" align="center" height="20">Preguntas de la encuesta</td>
<td width="50" align="center" height="20">Tipo</td>
<td width="140" align="center" height="20">Hora de inicio</td>
<td width="140" align="center" height="20">Hora de finalización</td>
<td width="50" align="center" height="20">Estado</td>
<td width="80" align="center" height="20">Número de votos emitidos</td>
<td width="50" align="center" height="20">Ver</td>
</tr>
<%
''Genere cada registro a continuación
hacer mientras no rs.eof
''Lea cada campo primero
id=rs("id_encuesta")
pregunta=rs("encuesta_pregunta")
''Tipo de lectura
si rs("tipo_encuesta") entonces
estilo="Selección múltiple"
demás
estilo = "elección única"
terminar si
tiempo=rs("tiempo_encuesta")
etime=rs("encuesta_etime")
''Estado del juicio
si ahora()<hora entonces
estadística="no iniciado"
demás
si ahora <e tiempo entonces
estadística="en progreso"
demás
estadística="Terminado"
terminar si
end if
''Defina la declaración SQL y obtenga el número total de respuestas
sql="seleccione suma(voto_count) como total de encuesta_voto donde voto_id="& id
tabla de búsqueda mi,sql,tmprs ''consulta
total=tmprs("total")
tmprs que se pueden cerrar ''Cerrar tabla
''Generar un registro a continuación
%>
<tr>
<td align="center" height="20"><%=id%></td>
<td altura="20">
<a href="survey.asp?id=<%=id%>"><%=question%></a>
</td>
<td align="center" height="20"><%=stype%></td>
<td align="center" height="20"><%=stime%></td>
<td align="center" height="20"><%=etime%></td>
<td align="center" height="20"><%=stat%></td>
<td align="center" height="20"><%=total%></td>
<td align="centro" altura="20">
<a href="survey_vote.asp?id=<%=id%>" target="_blank">Ver</a>
</td>
</tr>
<%
rs.movenext ''Pasar al siguiente elemento, bucle
bucle
%>
</tabla>
<%
closetable rs ''Cerrar mesa
closeb my ''Cerrar la base de datos
sub final
''----------------------
%>
</cuerpo>
</html>
9. Administración de backend
En la página de administración de backend Survey_manage.asp, ya hemos enumerado las funciones de administración que desea lograr. El proceso de gestión es mostrar primero todas las investigaciones para las investigaciones que aún no han comenzado, puede modificarlas o eliminarlas; para las investigaciones que han finalizado, puede eliminarlas pero no puede modificarlas para las investigaciones en curso, solo puede modificar su finalización; tiempo. Utilice una acción de parámetro para representar la acción, el significado es el siguiente:
1. Sin parámetros. Indica la primera vez que ingresa, muestra el formulario de inicio de sesión
2, iniciar sesión significa ejecutar el inicio de sesión
3, cerrar sesión significa ejecutar el cierre de sesión
4, mostraraddquestion significa mostrar una encuesta adicional
5, mostrar encuesta significa mostrar una encuesta
6, doaddsurvey significa ejecutar la adición de una encuesta
7, doaddanswer significa ejecutar Agregar una respuesta
8. dodelsurvey significa eliminar una encuesta
9. dodelanswer significa eliminar una respuesta
10. domodify significa modificar una encuesta y responder