Foros del Web » Programando para Internet » PHP »

Encuesta,, no tabla

Estas en el tema de Encuesta,, no tabla en el foro de PHP en Foros del Web. Hola, tengo estos archivos para una encuesta: admin.php Código PHP: <? include ( "funciones.php" ); ?> <link href="estilo.css" rel="stylesheet" type="text/css"> <table border="1" bordercolor="000000" cellspacing="0" width="300" align="center" bgcolor="FFFFFF"> <tr> <th bgcolor="000000"  class="up">Encuesta!</th> </tr> <tr> <td> <table width="100%">         <tr>           <td> ...
  #1 (permalink)  
Antiguo 22/04/2007, 12:53
 
Fecha de Ingreso: febrero-2006
Mensajes: 858
Antigüedad: 18 años, 9 meses
Puntos: 4
Encuesta,, no tabla

Hola, tengo estos archivos para una encuesta:

admin.php
Código PHP:
<?
include ("funciones.php");
?>
<link href="estilo.css" rel="stylesheet" type="text/css">

<table border="1" bordercolor="000000" cellspacing="0" width="300" align="center" bgcolor="FFFFFF">
<tr>
<th bgcolor="000000"  class="up">Encuesta!</th>
</tr>
<tr>
<td>
<table width="100%">
        <tr>
          <td>
<?
if($_POST['submit'] && $_POST['accion'] == 'titulo'){
?>
    <table border=0 cellspacing="0">
    <form action="admin.php" method="POST" name="f1">
    <tr><td>Titulo de la encuesta:</td><td><input type="text" name="titulo" value="<? echo $_POST['titulo'];?>" readonly></td></tr>
    <input type="hidden" name="titulo" value="<? echo $_POST['titulo'];?>">
    <input type="hidden" name="cantidad" value="<? echo $_POST['cantidad'];?>">
<?
$cantidad 
$_POST['cantidad'];
$i 1;
while(
$i <= $cantidad){
  echo 
"<tr><td>Opción $i</td><td><input type='text' name='$i'></td></tr>";
  
$i++;
}
?>
    <tr><td><input type="hidden" name="accion" value="opciones"></td><td><input type="submit" name="submit"   value="Siguiente" class="botones"></td></tr>
    </form>
    </table>
<?
}else{
    if(
$_POST['submit'] && $_POST['accion'] = 'opciones'){
        
$conexion conectar();
        
$cantidad $_POST['cantidad'];
        
$i 1;
        
$sql "insert into encuestas(titulo) values('$_POST[titulo]')";
        
$res query($sql);
        
$id obtener_titulo_id();
        while(
$i <= $cantidad){
            
$sql "insert into preguntas(encuesta, pregunta, votos) values($id,'$_POST[$i]',0)";
            
query($sql);
            
$i++;
        }
        
desconectar($conexion);
        echo 
"Grabando Datos...";
        
redireccionar(2,'encuestas.php');
    }else{
?>
<table border=0 cellspacing="0">
<form action="admin.php" method="POST" name="f1">
<tr><td>Titulo de la encuesta:</td><td><input type="text" name="titulo"></td></tr>
<tr><td>Cantidad de opciones:</td><td><input type="text" name="cantidad" size="3" maxlengtH="3"></td></tr>
<tr><td><input type="hidden" name="accion" value="titulo"></td><td><input type="submit" name="submit" value="Siguiente" class="botones"></td></tr>
</form>
</table>
<?
    
}
}
?>
          </td>
        </tr>
</table>
</td>
</tr>
</table>
encuestas.php
Código PHP:
<?
include("funciones.php");
?>
<link href="estilo.css" rel="stylesheet" type="text/css">
<script>
function set_cookie(){
    document.encuestas.submit()
    //abrir();
}

function abrir() {
    window.open("setear.php",'1','width=10,height=10');
}
</script>

<table border="1" bordercolor="000000" cellspacing="0" width="200" align="center" bgcolor="FFFFFF">
<tr>
<th bgcolor="000000"  class="up">Encuesta!</th>
</tr>
<tr>
<td>
<table width="100%">
        <tr>
          <td>
<table border=0 cellspacing="0">
<?
$conexion 
conectar();
$cook $_COOKIE['votot'];
$encuesta $_POST['encuesta'];
$pregunta $_POST['pregunta'];
if(
$cook == ""){
    if(
$encuesta == "" && $pregunta == ""){
        echo 
"<form name='encuestas' action='$_SERVER[PHP_SELF]' method='POST'>";
        echo 
obtener_titulo();
        echo 
obtener_preguntas();
        echo 
"<tr><td align='right'><input type='button' value='Votar' class='botones' OnClick='set_cookie()'></td></tr>";
        echo 
"</form>";
    }else{
        
update($encuesta,$pregunta);
    }
}else{
    echo 
mostrar_resultados();
    echo 
"<tr><td>Ya has votado gracias</td></tr>";
}
desconectar($conexion);
?>
</table>
          </td>
        </tr>
</table>
</td>
</tr>
</table>
<br><br>
<center><a href="admin.php">[Agregar una encuesta]</a></center>
estilo.
body {

scrollbar-face-color: gray;
scrollbar-highlight-color: ffffff;
scrollbar-shadow-color: black;
scrollbar-3dlight-color: white;
scrollbar-arrow-color: white;
scrollbar-track-color: gray;
scrollbar-darkshadow-color: gray;
font-family: Verdana;
font-size: 10px;
color: #FFFFFF;
}
body,td,th {
font-family: Verdana;
font-size: 10px;
color: #000000;
}
a:link {
color: #000000;
text-decoration:none;
}
a:visited {
color: #000000;
text-decoration:none;
}
a:hover {
color: #000000;
text-decoration:none;
}
a:active {
color: #000000;
text-decoration:none;
}
.botones {
font-family: Verdana;
font-size: 8pt;
color: #000000;
background-color: white;
border-color: gray;
border-top-width: 1pix;
border-right-width: 1pix;
border-bottom-width: 1pix;
border-left-width: 1pix
}
.td {
border: #000000;
border-style: solid;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 0px;
border-left-width: 1px;
background-color: #FFFFFF
}

.td1 {
border: #000000;
border-style: solid;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 0px;
border-left-width: 1px;
background-color: #F0F0F0;
}
.copyrght{
font-family: Verdana;
font-size: 10px;
color: #ffffff;
}
.titulo{
background-color: #cdcec1;
}
.general{
font-family: Verdana;
font-size: 10px;
color: #000000;
}

.up{
font-family: Verdana;
font-size: 10px;
color: #FFFFFF;
background-color: #000000;
}

funciones.php

Código PHP:
<?
$id 
0;
$preguntas['0'] = "";
function 
conectar(){
    
$host "localhost";
    
$usuariodb "usuario";
    
$pwddb "contraseña*";
    
$db "base";
    
$enlace mysql_connect($host,$usuariodb,$pwddb);
    if (!
$enlace) {
        die(
'No conectado: ' mysql_error());
    }
    
$seldb mysql_select_db($db,$enlace);
    if (!
$seldb) {
        die (
'No se puede usar $db: ' mysql_error());
    }
    return 
$enlace;
}

function 
desconectar($conexion){
    
mysql_close($conexion);
}

function 
query($sql){
    
$res mysql_query($sql) or die (mysql_error());
    return 
$res;
}

function 
obtener_titulo(){
    
$id obtener_titulo_id();
    
$sql "select titulo from encuestas where id = $id";
    
$res query($sql);
    
$fila mysql_fetch_array($res);
    
$id $fila['id'];
    
$titulo "<tr><td>".$fila['titulo']."</td></tr>";
    return 
$titulo;
}

function 
obtener_titulo_id(){
    
$sql "select max(id) as id from encuestas";
    
$res query($sql);
    
$fila mysql_fetch_array($res);
    
$id $fila['id'];
    return 
$id;
}

function 
obtener_preguntas(){
    
$id obtener_titulo_id();
    
$sql "select id, pregunta from preguntas where encuesta = $id order by id";
    
$res query($sql);
    while(
$fila mysql_fetch_array($res)){
        echo 
"<tr><td><input type='radio' name='pregunta' value='".$fila['id']."'>".$fila['pregunta']."</td></tr>";
    }
    echo 
"<input type=hidden name='encuesta' value='$id'>";
}

function 
total_votos($id){
    
$sql "select sum(votos) as cantidad from preguntas where encuesta = $id";
    
$res query($sql);
    
$fila mysql_fetch_array($res);
    return 
$fila['cantidad'];
}

function 
mostrar_resultados(){
    
$id obtener_titulo_id();
    
$total_votos total_votos($id);
    echo 
"<tr><td><B>".obtener_titulo()."</B></td></tr>";
    
$sql "select pregunta, votos from preguntas where encuesta = $id";
    
$res query($sql);
    if(
$total_votos 0){
            while(
$fila mysql_fetch_array($res)){
                
$graf = ($fila['votos'] * 100) / $total_votos;
                
$graf round($graf);
                echo 
"<tr><td>".$fila['pregunta']." - ".$graf."% ".$fila['votos']." V </td></tr>";
                echo 
"<tr><td><table border=0><tr><td bgcolor='FF0000' width='$graf' height=5></td></tr></table></td></tr>";
        }
    }else{
              
$graf 0;
            while(
$fila mysql_fetch_array($res)){
                echo 
"<tr><td>".$fila['pregunta']." - ".$graf."% ".$fila['votos']." V </td></tr>";
                   echo 
"<tr><td><table border=0><tr><td bgcolor='FF0000' width='$graf' height=5></td></tr></table></td></tr>";
        }
    }
}

function 
obtener_votos($encuesta,$pregunta){
    
$sql "select votos from preguntas where encuesta = '$encuesta' and id = '$pregunta'";
    
$res query($sql);
    
$votos mysql_fetch_array($res);
    return 
$votos['votos'];
}

function 
update($encuesta,$pregunta){
    
$votos obtener_votos($encuesta,$pregunta);
    
$votos++;
    
$sql "UPDATE preguntas SET votos = $votos where encuesta = '$encuesta' and id = '$pregunta'";
    
$res query($sql);
    if(
$res){
        echo 
"Procesando...";
        
redireccionar('1','setear.php');
    }else{
        echo 
"Error al actualizar la Base de datos.";
    }
}

function 
redireccionar($time,$url){
    print 
"<meta http-equiv=Refresh content=\"$time ; url=$url\">";
}

?>
setear.php
Código PHP:
<?php
include("funciones.php");
$conexion conectar();
$id obtener_titulo_id();
//setcookie("voto", votaste, time()+86400,"/","");
setcookie("votot"$idtime()+60000,"/","");
desconectar($conexion);
redireccionar(0,'encuestas.php');
?>

pero entonces me faltan las dos tablas :

preguntas, y respuestas.. pero no se como hacerlas.. alguien me las podria pasar

saludos
__________________
*La amistad se multiplica cuando se divide*
  #2 (permalink)  
Antiguo 22/04/2007, 14:54
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 19 años, 4 meses
Puntos: 6
Re: Encuesta,, no tabla

Cita:
Iniciado por reimonfranco Ver Mensaje
pero entonces me faltan las dos tablas :

preguntas, y respuestas.. pero no se como hacerlas.. alguien me las podria pasar

saludos
reimonfranco, la gente que desee ayudarte va a poner el mismo empeño que vos pusiste al hacer tu consulta Se mas especifico, explica mejor, se mas claro, ayuda a quien te quiera ayudar y por sobre todas las cosas... no pegues tanto codigo esperando que alguien te resuelva el problema completo... no se si conseguiras una persona que te lo resuelva todo, pero lo que estoy seuro es que asi no aprenderás mucho,

Saludos.
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #3 (permalink)  
Antiguo 22/04/2007, 18:48
 
Fecha de Ingreso: febrero-2006
Mensajes: 858
Antigüedad: 18 años, 9 meses
Puntos: 4
Re: Encuesta,, no tabla

bueno,, entonces vamos al nabo,, como hago una encuesta?
__________________
*La amistad se multiplica cuando se divide*
  #4 (permalink)  
Antiguo 22/04/2007, 18:52
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 19 años, 4 meses
Puntos: 6
Re: Encuesta,, no tabla

Cita:
Iniciado por reimonfranco Ver Mensaje
bueno,, entonces vamos al nabo,, como hago una encuesta?
Con conocimientos, PHP y algun lugar donde guardar información (base de datos, archivos, etc).

Saludos
__________________
Federico.

Mi página: www.jourmoly.com.ar
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 22:07.