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:
1 | poll_id frage recht stat text user_rechte groups view exptime answers |
Hier ist der Quellcode meiner vote.php:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 | <?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