News:

SMF 2.1.4 has been released! Take it for a spin! Read more.

Main Menu

SSI showpoll() ongelma

Started by tohtori, August 02, 2007, 06:04:11 PM

Previous topic - Next topic

tohtori

Olen tehnyt foorumille SSI etusivun.

Lisäsin sivulle showPoll funktiolla viimeisimmän pollin foorumilta.

Ongelma on se, että se antaa ainoastaan Adminien äänestää ja muille se näyttää vain äänestyksen tulokset.

Koodina käytän seuraavaa:
global $db_prefix;
$request = db_query("
  SELECT ID_TOPIC
  FROM {$db_prefix}topics
  WHERE ID_POLL != 0
  ORDER BY ID_TOPIC DESC", __FILE__, __LINE__);
if (mysql_num_rows($request) != 0)
{
  list ($ID_POLL_TOPIC) = mysql_fetch_row($request);
  ssi_showPoll($ID_POLL_TOPIC);
}


Onko kellään ideoita, miksi ainoastaan adminit saavat tuota kautta äänestää ja muut eivät. Testasin asiaa vielä globaalien modejen oikeuksilla, mutta ei toiminut.

tohtori

Eipä tarvitse apua enää. Sain toimimaan suurinpiirtein miten halusinkin. Ainut ongelma tulee eteen kun viimeisin Poll on postattu alueelle mihin käyttäjällä ei ole lukuoikeuksia.

Jos nyt jotain kiinnostaa niin koodinpätkä on seuraavanlainen:
global $db_prefix;
$kayttaja = $context['user']['id'];
// Haetaan viimeisin viesti missä on POLL
$request = db_query("
  SELECT ID_TOPIC, ID_POLL
  FROM {$db_prefix}topics
  WHERE ID_POLL != 0
  ORDER BY ID_TOPIC DESC LIMIT 1", __FILE__, __LINE__);
while ($row = mysql_fetch_array($request)) {
$POLL_ID = $row["ID_POLL"];
$ID_POLL_TOPIC = $row['ID_TOPIC'];
}
if (mysql_num_rows($request) != 0) {
// Katsotaan onko käyttäjä jo vastannut siihen
$request2 = db_query("SELECT * FROM {$db_prefix}log_polls WHERE ID_POLL = $POLL_ID AND ID_MEMBER = $kayttaja", __FILE__, __LINE__);

$num_rows = mysql_num_rows($request2);

if($num_rows == NULL) {
ssi_recentPoll();
} else {
ssi_showPoll($ID_POLL_TOPIC);
}
}

Advertisement: