Página 1 de 2
Encuesta En El Index_body
Publicado: 16 Oct 2006, 20:42
por cporty
Bueno, aquí va una de mis preguntitas: ¿se puede poner una encuesta en el index_body.php?
Si entrais en mi foro, podeis ver un video de youtube pues en vez de eso, poder poner una encuesta...
Creo que es algo raro, pero bueno, me parecería bastante util (para mi..)
Un saludo!
Respuesta: Encuesta En El Index_body
Publicado: 16 Oct 2006, 20:56
por ThE KuKa
En su dia alguien hizo esa misma pregunta en tomatoma.WS es mas, la hizo Pauso (y creo que no me equivoco) y consegui "algo" por el estilo en el sitio de pruebas "antiguo"
Miro a ver si lo encuentro... y vuelvo.
S@lu2
Respuesta: Encuesta En El Index_body
Publicado: 16 Oct 2006, 20:59
por ThE KuKa
Hay esta en el index.php o integrada en index_body.tpl
http://www.elcuaderno.info/thekuka/testeo/index.php
Miro el codigo...
Respuesta: Encuesta En El Index_body
Publicado: 16 Oct 2006, 21:18
por ThE KuKa
A ver si "tira"
Abre el archivo
index.php
Buscar:
Código: Seleccionar todo
//
// Generate the page
//
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
Antes Añadir:
Código: Seleccionar todo
//
// Encuesta en el Indice de los Foros
//
$fetchpoll = phpbb_fetch_poll($CFG['poll_forum']);
if (!empty($fetchpoll))
{
$template->assign_vars(array(
'S_POLL_QUESTION' => $fetchpoll['vote_text'],
'S_POLL_ACTION' => append_sid('posting.'.$phpEx.'?'.POST_TOPIC_URL.'='.$fetchpoll['topic_id']),
'S_TOPIC_ID' => $fetchpoll['topic_id'],
'L_SUBMIT_VOTE' => $lang['Submit_vote'],
'L_LOGIN_TO_VOTE' => $lang['Login_to_vote']
)
);
for ($i = 0; $i < count($fetchpoll['options']); $i++)
{
$template->assign_block_vars('poll_option_row', array(
'OPTION_ID' => $fetchpoll['options'][$i]['vote_option_id'],
'OPTION_TEXT' => $fetchpoll['options'][$i]['vote_option_text'],
'VOTE_RESULT' => $fetchpoll['options'][$i]['vote_result'],
)
);
}
}
else
{
$template->assign_vars(array(
'S_POLL_QUESTION' => $lang['No_poll'],
'DISABLED' => 'disabled="disabled"'
)
);
}
Abre el archivo
/templates/tu_plantilla/index_body.tpl
Buscar:
Código: Seleccionar todo
<tr>
<td align="left" valign="top"><span class="gensmall">{L_ONLINE_EXPLAIN}</span></td>
</tr>
Antes Añadir:
Código: Seleccionar todo
<form method="post" action="{S_POLL_ACTION}">
<table width="100%" cellpadding="2" cellspacing="1" border="0" class="forumline">
<tr>
<td class="catHead" height="25"><span class="genmed"><b>{L_POLL}</b></span></td>
</tr>
<tr>
<td class="row1" align="left">
<div align="center" class="gensmall"><b>{S_POLL_QUESTION}</b></div><br />
<!-- BEGIN poll_option_row -->
<input type="radio" name="vote_id" value="{poll_option_row.OPTION_ID}" /><span class="gensmall">{poll_option_row.OPTION_TEXT} [{poll_option_row.VOTE_RESULT}]</span><br />
<!-- END poll_option_row -->
<br />
<!-- BEGIN switch_user_logged_out -->
<div align="center">{L_LOGIN_TO_VOTE}</div>
<!-- END switch_user_logged_out -->
<!-- BEGIN switch_user_logged_in -->
<div align="center" class="gensmall"><input type="submit" class="mainoption" name="submit" value="{L_VOTE_BUTTON}" {DISABLED} /></div>
<input type="hidden" name="topic_id" value="{S_TOPIC_ID}" />
<input type="hidden" name="mode" value="vote" />
<!-- END switch_user_logged_in -->
<br />
</td>
</tr>
</table>
</form>
Abre el archivo
language/lang_spanish/lang_main.php
Buscar:
Antes Añadir:
Código: Seleccionar todo
$lang['Poll'] = 'Encuesta';
$lang['Login_to_vote'] = 'Debe identificarse para Votar';
$lang['Vote'] = 'Votar';
$lang['No_poll'] = 'No hay Encuesta en este momento';
A ver si hay suerte...
S@lu2
Respuesta: Encuesta En El Index_body
Publicado: 16 Oct 2006, 22:23
por cporty
Ya veo que no hay nada imposible para vosotros... Lo probaré en cuento pueda, ya os diré algo!
Gracias de nuevo!!!
Respuesta: Encuesta En El Index_body
Publicado: 17 Oct 2006, 19:36
por cporty
Una duda que me ha surgido al leer el código que hay que añadir, como apunto yo a una encuesta? Donde pongo el ID?
Otra cosa, si quiero que la encuesta sea pública (que un invitado pueda votar) y esa encuesta la he creado en un foro donde solo puede votar un registrado, estando ésta en el index, se rige por los permisos del foro donde se halla la encuesta?
Espero haberme explicado bien.
Un saludo!
Respuesta: Encuesta En El Index_body
Publicado: 18 Oct 2006, 10:56
por cporty
Entonces, no sabeis como hacerlo???
Espero respuesta!
Respuesta: Encuesta En El Index_body
Publicado: 18 Oct 2006, 11:38
por Quecomo
Hola:
Me interesa este tema y por tanto intenté instalarlo en mi foro de pruebas que tengo en localhost.
Me sale este error:
Código: Seleccionar todo
Fatal error: Call to undefined function: phpbb_fetch_poll() in d:\easyphp1-8\www\phpbb2\index.php on line 481
En Line 481 pone:
He revisado mis cambios dos veces y está puesta como indica pero que va, no me sale bien.
¿Tienes idea de a que se puede deber esto?
Un saludo,
Wily.
Respuesta: Encuesta En El Index_body
Publicado: 18 Oct 2006, 11:41
por Duque de Illumbe
A mi me sucede lo mismo, en este caso en la línea 480, pero siendo el mismo error.
Respuesta: Encuesta En El Index_body
Publicado: 20 Oct 2006, 13:31
por cporty
Lo preguntaré en otros foros y si tengo alguna solución, la pondré aquí!
Respuesta: Encuesta En El Index_body
Publicado: 20 Oct 2006, 13:58
por Quecomo
Buena idea,
A ver si tienes suerte y te encuentras con alguien que te lo puede decir.
Un saludo.

Respuesta: Encuesta En El Index_body
Publicado: 20 Oct 2006, 17:24
por mitch
No será necesario, me hize un tiempo y ya lo logré. Deben agregar estos "cambios".
Abrir:
/includes/functions.php
Buscar:
Añadir Antes:
Código: Seleccionar todo
function phpbb_fetch_poll($forum_sql)
{
global $db;
$sql = 'SELECT
t.*,
vd.*
FROM
' . TOPICS_TABLE . ' AS t,
' . VOTE_DESC_TABLE . ' AS vd
WHERE
t.forum_id IN (' . $forum_sql . ') AND
t.topic_status <> 1 AND
t.topic_status <> 2 AND
t.topic_vote = 1 AND
t.topic_id = vd.topic_id
ORDER BY
t.topic_time DESC
LIMIT
0,1';
if (!$query = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not query poll information', '', __LINE__, __FILE__, $sql);
}
$result = $db->sql_fetchrow($query);
if ($result)
{
$sql = 'SELECT
*
FROM
' . VOTE_RESULTS_TABLE . '
WHERE
vote_id = ' . $result['vote_id'] . '
ORDER BY
vote_option_id';
if (!$query = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not query vote result information', '', __LINE__, __FILE__, $sql);
}
while ($row = $db->sql_fetchrow($query))
{
$result['options'][] = $row;
}
}
return $result;
} // end func phpbb_fetch_poll
Abrir:
index.php
Buscar:
Agregar Antes:
Código: Seleccionar todo
// ID de los foros de los que se obtendrán las encuestas: Separa por comas si eliges varios foros. Ejemplo: '3'
$CFG['poll_forum'] = '7';
(ese 7 es de ejemplo, en mi foro de pruebas, el foro con encuestas tiene la ID numero 7).
Buscar (lo encontrarán si ya instalaron lo puesto por Kuka en el primer mensaje):
Agregar Antes:
Código: Seleccionar todo
'L_POLL' => $lang['Poll'],
'L_VOTE_BUTTON' => $lang['Submit_vote'],
Eso, prueben esos cambios y me comentan... en mi foro al menos va de pelos

Luego de que lo comprueben, edito el primer mensaje (con el permiso de The Kuka

) para que quede todo claro para futuros usuarios. Me comentan! nos vemos.
Respuesta: Encuesta En El Index_body
Publicado: 23 Oct 2006, 12:54
por cporty
Ya me he puesto manos a la obra, en cuanto lo tenga todo, os pongo si me funciona o no...
Un saludo y muchísimas gracias!
Respuesta: Encuesta En El Index_body
Publicado: 23 Oct 2006, 13:09
por cporty
Pues siento decirte que me sale este error:
Código: Seleccionar todo
Fatal error: Call to a member function sql_query() on a non-object in /home/posimob/public_html/porty/includes/functions.php on line 964
P.D He vuelto a subir los archivos del backup que me hice...
Respuesta: Encuesta En El Index_body
Publicado: 23 Oct 2006, 20:07
por ThE KuKa
En el sitio de pruebas de Mitch, esta funcionado perfectamente... revisar el codigo.
Por otro lado, se me quedo el tema colgado, perdona
cporty, y gracias Mitch por continuar tu man!
S@lu2