Visualizza post

Questa sezione ti permette di visualizzare tutti i post inviati da questo utente. N.B: puoi vedere solo i post relativi alle aree dove hai l'accesso.


Post - MisterNo

Pagine: 1 [2]
21
Ci sono riuscito!! Sbagliavo la funzione che recuperava il valore del numero di utenti dal database... Ecco il codice funzionante, se vi può interessare...  :P

File mosreglimit.xml

Codice: [Seleziona]
<description>
<![CDATA[
<b>RegistrationLimit</b> vi permette di definire il numero massimo di utenti che possono registrarsi.

]]>
</description>
<files>
<filename mambot="mosreglimit">mosreglimit.php</filename>
</files>
<params>
<param name="maxreguser" type="text" label="Numero massimo di utenti che possono registrarsi al sito" description="Inserite il numero massimo di utenti che possono registrarsi al sito."/>
<param name="maxregusermsg" type="text" default="Spiacente, è stato raggiunto il numero massimo di utenti che possono registrarsi" label="Messaggio di errore quando si raggiunge il numero massimo di utenti registrati al sito" description="Testo da mostrare quando è stato raggiunto il numero massimo di registrazioni consentite."/>
</params>
</mosinstall>

File MosRegLimit.php:

Codice: [Seleziona]
<?php

/*

RegistrationLimit 1.0 vi permette di definire il numero massimo di 
utenti che si possono registrare.

*/

defined'_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );

$_MAMBOTS->registerFunction'onStart''botRegLimit' );

function 
botRegLimit() {
// Prima controllo se c'è qualcosa da fare
$option strtolower (strval(  mosGetParam$_REQUEST'option' ) ) );
$task strtolower (strval(  mosGetParam$_REQUEST'task' ) ) );
if(!in_array($option, array('com_registration''com_comprofiler')) || $task!='saveregistration') return true;

global $database;

// carica i parametri dal mambot mosreglimit, definiti nel file xml
$query "SELECT params FROM #__mambots WHERE element = 'mosreglimit' AND folder = 'system'";
// assegna alla variabile database il valore di $query
$database->setQuery$query );
// carica il mambot
$database->loadObject($mambot); 
$botParams = new mosParameters$mambot->params );

// la query che ritorna il numero di utenti attualmente registrati, chiamiamo la variabile $numuser
    $sql "SELECT COUNT('id') FROM `#__users`";
$database->setQuery$sql );
$numuser $database->loadResult($sql);
$botParams = new mosParameters$mambot->params );
// definisce il messaggio di errore
        
$msg $botParams->def('maxregusermsg');
// assegna a $maxreguser il valore impostato nel file xml 
        
$maxreguser $botParams->get('maxreguser');
if ($numuser >= $maxreguser) {
mosErrorAlert($msg);
}
}
?>


22
Prova con il componente Jim  8)

23
Ho provato a modificare il mambot mosregblocker per adattarlo alla mia esigenza,ecco il codice:

File mosreglimit.xml:(omettendo la parte di installazione)
Codice: [Seleziona]
<files>
<filename mambot="mosreglimit">mosreglimit.php</filename>
</files>
<params>
<param name="maxreguser" type="text" default="" label="Numero massimo di utenti che possono registrarsi al sito" description="Inserite il numero massimo di utenti che possono registrarsi al sito."/>
<param name="maxregusermsg" type="text" default="Spiacente, è stato raggiunto il numero massimo di utenti che possono registrarsi" label="Messaggio di errore quando si raggiunge il numero massimo di utenti registrati al sito" description="Testo da mostrare quando è stato raggiunto il numero massimo di registrazioni consentite."/>
</params>
</mosinstall>

file mosreglimit.php:

Codice: [Seleziona]
<?php

/*

RegistrationLimit 1.0 vi permette di definire il numero massimo di 
utenti che si possono registrare.

*/
defined'_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );

$_MAMBOTS->registerFunction'onStart''botRegLimit' );

function 
botRegLimit() {
// Prima controllo se c'è qualcosa da fare
$option strtolower (strval(  mosGetParam$_REQUEST'option' ) ) );
$task strtolower (strval(  mosGetParam$_REQUEST'task' ) ) );
if(!in_array($option, array('com_registration''com_comprofiler')) || $task!='saveregistration') return true;

global $database;

// carica i parametri dal mambot mosreglimit, definiti nel file xml
$query "SELECT params FROM jos_mambots WHERE element = 'mosreglimit' AND folder = 'system'";
// assegna alla variabile database il valore di $query
$database->setQuery$query );
// carica il mambot
$database->loadObject($mambot); 
$botParams = new mosParameters$mambot->params );
// assegna a $maxreguser il valore impostato nel file xml 
$maxreguser $botParams->def('maxreguser');
// la query che ritorna il numero di utenti attualmente registrati, chiamiamo la variabile $numuser
    $id "SELECT COUNT('id') FROM `jos_users`";
$database->setQuery$id );
$numuser $id;
$database->loadObject($mambot);
// definisce il messaggio di errore
        
$msg $botParams->def('maxregusermsg');
if ($numuser $maxreguser) {
mosErrorAlert($msg);
} return 
true;
}
?>


Ora sono riuscito a far apparire il messaggio di errore, solo che ho un altro problema... Ho 2 utenti registrati, e come numero massimo di utenti che possono registrarsi ho messo 3, quindi la finestra di segnalazione errore dovrebbe comparire quando il 4° utente prova a registrarsi, e non il terzo.. Se vado a cambiare il valore maxreguser non ne tiene conto e dà sempre lo stesso messaggio... Qualche idea?  ???

24
Eventualmente prova a vedere se c'è qualche estensione: http://extensions.joomla.org/

Non ricordo ma qualcosa c'è sulle registrazioni  ;)

Ho guardato ma non ho trovato nulla che faccia al caso mio.. Se ti viene in mente qualcosa fammi sapere
Grazie ;)

25
Grazie del consiglio, purtroppo sono ancora un novizio del php, non so bene come scrivere il controllo.. Ho fatto la query al database così:

"SELECT COUNT('id') FROM `jos_users`"; e l'ho assegnata a una variabile $numuser, poi dovrei confrontare questo numero appena trovato con quello di un'altra variabile $maxreguser , alla quale dò il valore massimo di utenti che possono registrarsi giusto?
E alla fine con un if effettuo il controllo...

26
Prova a installare questo mambot http://extensions.joomla.org/component/option,com_mtree/task,viewlink/link_id,1356/Itemid,35/
si chiama registration blocker, ti permette di bloccare usernames o indirizzi email non desiderati, anche tramite wildcards..

27
Salve a tutti, vorrei sapere se esiste un modo per limitare il numero di registrazioni in joomla, in modo che ad esempio dopo tot utenti registrati al tot+1 appaia un messaggio del tipo "numero massimo di registrazioni raggiunto"
Ho provato a modificare il codice del mambot mosregblocker, che ha  le funzionalità di blocco utenti un base a nome utente e email che si inseriscono nel mambot,ma invano.. qualche suggerimento?
Grazie

28
Prova questo, io l'ho installato e va abbastanza bene , si chiama Site Messenger http://www.sonerekici.com/index.php?option=com_content&task=view&id=14

29
Salve, ho un problema con la visualizzazione delle categorie Articoli sul sito che sto rifacendo (http://lnx.salsamarchestyle.com/), praticamente su firefox la visualizzazione è corretta, mentre su internet explorer quando vado su una categoria di articoli qualsiasi la pagina mi viene visualizzata tutta spostata in basso.. Qualcuno ha idea di come posso risolvere questo problema?
Dimenticavo il template che uso è un rhuk_solarflare_ii modificato, e in locale il sito viene visualizzato correttamente!!!(stesso template)
Grazie

30
Non conosco Joomla in ogni suo minimo dettaglio, ma da un mesetto ci sto trafficando e l'inglese lo so abbastanza... Quindi se vi serve una mano io ci sono!! ;)

31
Una domanda per chi già utilizza phpadsnew, come faccio a impostare la visualizzazione a rotazione di due o più banner su una stessa zona? grazie

33
Fatto! Ma come sempre mai che mi va al primo colpo! Di seguito l'output di errore quando carico il componente:

Errore SQL DB function failed with error number 1067
Invalid default value for 'border_value' SQL=CREATE TABLE `jos_artbanners` ( `id` int(11) NOT NULL auto_increment, `cid` int(11) NOT NULL default '0', `tid` int(11) NOT NULL default '0', `type` varchar(10) NOT NULL default 'banner', `name` varchar(50) NOT NULL default '', `imp_total` int(11) NOT NULL default '0', `imp_made` int(11) NOT NULL default '0', `clicks` int(11) NOT NULL default '0', `image_url` varchar(100) NOT NULL default '', `click_url` varchar(200) NOT NULL default '', `state` tinyint(1) NOT NULL default '0', `default` tinyint(1) NOT NULL default '0', `custom_banner_code` text, `last_show` datetime NOT NULL default '0000-00-00 00:00:00', `msec` int(11) NOT NULL default '0', `checked_out` int(11) unsigned NOT NULL default '0', `checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00', `publish_up` datetime NOT NULL default '0000-00-00 00:00:00', `publish_down` datetime NOT NULL default '0000-00-00 00:00:00', `reccurtype` tinyint(1) NOT NULL default '0', `reccurday` tinyint(1) NOT NULL default '0', `reccurweekdays` varchar(100) NOT NULL default '', `access` int(11) NOT NULL default '0', `target` varchar(15) NOT NULL default '', `border_value` int(11) NOT NULL default '', `border_style` varchar(11) NOT NULL default '', `border_color` varchar(11) NOT NULL default '', `click_value` varchar(10) NOT NULL default '', `complete_clicks` int(11) NOT NULL default '', `imp_value` varchar(10) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=InnoDB;
SQL =

CREATE TABLE `jos_artbanners` (
  `id` int(11) NOT NULL auto_increment,
  `cid` int(11) NOT NULL default '0',
  `tid` int(11) NOT NULL default '0',
  `type` varchar(10) NOT NULL default 'banner',
  `name` varchar(50) NOT NULL default '',
  `imp_total` int(11) NOT NULL default '0',
  `imp_made` int(11) NOT NULL default '0',
  `clicks` int(11) NOT NULL default '0',
  `image_url` varchar(100) NOT NULL default '',
  `click_url` varchar(200) NOT NULL default '',
  `state` tinyint(1) NOT NULL default '0',
  `default` tinyint(1) NOT NULL default '0',
  `custom_banner_code` text,
  `last_show` datetime NOT NULL default '0000-00-00 00:00:00',
  `msec` int(11) NOT NULL default '0',
  `checked_out` int(11) unsigned NOT NULL default '0',
  `checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
  `publish_up` datetime NOT NULL default '0000-00-00 00:00:00',
  `publish_down` datetime NOT NULL default '0000-00-00 00:00:00',
  `reccurtype` tinyint(1) NOT NULL default '0',
  `reccurday` tinyint(1) NOT NULL default '0',
  `reccurweekdays` varchar(100) NOT NULL default '',
  `access` int(11) NOT NULL default '0',
  `target` varchar(15) NOT NULL default '',
  `border_value` int(11) NOT NULL default '',
  `border_style` varchar(11) NOT NULL default '',
  `border_color` varchar(11) NOT NULL default '',
  `click_value` varchar(10) NOT NULL default '',
  `complete_clicks` int(11) NOT NULL default '',
  `imp_value` varchar(10) NOT NULL default '',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM;

Ho risolto quest'errore settando le righe `border_value` int(11) NOT NULL default '', e   `click_value` varchar(10) NOT NULL default '', a 0, ma ora quando vado su gestione banners del componente mi viene fuori quest'altro errore...

Fatal error: Non-static method MENU_Default::MENU_Default() cannot be called statically in /var/www/anti-riciclaggio.biz/joomla/administrator/components/com_artbanners/toolbar.artbanners.php on line 63

Qualcuno ha suggerimenti?

34
Dà lo stesso identico errore anche a me... Qualcuno sa da cosa può dipendere oppure può indicarmi un componente che ha le stesse funzionalità di artbanners? in particolare la visualizzazione dei banner a rotazione.. Grazie!

Pagine: 1 [2]
Host

Torna su