Witam, proszę o pomoc bo szukam już tydzień i nic.
Chodzi mi o to że mam zrobioną sondę i chcę aby glosować mogli tylko goście z adresów ip np. 135.135.0.1 do 135.135.0.255 a inni jak by klikneli na głosuj to otrzymali by komunikat np. taki " Głosować mogą tylko użytkownicy naszej sieci" moja joomla to 1.5.21
PeFik
25-02-2011, 21:02
hmm, to może być trudne ponieważ większość sond np. moje ulubione AcePolls czy Apoll - można ograniczyć głosowanie " Jeden głos na jedno IP "
poza tym widać jakie IP głosowało, ale de facto musiałbyś ręcznie skasować te z innych IP.
Jest jeszcze sposób na edycje ręczną modułu, tak aby pojawił się gdy ktoś ma określone IP, ale to wymaga już ciut wiedzy
roszpunka
25-02-2011, 21:08
Wyniki mogą być dostępne dla wszystkich, tylko żeby sprawdził po kliknięci w głosuj czy spełnia warunek z ip jeśli nie to np. przekierowanie na inną stronę jeśli warunek spełniony to dodaj głos.
Może sam bym coś popisał w php (wątpie abym dał sobię radę :blink:)tylko do jakiego pliku odnosi się przycisk głosuj ??? w standardowej sądzie joomli. Może ktoś już modyfikował taki skrypt
PeFik
25-02-2011, 21:13
a nie lepiej sondę pokazać tylko tym z określonego IP, jak bym się wkurzył jakbym zaznaczył, kliknął a on mówi spadaj :podstep:
roszpunka
26-02-2011, 19:21
A w jaki sposób pokazać sondę tylko tym wybranym ???
---------- Post dodany 26-02-2011 o 09:11 ---------- Poprzedni post był 25-02-2011 o 21:18 ----------
OK, poradziłem sobie, blokuje dostęp do głosowania z innych sieci.:P
---------- Post dodany o 19:21 ---------- Poprzedni post był o 09:11 ----------
<?php
/**
* @version $Id: controller.php 14401 2010-01-26 14:10:00Z louis $
* @package Joomla
* @subpackage Polls
* @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
* @license GNU/GPL, see LICENSE.php
* Joomla! is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
/**
* Static class to hold controller functions for the Poll component
*
* @static
* @package Joomla
* @subpackage Poll
* @since 1.5
*/
class PollController extends JController
{
/**
* Method to show the search view
*
* @access publc
* @since 1.5
*/
function display()
{
JRequest::setVar('view','poll'); // force it to be the polls view
parent::display();
}
/**
* Add a vote to an option
*/
function vote()
{
global $mainframe;
// Check for request forgeries
JRequest::checkToken() or jexit( 'Invalid Token' );
$cookieName = JUtility::getHash( $mainframe->getName() . 'poll' . $poll_id );
// ToDo - may be adding those information to the session?
$voted = JRequest::getVar( $cookieName, '0', 'COOKIE', 'INT');
if ($voted || !$option_id )
{
if($voted) {
$msg = JText::_('You already voted for this poll today!');
}