Comunidad de diseño web y desarrollo en internet online

encuestas PHP

Citar            
MensajeEscrito el 13 Feb 2018 06:04 pm
hola a todos

estoy en un dilema con este proyecto, soy nuevo en PHP y estoy terminando un proyecto de encuestas solo que estoy muy atorado en una modificación que quiero hacer en el final del proyecto.

tengo mi código donde creo la encuesta.

Código HTML :

<section id="form">
    <form action="crearPreguntas.php" class="contact_form" method="post">
        <ul>
            <li>
                <h2>Crear Encuesta</h2>
            </li>   
            <li>
                <label for="user">Encuesta:</label>
                <input type="text" name="titulo" placeholder="Encuesta" required/>
                    
            </li>
            
            <li>
                <label for="preguntas">Preguntas:</label>
                <input type="number" name="preguntas" placeholder="Preguntas" min="0" max="15" required/>
                    
            </li>
            <li>
                <input type="submit" class="submit" value="Crear"/>
            </li>
        </ul>
    </form>
</section> 


y después donde creo las preguntas

Código PHP :

<?php 
include 'header.php'; 
//Capturamos los datos que vienen por post 
$titulo = $_POST["titulo"]; 
$preguntas = $_POST["preguntas"]; 


?> 
<section id="form"> 
    <form action="insertarPregunta.php" class="contact_form" method="post"> 
        <h3><?php echo $titulo; ?></h3> 
        <table> 
            <?php 
            //Clico for que recorre la cantidad de prguntas ingresadas 
            for ($i=1; $i <= $preguntas; $i++){ 
            
            ?> 
            <tr> 
                <td>Preguntas <?php echo $i; ?> &nbsp; 
                <input name="p<?php echo $i; ?>" type="text" size="100" maxlength="100"></td> 
                               
            </tr> 
            <?php }?> 
             
        </table><br><input class="submit" type="submit" value="Insertar"> 
          <input name="titulo" type="hidden" value="<?php echo $titulo; ?>"> 
          <input name="preguntas" type="hidden" value="<?php echo $preguntas; ?>"> 
    </form> 
</section> 
<style> 
    #center{ 
        margin: -10px; 
        padding: 0px 0px 20px; 
         
    } 
</style> 
<center id="center"> 
    <a id="pagina1" href="javascript:window.history.back();">&laquo;volver Atras</a> 
</center>


y guardo mi encuesta y mis preguntas.

Código PHP :

<?php 
$titulo = $_POST["titulo"]; 
$preguntas = $_POST["preguntas"]; 
         
//conexion con Base de datos 
require 'conexion.php'; 
//obtenemos la fecha del sistema 
$fecha_actual = date("y-m-d"); 

//insertamos la nueva encuesta 

$sql = "INSERT INTO encuestas(titulo, fecha) VALUES ('$titulo' ,'$fecha_actual')"; 
$sql = mysqli_query($conexion,$sql); 

// Ahora obtenemos la id de la encuesta que acabamos de insertat 
$sql = "SELECT id FROM encuestas ORDER BY fecha"; 
$sql = mysqli_query($conexion, $sql); 
while ($row = mysqli_fetch_array($sql)){ 
    $id = $row["id"]; 
} 
//recorremos las preguntas 
for ($i = 1; $i <= $preguntas; $i++){ 
    //Obtenemos el texto de la pregunta 
    $preg = p.$i; 
    $pas = $_POST[$preg]; 
    $texto =  $pas; 
     
    //y lo insertamos 
    $sql = "INSERT INTO respuestas(texto, idenc) VALUES ('$texto' ,'$id')"; 
    $sql = mysqli_query($conexion,$sql); 
} 
header("Location: crearEncuesta.php"); 

?>


y por ultimo muestro mi cuestionario según la selección del usuario

Código PHP :

<?php 

//capturamos la variable que viene por post del archivo ver encuesta  

$opcion = $_POST["opcion"]; 
require 'conexion.php'; 
include 'header.php'; 

//seleccionamos la encuesta de acuerdo a la variable $opcion 
$consulta = "SELECT * FROM encuestas WHERE id=$opcion"; 

//Ahora recorremos los datos Titulo, fecha, id de la encuesta seleccionada 

$consulta = mysqli_query($conexion, $consulta); 
while ($row = mysqli_fetch_array($consulta)){ 
    $titulo = $row["titulo"]; 
    $fecha = $row["fecha"]; 
    $id = $row["id"]; 
} 

?> 
<section id="form"> 
    <form action="inserVotacion.php" class="contact_form" name="form1" method="post"> 
        <table> 
            <tr> 
                <!--Mostramos el titulo de la encuesta--> 
                <td colspan="2"> <h3><?php echo $titulo; ?></h3></td> 
            <input type="hidden" name="id" value="<?php echo $id; ?>"> 
            </tr> 
            <?php 
            //consulta que captura el texto , id de la tabla respuestas 
            $sql = "SELECT texto,id FROM respuestas WHERE idenc='$id'"; 
            $sql = mysqli_query($conexion,$sql); 
            //ahora recorremos los datos texto, id que estan vinculadas a la cuenta seleccionada 
            while ($row = mysqli_fetch_array($sql)){ 
                $texto = $row["texto"]; 
                $idres = $row["id"]; 
                  
            ?> 
             
         
            <tr> 
              <!--  <td width="50"><input type="radio" name="opcion" value="<?php echo $idres; ?>" required</td> 
                <td width="470"><?php echo $texto; ?></td>--> 
                <td width="50"><?php echo $idres; ?></td> 
                <td width="470"><?php echo $texto; ?></td> 
                <td> SI <input type="radio" name="radio<?php echo $idres; ?>" value="SI"></td> 
                <td> NO <input type="radio" name="radio<?php echo $idres; ?>" value="NO"></td> 
                <td><textarea name="comentarios<?php echo $idres; ?>" rows="5" cols="20">Escribe aquí tus Hallazgos</textarea></td> 
                <td><textarea name="acciones<?php echo $idres; ?>" rows="5" cols="20">Escribe aquí tus Acciones Correctivas</textarea></td> 
            </tr> 
            <?php } ?> 
            <tr> 
                <td> 
                    <input class="submit" type="submit" value="Guardar"></input> 
                <td>Esta encuesta esta&aacute; del <?php echo $fecha; ?></td> 
                </td> 
            </tr> 
        </table> 
    </form> 
</section> 
<center> 
    <div id="paginador"> 
        <form action="grafico.php" method="post"> 
            <a id="pagina1" href="javascript:window.history.back();">&laquo; Volver Atras</a> 
            <input type="hidden" name="opcion" value="<?php echo $opcion;?>"> 
            <input class="submit" type="submit" value="Ver"></input> 
        </form> 
    </div> 
</center> 
<?php 
        include 'foother.php'; 
?>


sola mente tengo una duda al momento de guardar mi cuestionario.

en la parte de

Código PHP :

<tr> 
              <!--  <td width="50"><input type="radio" name="opcion" value="<?php echo $idres; ?>" required</td> 
                <td width="470"><?php echo $texto; ?></td>--> 
                <td width="50"><?php echo $idres; ?></td> 
                <td width="470"><?php echo $texto; ?></td> 
                <td> SI <input type="radio" name="radio<?php echo $idres; ?>" value="SI"></td> 
                <td> NO <input type="radio" name="radio<?php echo $idres; ?>" value="NO"></td> 
                <td><textarea name="comentarios<?php echo $idres; ?>" rows="5" cols="20">Escribe aquí tus Hallazgos</textarea></td> 
                <td><textarea name="acciones<?php echo $idres; ?>" rows="5" cols="20">Escribe aquí tus Acciones Correctivas</textarea></td> 
            </tr>

como puedo hacer para guardar en mi base de datos, se que tiene que ir guardando pregunta por pregunta y respuesta en un siclo pero no se como realizar esto.

estas son mis bases de datos

BD_encuestas
ID
Fecha
titulo

BD_preguntas
id
idenc
testo

BD_respuestas
id
id_pregunta
idenc
valor
accion
hallazfo
fecha

Por antoniodsanchez

0 de clabLevel



 

chrome
Citar            
MensajeEscrito el 16 Feb 2018 09:10 pm
Cual seria la duda ... podrias explicarlo sin 300 lineas de codigo?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.