PHP - Enviar datos a MYSQL

 
Vista:

Enviar datos a MYSQL

Publicado por Juan Carlos (1 intervención) el 08/04/2006 15:39:58
Hola estoy haciendo una encuesta online, llegue al punto que no puedo meter las seleciones de los radio-buttons en la base de datos, me explico. Tengo la pagina y genero las preguntas con un codigo php que me toma las misma de la base de datos es esta:

<?php
include_once 'conexion.php';

$buscar = "select idpregunta, pregunta from preguntas order by idpregunta limit 1";
//$buscar2 = "select idpregunta, pregunta from preguntas order by idpregunta limit 10, 16";
$resultado = mysql_query($buscar,conexion());

echo "<TABLE border='1' align='center' width='65%' bordercolor='navy'>\n";
echo "<TR bgcolor='silver'>\n";
echo "<TH align='left' width='65%' colspan='4'>III.Niveles de Experticia</TH>\n";
echo "</TH>\n";
echo "<TR>\n";
//echo "<TD align='center'>N</TD>\n";
echo "<TD align='center'>Niveles</TD>\n";
echo "<TD align='center'>Bajo</TD>\n";
echo "<TD align='center'>Medio</TD>\n";
echo "<TD align='center'>Alto</TD>\n";
echo "</TR>\n";
while($row=mysql_fetch_array($resultado)){
echo "<TR>\n";
// echo "<TD>".$row["idpregunta"]."</TD>\n";
echo "<TD>".$row["pregunta"]."</TD>\n";
crear_radio($row[0]);
}

//Funcion para crear radio botones autmoticamente
function crear_radio($name){
$value = array("B","M","A");
foreach($value as $value){
echo "<td align='center'>\n";
echo "<INPUT type='radio' name='$name' value='$value'>\n";
echo "</td>\n";
}
}

?>

esto me genera lo que quiero y puedo jugar a presentar la cantidad de preguntas que me interese, alli cree una funcion para generar los radio botones, esta función le colocalo el valor de b(bajo) ,m(medio) y a(alto), ahora para el nombre de los radio botones lo que hice fue que le asignara el id que tiene la pregunta en la base de datos, asi la pregunta con id=1 en la base de datos se llama 1 con value B, M A. EStoy trancado cuando respondo, le doy al boton enviar, agrega los datos del usuario, pero se supone que lo que respondi debe ir a una tabla respuestas cosa que no hace. este es el codigo con el que envio los datos a la base de datos:

<?
include_once 'conexion.php';
//Para insertar inf Personal del usuario
$nombre = $_POST['nombre'];
$nacionalidad = $_POST['nacionalidad'];
$telefono = $_POST['tlf'];
$fax = $_POST['fax'];
$correo = $_POST['mail'];
$celular = $_POST['movil'];
$cedula = $_POST['cedula'];
$apellido= $_POST ['apellido'];
//Para datos academicos
$titulo = $_POST['titulo'];
$fecha = $_POST['dc'];
$actividad = $_POST['actividad'];
$tiempo = $_POST['tiempo'];
//Para respuestas
$idpregunta = $_POST['preguntas'];
$eleccion = $_POST['1'];

//agrego usuario
$inserta = "insert into usuario(nombre, apellido, cedula, nacionalidad, telefono,fax, correo, celular) values('$nombre','$apellido','$cedula','$nacionalidad','$telefono','$fax','$correo','$celular')";
//datos academicos
$inserta2 = "insert into academica(idusuario,fecha, actividad, antiguedad,titulo) values('$cedula','$fecha','$actividad','$tiempo','$titulo')";
//Experiencias
$inserta_resp = "insert into respuestas(idusuario,idpregunta,elegida) values('$cedula','1','$eleccion')";

$ejecuta = mysql_query($inserta,conexion());
$ejecuta = mysql_query($inserta2, conexion());
$ejecuta = mysql_query($inserta_resp, conexion());
?>

alli el problema es lo esta dando cuando tomo idpregunta hay que la tabla de respuesta tiene un idusuario, idpregunta y lo que seleccionó el usuario, ahora si coloco en idpregunta un numero como se ve en el codigo lo mete bien a la base de datos.. como puedo hacer que tome el idpregunta? estoy trancado alli hace 2 dias. Gracias por su ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder