Foros del Web » Programando para Internet » PHP »

Almacenamiento Respuestas de Survey

Estas en el tema de Almacenamiento Respuestas de Survey en el foro de PHP en Foros del Web. A ver si alguien me puede ayudar. La cuestión es la siguiente: Yo tengo que generar una "encuesta", para esto debo sacar las preguntas de ...
  #1 (permalink)  
Antiguo 16/08/2004, 22:25
 
Fecha de Ingreso: julio-2004
Mensajes: 2
Antigüedad: 19 años, 9 meses
Puntos: 0
Almacenamiento Respuestas de Survey

A ver si alguien me puede ayudar. La cuestión es la siguiente:

Yo tengo que generar una "encuesta", para esto debo sacar las preguntas de una base de datos; esta encuesta es para evaluar si algun tipo de informacion esta llegando a los destinatarios, es decir de una base de datos yo saco aleatoriamente 5 preguntas de algunos de los temas tratados; algo asi como "Sabias que los cerditos no sudan??" SI o NO con un chekbox cada uno y un espacio de caja de texto para el caso de que si lo supieran, como se enteraron.(no tengo una tabla con preguntas fijas es decir las preguntas las necesito generar con base a los temas que se hayan tratado en un determinado periodo de tiempo) estas preguntas no son las mismas siempre, son variables, dependiendo del tema que se hable, yo tengo que generar la encuesta, eso si las respuestas solo son SI, NO y en caso de que si, por que medio de informacion se entero del tema.

AHora estoy haciendo lo siguiente:

$n=1;
while(!$res->EOF){

$i = $res->Fields('subjectid');
$myMedia = new Form (array(
"name" => "media",
"font_size" => "10pt"));
?>
<table>
<tr>
<td><b><? echo $n.".-".$we[$i] = $res->Fields('subject')?> </b></font></td>
</tr>
<tr>
<td colspan="2">
A) No <input type="checkbox" name="<?echo "no".$i?>" value="no"></font></td>
</tr>
<tr>
<td colspan="2">B) Yes <input type="checkbox"
name="<?echo "yes".$i?>" value="yes"></font></td>
</tr>
<tr>
<td><font face="Trebuchet MS" color="black"><b>What media did you get the information?</b></font></td>
<td><?$myMedia->TextInput();?></td>
</tr>
</table>
<center><b>------------------</b></center>
<br>
<? $n ++;
$res->MoveNext();
}
?>

Asi saco las preguntas y eso creo que lo tengo bien, pero ahora como le hago para pasar estas variables a otra pagina para poder hacer insercion a la base de datos???? O hay alguna forma mas facil de hacer esto??
Si alguien me puede ayudar, lo agradeceria bastante.
  #2 (permalink)  
Antiguo 17/08/2004, 06:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Deberías usar en principio en lugar de checkbox . ."radio" con el mismo nombre .. por qué .. la respuesta es SI o NO (no es: si y no ... o si o no .. o incluso ninguna).

<input type="radio" name="respuesta" value="yes">
<input type="radio" name="respuesta" value="no">

Pero .. como tienes una série de preguntas .. tendras que generar dichos "bloques de radios" como arrays del tipo:

Código PHP:
<input type="radio" name="respuesta[<? echo $n ?>]" value="yes">
<input type="radio" name="respuesta[<? echo $n ?>]" value="no">
($n o $i como indice de tu array .. será el indentificador de tu pregunta (ID o lo que corresponda).

Así en PHP recibiras un array en "respuesta" del tipo:

$respuesta[1]="yes";
$respuesta[2]="no";
$respuesta[?]="valor";

La cual puedes recorrer con un array:

Código PHP:
foreach($_POST['respuesta'] as $pregunta=>$res){
  echo 
$pregunta." - ".$res;
  
// y por aquí podrías hacer ya tu INSERT ... 

Bueno .. y recuerda que todos esos "input" han de estar bajo un formulario <form ... > .. </form> (y en modo POST o GET (method) ...)

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:49.