Página 1 de 1

Hacer Encuestas Publicas

Publicado: 02 Oct 2006, 08:39
por dmassive
Busco algun MOD o tip para poder mostrar quienes votaron y por cual opcion, como las encuestas de vBulletin. Que cualquier usuario pueda ver los votos.

Muchas Gracias por la Ayuda!

Respuesta: Hacer Encuestas Publicas

Publicado: 02 Oct 2006, 11:51
por cporty
Te dejo este link para que veas todos los MODs de encuestas que puedes añadirle a tu foro:

http://www.phpbbhacks.com/searchresults ... rch_type=1

Un saludo!

P.D Si no entiendes el ingles, preguntamelo.

Respuesta: Hacer Encuestas Publicas

Publicado: 02 Oct 2006, 11:53
por cporty
Ojo, antes de preguntar leete las normas.

Para poder pedir soporte debes de darnos los datos de tu foro.

Mientras tanto, no te podremos dar soporte.

Respuesta: Hacer Encuestas Publicas

Publicado: 02 Oct 2006, 12:04
por SuperNovato
cporty, los datos los tiene en su perfil :?

Re: Respuesta: Hacer Encuestas Publicas

Publicado: 02 Oct 2006, 16:27
por dmassive
Te dejo este link para que veas todos los MODs de encuestas que puedes añadirle a tu foro:

http://www.phpbbhacks.com/searchresults ... rch_type=1 Ya he probado todos esos y ninguno hace lo que estoy buscando, por eso recurri a preguntar. :oops:


Y sobre la plantilla:
[quote]
URL: http://www.peaches.com.ar/site/ogame/foro/index.php (link directo)
Plantilla(s) usuada(s): subSilver
MODs instalados: Prune Users y The Humanizer.
Version de phpBB: 2.0.21
Servidor: Pago
Si es una actualizacion desde otra version: No
Si es una conversion desde otro tipo de Foro: No
Especificar lo mejor posible el problema, copiando y pegando el error de tu sitio: No hay error
Relizando una Busqueda antes de preguntar en cualquiera de los foros: Ya la hice.[/quoteicy]

Re: Respuesta: Hacer Encuestas Publicas

Publicado: 02 Oct 2006, 17:22
por cporty
cporty, los datos los tiene en su perfil :? Perdona, es que tenia el foro en version loFi y no veia la firma.

Respecto a lo del MOD para la encuesta, no te se decir, a ver si alguno de aquí te puede ayudar.

Un saludo!

Respuesta: Hacer Encuestas Publicas

Publicado: 03 Oct 2006, 03:00
por dmassive
No he visto ningun foro PHPBB que lo tenga, puede que no exista o que simplemente al administrador no le interese que cualquiera pueda ver los votos. :?

Respuesta: Hacer Encuestas Publicas

Publicado: 03 Oct 2006, 04:58
por mitch
dmassive, he leído que eso no se ha implementado, ni en phpbb de "serie" ni en MOD's, ya que esto va en contra de la privacidad de cada usuario. Si bien es cierto, en la BD se almacena esa info, es con el fin de evitar que los usuarios puedan votar por más de una opción, o votar 2 veces. Es cómo cualquier votación, es privada, los demás no deberían poder saber por cuál opción vote.

Ahora, hay un MOD diseñado para que el administrador pueda ver esta información desde el ACP: http://www.phpbb.com/phpBB/viewtopic.php?t=37631 (está en fase BETA, y se recomienda avisar a los usuarios de esta medida, por el mismo tema de la privacidad).

Tambien en un post de phpbb.com vi un código en PHP que muestra todas las encuestas, el total de votos para cada opción de cada encuesta, y la lista de quienes votaron (pero no qué opcion eligió cada uno). Solo funciona para admins y mods si no me equivoco, y en una página PHP aparte. Creas un archivo php cualquiera (votaciones.php por ejemplo) con este contenido:
Spoiler

Código: Seleccionar todo

<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//

if($userdata['user_level'] == 0)
{
  exit;
}

$sql = "SELECT vote_id, vote_user_id FROM " . VOTE_USERS_TABLE;
if( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not query vote users table', '', __LINE__, __FILE__, $sql);
}

$vote_user_rows = array();
while( $vote_user_rows[] = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);

$sql = "SELECT vote_id, topic_id, vote_text FROM " . VOTE_DESC_TABLE;
if( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not query vote desc table', '', __LINE__, __FILE__, $sql);
}

$vote_desc_rows = array();
while( $vote_desc_rows[] = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);

$sql = "SELECT * FROM " . VOTE_RESULTS_TABLE;
if( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql);
}

$vote_results_rows = array();
while( $vote_results_rows[] = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);

$sql = "SELECT user_id, username FROM " . USERS_TABLE;
if( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not query users table', '', __LINE__, __FILE__, $sql);
}

$user_rows = array();
while( $user_rows[] = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);

unset($vote_desc_rows[count($vote_desc_rows)-1]);
unset($vote_results_rows[count($vote_results_rows)-1]);
unset($vote_user_rows[count($vote_user_rows)-1]);
unset($user_rows[count($user_rows)-1]);

if(isset($HTTP_GET_VARS['t']))
{
  $set = true;
}
else
{
  $set = false;
}

foreach($vote_desc_rows as $a)
{
  $vote_id = $a['vote_id'];
  $vote_text = $a['vote_text'];
  $topic_id = $a['topic_id'];
  $vote_option_text = array();
  $vote_result = array();
  $users_voted = array();
  $voters = 'Voters:';
  if($set && $topic_id != $HTTP_GET_VARS['t'])
  {
    $vote_id = -1;
  }
 
  foreach($vote_results_rows as $b)
  {
    if($b['vote_id'] == $vote_id)
    {
      $vote_option_text[] = $b['vote_option_text'];
      $vote_result[] = $b['vote_result'];
    }
  }
 
  foreach($vote_user_rows as $c)
  {
    if($c['vote_id'] == $vote_id)
    {
      foreach($user_rows as $d)
      {
        if($c['vote_user_id'] == $d['user_id'])
        {
          $users_voted[] = $d['username'];
        }
      }
    }
  }
 
  if($vote_id > 0)
  {
?>
<table align="center">
  <tr>
    <th style="color: red;font-size: x-large;" colspan="2">
      <center><?php echo $vote_text; ?></center>
    </th>
  </tr>
<?php
  foreach($vote_option_text as $e => $f)
  {
?>
  <tr>
    <th style="color: red;" align="left">
      <?php echo $f; ?>&nbsp;&nbsp;&nbsp;
    </th>
    <th style="color: red;" align="right">
      &nbsp;&nbsp;&nbsp;<?php echo $vote_result[$e]; ?>
    </th>
  </tr>
<?php
    if($e < count($vote_option_text)-1)
    {
?>
  <tr>
    <td colspan="2" style="height: 1px; background-color: black;">
    </td>
  </tr>
<?php
    }
  }
?>
  <tr>
    <td colspan="2">
      <span style="font-size: 9px; font-weight: bold;"><?php echo $voters; ?></span>
    </td>
  </tr>
<?php
  foreach($users_voted as $g)
  {
?>
  <tr>
    <td colspan="2">
      <?php echo $g; ?>
    </td>
  </tr>
<?php
  }
?>
</table>
<br /><br /><br />
<?php
  }
  unset($vote_result);
  unset($vote_option_text);
  unset($users_voted);
}
?>
Lo subes a la raíz del foro, y lo ejecutas desde tu navegador. Se puede mejorar (aspecto) e incluso para que lo vean todos, y tal vez mostrar qué opcion eligió cada uno, pero ya habría que tocar el código, y al menos yo estoy en contra de eso, por el tema de privacidad, te lo dejo por si te interesa.

Eso fue lo que encontré, y estoy de acuerdo con eso... al menos yo lo pensaría 2 veces antes de votar, sabiendo que en ese foro los demás pueden ver cuál opcion elegí. Saludos y suerte.

Respuesta: Hacer Encuestas Publicas

Publicado: 03 Oct 2006, 05:12
por mitch
Hmmm, seguí buscando, y encontré este MOD: http://www.phpbb.com/phpBB/viewtopic.php?t=389862
En el mismo tema, se daba un login y pass de prueba (http://soapergem.myboard.info/sample/index.php - user:demo/pass:demo) y entré a ver que tal el MOD.
Cliqueando en "Detailed Results/Undo Votes", me di cuenta de que se muestran las opciones de la encuesta, con el total de votos de cada opción y los usuarios que han votado -> http://soapergem.myboard.info/sample/vo ... ?vote_id=1

Y como está validado por la gente de phpbb (o sea, dentro de la lista de mods oficiales, dejó de ser BETA y fue aceptado por el equipo), decidí comentarlo acá. Además de esta opcion (de ver quienes han votado), tiene muchas otras opciones que allí mismo se mencionan. Nos vemos!

PD: Tal vez haga la traducción del MOD, trae buenas opciones y si fue validado, que mejor, estaría bien tenerlo disponible en español y que cada uno eliga.

Edito: Dicho y hecho http://www.phpbb-es.com/foro/advanced-v ... t6591.html