• Come allineare le opzioni utente

    Nei forum piccoli e grandi si presenta regolarmente la necessità di dover reimpostare prima a uno poi agli utenti loro opzioni, perché trovano più semplice chiedere che provare di prima mano. Spesso, questo genere di utente non teme di inviare le richieste non solo nel forum, ma anche tramite email e contatti, fin quando non si esegue.



    Ci sono poi momenti dove arrivano talmente tante richieste di questo genere che si decide di farlo per tutti, soprattutto quando si è fatto un aggiornamento o un trasloco di forum.

    La procedura in sé è semplicissima: si apre un account di utente di prova, si imposta con tutte le caratteristiche desiderate, si collauda e poi? Poi si va un attimo nell'area dei professionisti, il database ...

    Generalmente si eseguono le query esclusivamente da phpMyAdmin, ma per aggiornare le opzioni si può anche fare l'eccezione e usare l'equivalente direttamente da vBulletin. Tuttavia, per poter aggiornare il database, è necessario impostare, nel file config.php, il parametro seguente:

    • $config['SpecialUsers']['canrunqueries'] = ''; - Questo valore contiene una lista di utenti, ad esempio '1,2,3', che possono eseguire query dall'area manutenzione. E' un permesso molto rischioso e non si dovrebbe concedere a nessun utente.

    All'occasione prendiamo anche nota del prefisso tabelle, che ci serve più tardi. Una volta impostato il parametro e salvato il file config.php dovremmo essere in grado di accedere all'area Manutenzione - Esegui Query SQL:



    Prima di tutto, dobbiamo conoscere l'opzione del nostro utente di prova, e scriviamo nella finestra la query per ricavare i dati necessari:

    Codice:
    SELECT * FROM user WHERE username='nostro utente di prova'
    Se le tabelle hanno prefissi (e assumiamo che sia 'vb3_', scriviamo invece:

    Codice:
    SELECT * FROM vb3_user WHERE username='nostro utente di prova'


    Quando abbiamo sbagliato nome utente o altro, appare il seguente o simile messaggio:



    Poiché ci interessano alcuni gruppi di parametri, andiamo a trovarli:








    Ora possiamo creare la query:

    UPDATE user SET daysprune='-1', timezoneoffset='1', pmpopup='0', options='45645271', startofweek='2', emailstamp='0', threadedmode='0', autosubscribe='-1' WHERE userid<>11 AND usergroup=2

    In esteso e tradotto significa:

    Aggiora la tabella user con la visualizzazione di tutte le discussioni, l'ora locale a GMT+1, disabilita i popup se ci sono messaggi privati nuovi, imposta tutte le opzioni personalizzate (come da pannello di controllo), inizia la settimana al Lunedì, nascondi l'indirizzo email, disabilita la modalità ad elenco in lista forum e sottoscrivi le discussioni automaticamente, dove l'utente non è nostro utente di prova e dove il gruppo utente è quello degli utenti registrati.

    In particolare, dobbiamo prendere i nostri valori e non quelli dell'esempio qui incollato, altrimenti si rischia di fare pasticci. A proposito, è sempre una buona idea di avere a disposizione un backup. In questo caso basta avere a disposizione la sola tabella user.

    Ai comandi che aggiornano le tabelle, viene chiesto un'ulteriore conferma da parte vBulletin, alla quale confermiamo. Dopo l'aggiornamento, che di regola impiega qualche secondo, tutti gli utenti del gruppo specificato hanno le impostazioni del nostro utente di prova, senza ovviamente aver toccato le altre impostazioni.

    Come sempre, consigliamo di fare le prove prima in ambiente di test e passare al forum di produzione soltanto dopo aver appreso come fare.