Ich habe auch eine Mod gezogen, doch es funktioniert nicht (mehr). Es hat mal funktioniert, doch ich weiß nicht, warum es jetzt nicht klappt.
Meldung: Du hast leider nicht die nötigen Rechte... :-S
Ich habe "Zugriff auf nicht im Menü verlinkte Module für alle?" Mit ja abgeharkt.
Installierte Mod: Erweiterte Umfrage 1.4
Ich habe folgende Felder in der Tabelle polls:
poll_id frage recht stat text user_rechte groups view exptime answers
Hier ist der Quellcode meiner vote.php:
<?php # Copyright by: Manuel Staechele # Support: www.ilch.de # Modified by Mairu -> Erweiterte Umfrage 1.3 # include/contents/vote.php defined ('main') or die ( 'no direct access' ); //-----------------------------------------------------------| ## ### #### ##### ins vote $um = $menu->get(1); $info = ''; if ($menu->getA(1) == 'W') { $poll_id = escape ($menu->getE(1), 'integer'); $fraRow = db_fetch_object(db_query("SELECT * FROM prefix_poll WHERE poll_id = '".$poll_id."'")); $vote = true; if ($fraRow->answers <= 1) { $radio = ' = '.escape ($_POST['radio'], 'integer'); } else { if ($fraRow->answers < count($_POST['radio'])) { $vote = false; $info = '<span style="color:red; font-size: 16px; font-weight:bold;">Es sind maximal '.$fraRow->answers.' Antworten möglich</span><br />'; } else { $radio = ' IN ('; foreach ($_POST['radio'] as $k => $v) { $radio .= escape($_POST['radio'][$k],'integer').','; } $radio = substr($radio,0,-1).')'; } } if ($fraRow->exptime != 0 AND $fraRow->exptime < time()) { db_query("UPDATE `prefix_poll` SET stat = 0 WHERE poll_id = $poll_id"); } elseif ($vote) { $textAr = explode('#',$fraRow->text); if ($fraRow->recht == 2) { $inTextAr = $_SESSION['authid']; } elseif ($fraRow->recht == 1) { $inTextAr = $_SERVER['REMOTE_ADDR']; } if ( !in_array ( $inTextAr , $textAr ) ) { $textAr[] = $inTextAr; $textArString = implode('#',$textAr); db_query('UPDATE `prefix_poll` SET text = "'.$textArString.'" WHERE poll_id = "'.$poll_id.'"'); db_query('UPDATE `prefix_poll_res` SET res = res + 1 WHERE poll_id = "'.$poll_id.'" AND sort '.$radio) or die (mysql_error()); } } } ## ### #### ##### V o t e Ü b e r s i c h t $title = $allgAr['title'].' :: '.$lang['vote']; $hmenu = $lang['vote']; $design = new design ( $title , $hmenu ); $design->header(); echo $info; ?> <table width="100%" cellpadding="2" cellspacing="1" border="0" class="border"> <tr class="Chead"> <td><b><?php $lang['vote']; ?></b></td> </tr> <?php $breite = 200; if ($_SESSION['authright'] <= -1 ) { $woR = '>= "1"'; } else { $woR = '= "1"'; } $limit = 5; // Limit $zaehler = 0; $page = ( $menu->getA(1) == 'p' ? $menu->getE(1) : 1 ); $MPL = db_make_sites ($page , '' , $limit , "?vote" , 'poll' ); $anfang = ($page - 1) * $limit; $class = ''; $erg = db_query('SELECT * FROM `prefix_poll` ORDER BY stat DESC, poll_id DESC LIMIT '.$anfang.',10000000'); while ($zaehler < $limit AND $fraRow = db_fetch_object($erg)) { $maxRow = db_fetch_object(db_query('SELECT MAX(res) as res FROM `prefix_poll_res` WHERE poll_id = "'.$fraRow->poll_id.'"')); $gesRow = db_fetch_object(db_query('SELECT SUM(res) as res FROM `prefix_poll_res` WHERE poll_id = "'.$fraRow->poll_id.'"')); $max = $maxRow->res; $ges = $gesRow->res; $textAr = explode('#',$fraRow->text); if ($fraRow->recht == 2) { $inTextAr = $_SESSION['authid']; } elseif ($fraRow->recht == 1) { $inTextAr = $_SERVER['REMOTE_ADDR']; } if ($fraRow->user_rechte == '') $fraRow->user_rechte = '0123456789'; if (!empty($fraRow->groups)) { $votegroups = explode('#', $fraRow->groups); foreach ($_SESSION['authgrp'] as $id => $authgroup) if (in_array($id, $votegroups)) $abstimmen = true; if (strpos($fraRow->user_rechte,''.abs($_SESSION['authright'])) === false) $abstimmen = false; } elseif (strpos($fraRow->user_rechte,''.abs($_SESSION['authright'])) !== false) $abstimmen = true; else $abstimmen = false; if (( in_array ( $inTextAr , $textAr ) OR $fraRow->stat == 0) OR (!$abstimmen)) { $imPollArrayDrin = true; } elseif ($abstimmen) { $imPollArrayDrin = false; } if (!$imPollArrayDrin OR $fraRow->view >= $_SESSION['authright']) { $zaehler++; echo '<tr><td class="Cdark"><b>'.$fraRow->frage.($fraRow->answers > 1 ? " ($fraRow->answers Antworten möglich)" : '').'</b>'; if ($fraRow->stat == 0 ) { echo ' (geschlossen)'; } elseif ($fraRow->exptime > 0) { echo ' (bis '.date('H.i \U\h\r - d.m.Y',$fraRow->exptime).')'; } echo '</td></tr>'; if ( $class == 'Cnorm' ) { $class = 'Cmite'; } else { $class = 'Cnorm'; } echo '<tr><td class="'.$class.'">'; if ($imPollArrayDrin) { echo '<table width="100%" cellpadding="0">'; } else { echo '<form action="index.php?vote-W'.$fraRow->poll_id.'" method="POST">'; } $i = 0; $pollErg = db_query('SELECT antw, res, sort FROM `prefix_poll_res` WHERE poll_id = "'.$fraRow->poll_id.'" ORDER BY sort'); while ( $pollRow = db_fetch_object($pollErg) ) { if ( $imPollArrayDrin ) { if ( !empty($pollRow->res) ) { $weite = ($pollRow->res / $max) * 200; $prozent = $pollRow->res * 100 / $ges; $prozent = round($prozent,0); } else { $weite = 0; $prozent = 0; } $tbweite = $weite + 20; echo '<tr><td width="30%">'.$pollRow->antw.'</td>'; echo '<td width="50%">'; /* '<table width="'.$tbweite.'" border="0" cellpadding="0" cellspacing="0"></td>'; echo '<tr><td width="10" height="10"></td>'; echo '<td width="'.$weite.'" background="include/images/vote/voteMitte.jpg" alt=""></td>'; echo '<td width="10"><img src="include/images/vote/voteRight.jpg" alt=""></td>'; echo '</tr></table>';*/ echo '<div style="height: 10px; width: ' . $weite .'px; background: #3776a5 url(include/images/vote/voteMitte.png) repeat-y top left;">'. '</div>'; echo '<td width="10%">'.$prozent.'%</td>'; echo '<td width="20%" align="right">'.$pollRow->res.'</td></tr>'; } else { $i++; if ($fraRow->answers <= 1) { echo '<input type="radio" id="vote'.$i.'" name="radio" value="'.$pollRow->sort.'"><label for="vote'.$i.'"> '.$pollRow->antw.'</label><br>'; } else { echo '<input type="checkbox" id="vote'.$i.'" name="radio[]" value="'.$pollRow->sort.'"><label for="vote'.$i.'"> '.$pollRow->antw.'</label><br>'; } } } if ( $imPollArrayDrin ) { echo '<tr><td colspan="2" align="right">'.$lang['whole'].': '.$ges.'</td></tr></table>'; } else { echo '<p align="center"><input type="submit" value="'.$lang['formsub'].'"></p></form>'; } echo '</td></tr>'; } }// end while echo '<tr><td class="Cdark" align="center">'. $MPL .'</td></tr></table>'; $design->footer(); ?>
Ich hoffe auf eure Hilfe!!!
verwendete ilchClan Version: 1.1
betroffene Homepage: nmgc.de