Vai al contenuto

Domande frequenti

Queste domande frequenti riassumono i quesiti ricorrenti emersi nelle segnalazioni di supporto MRBS, sia aperte sia chiuse. Le risposte sono state verificate rispetto a MRBS 1.12.2: una vecchia soluzione alternativa non viene inclusa soltanto perché è comparsa in una segnalazione.

Come è stata selezionata questa FAQ

La revisione ha riguardato questioni che riportano almeno una di queste etichette: Help, Help from scratch, LDAP help need, Problems with room's capacity, support, spanish help, support request, help wanted, e custom view help.

Al 26 luglio 2026, la sola etichetta support request comprendeva 3.076 segnalazioni: 1.590 aperte e 1.486 chiuse. Molte riguardano casi storici importati, personalizzazioni una tantum, richieste di funzionalità o domande prive di una risposta confermata. Di seguito sono riportate soltanto le domande ricorrenti la cui risposta è ancora utile per la versione 1.12.2. I collegamenti alle segnalazioni indicano la provenienza delle informazioni, ma non sostituiscono la documentazione della configurazione corrente.

Installazione e diagnosi

Perché vedo una pagina vuota o HTTP 500?

Consulta innanzitutto i registri degli errori del server web e di PHP. Una pagina bianca è soltanto il sintomo visibile; il messaggio utile si trova normalmente in un registro. Controlla quindi:

  1. la versione PHP supportata e le estensioni richieste;
  2. config.inc.php con php -l config.inc.php;
  3. connettività al database e driver PDO corrispondente;
  4. i permessi dei file e la configurazione PHP attiva; e
  5. se la richiesta non riuscita raggiunge l'installazione MRBS prevista.

Non abilitare la visualizzazione pubblica degli errori PHP su un sistema di produzione e non incollare le credenziali in un problema. Vedi Risoluzione dei problemi. L'originale caso di supporto n. 1007 non aveva alcuna correzione specifica del prodotto confermata, motivo per cui questa risposta inizia con le prove dei registri locali.

Perché l'accesso al database non riesce su cPanel o hosting condiviso?

Utilizza il database e il nome utente esatti creati dal pannello di controllo dell'hosting. cPanel spesso prefissa entrambi con il nome dell'account di hosting. Verificare inoltre che l'utente disponga dei privilegi su quel database. SQLSTATE[28000] o "Accesso negato per l'utente" è un errore di autenticazione o concessione del database, non un errore di tabella MRBS.

Mantieni $db_database, $db_login e $db_password coerenti con i valori del pannello di controllo. Crea lo schema soltanto dopo aver verificato la connessione. Vedi segnalazione #3801 e Installazione.

Perché una modifica alla configurazione non ha alcun effetto?

Verifica di aver modificato il file config.inc.php effettivamente caricato per questa installazione e per questo sito. I valori assegnati successivamente sovrascrivono quelli precedenti. Le impostazioni delle aree esistenti sono memorizzate nel database; la modifica di areadefaults.inc.php cambia soltanto i valori predefiniti delle nuove aree. In modalità multisito, controlla il sito selezionato e la relativa configurazione. Se necessario, svuota o riavvia la cache opcode di PHP.

Vedi config.inc.php in modo approfondito e Risoluzione dei problemi.

Accesso e LDAP

Come posso richiedere agli utenti di accedere prima di visualizzare il calendario?

Imposta:

$auth['deny_public_access'] = true;

Prova la visualizzazione senza aver effettuato l'accesso, usando una finestra privata del browser. Questa impostazione blocca l'accesso al calendario pubblico, ma non seleziona né configura il metodo di autenticazione. Vedi segnalazione #3979 e Utenti e permessi.

Perché MRBS dice che manca l'estensione PHP LDAP?

Installa o abilita l'estensione LDAP nell'ambiente PHP utilizzato dal server web, quindi riavvia il relativo servizio. PHP da riga di comando e PHP sul server web possono caricare file php.ini diversi: verifica quindi l'ambiente web e non affidarti soltanto a php -m. Il nome esatto del pacchetto e il comando di riavvio dipendono dal sistema operativo e dall'installazione di PHP.

Vedi segnalazione #1022 e Autenticazione LDAP.

Come posso trovare il DN di base LDAP corretto e il DN utente?

Non dedurre l'albero delle directory dal nome di un'organizzazione. Interrogalo con un client LDAP come ldapsearch, utilizzando lo stesso server, modalità TLS, DN di base, identità di ricerca e attributo nome utente che utilizzerà MRBS. Active Directory utilizza comunemente sAMAccountName; OpenLDAP utilizza comunemente uid, ma lo schema della directory è autorevole.

Verifica l'identità di ricerca separatamente dall'autenticazione dell'utente finale e non pubblicare mai le password di bind. Un DN errato era la causa principale della segnalazione #1083.

Come è possibile limitare l'accesso LDAP a un gruppo?

Utilizza $ldap_filter per stabilire quali utenti della directory possono accedere a MRBS. In Active Directory, dove l'appartenenza ai gruppi è registrata nell'oggetto utente, un filtro può verificare memberof. In una struttura OpenLDAP, dove l'appartenenza è memorizzata negli oggetti gruppo, configura $ldap_filter_base_dn, $ldap_filter_user_attr e un valore appropriato per $ldap_filter.

Utilizza il DN esatto e i nomi degli attributi presenti nella directory, prova un account autorizzato e uno non autorizzato e verifica il comportamento dei gruppi annidati. Questi filtri di accesso sono distinti da $ldap_admin_group_dn, che identifica gli amministratori MRBS. Vedi segnalazione #2033 e Autenticazione LDAP.

L'accesso LDAP funziona: perché l'utente non è un amministratore MRBS?

Quando è impostato $ldap_admin_group_dn, MRBS utilizza quel gruppo invece di $auth['admin']. Conferma:

  • il DN completo del gruppo;
  • $ldap_group_member_attrib — memberof per impostazione predefinita;
  • che l'identità di ricerca LDAP possa leggere gli attributi di appartenenza dell'utente; e
  • se la directory restituisce l'appartenenza diretta o nidificata.

Abilita temporaneamente la diagnostica LDAP soltanto in un ambiente di prova protetto e disabilitala al termine. Nella segnalazione #3943, inizialmente l'identità di ricerca non poteva leggere le informazioni necessarie sui gruppi.

Perché LDAP può fallire dopo un aggiornamento MRBS anche se l'associazione della password funziona?

L'attuale MRBS potrebbe dover cercare il DN e gli attributi di un utente come il nome visualizzato o l'e-mail. Se la ricerca anonima non è disponibile, configura:

$ldap_dn_search_attrib = 'sAMAccountName'; // use the directory's real attribute
$ldap_dn_search_dn = 'search-account@example.org';
$ldap_dn_search_password = 'read-from-a-protected-secret';

Assegna all'identità di ricerca soltanto le autorizzazioni di lettura necessarie. Conserva la password al di fuori della directory pubblica del server web e includila da un file di configurazione protetto. Vedi segnalazione #3895.

È possibile eseguire la ricerca con MRBS in più di una directory LDAP?

Sì. Molte impostazioni LDAP, inclusi $ldap_host, $ldap_port, $ldap_base_dn e attributi di ricerca, possono essere array. Se un parametro LDAP con capacità di array è un array, ogni parametro con capacità di array deve avere lo stesso numero di elementi, uno per directory.

Verifica l'accesso, la ricerca degli attributi, i filtri di accesso e la mappatura degli amministratori per ciascuna directory. Vedi segnalazione #3981 e la sezione LDAP di systemdefaults.inc.php.

Prenotazioni, sale e permessi

Perché un campo di prenotazione personalizzato funziona per una prenotazione ma non funziona per una serie?

Ogni colonna personalizzata per le prenotazioni deve esistere in entrambe le tabelle entry e repeat, con lo stesso nome, tipo, lunghezza, possibilità di valori NULL e valore predefinito. Considera le due colonne come un'unica modifica dello schema.

Vedi segnalazione #3986 e Campi personalizzati.

La capienza della sala impedisce una prenotazione con troppi partecipanti?

No. Il valore della sala capacity corrisponde ai metadati della sala visualizzati da MRBS; non viene confrontato automaticamente con il conteggio dei partecipanti di una prenotazione. Se un sito deve applicare questa regola, aggiungi un campo personalizzato identico per il conteggio dei partecipanti a entry e repeat, quindi implementa e mantieni la convalida lato server. La sola convalida lato client non è sufficiente.

Se la registrazione è abilitata, la sua capacità di evento controlla la registrazione per quell'evento; non seleziona automaticamente una sala di dimensioni adeguate. Vedi segnalazione #1055, Aree e sale e Campi personalizzati.

Un'area può utilizzare slot da 30 minuti al mattino e slot da 15 minuti successivamente?

Non attraverso la configurazione dell'area standard. Un'area ha una risoluzione temporale. Utilizza la minima risoluzione richiesta per l'intera giornata, oppure crea aree separate quando le risorse e il modello operativo lo consentono. Una risoluzione dipendente dal tempo richiede una personalizzazione del codice mantenuta.

Vedi segnalazione #4011.

Perché un creatore di prenotazioni non può vedere Modifica o Elimina?

Controlla la politica di prenotazione dell'area esistente tramite Sale. I limiti e le regole di modifica anticipata/futura per le prenotazioni passate possono rimuovere tali azioni anche dal creatore. Conferma inoltre l'identità di accesso, la proprietà, lo stato di amministratore e se l'elemento è un'occorrenza o una serie.

La modifica di areadefaults.inc.php non aggiorna un'area esistente. Vedi segnalazione #3994 e Politiche di prenotazione.

Le sale selezionate in una prenotazione multiroom sono collegate in modo permanente?

No. MRBS crea prenotazioni distinte. Se una di esse viene successivamente modificata o eliminata, le altre non rimangono unite in un gruppo permanente. Non copiare automaticamente l'elenco di tutte le sale selezionate in ogni descrizione, a meno che il sito non mantenga tale elenco anche durante le operazioni di creazione, modifica ed eliminazione.

Vedi segnalazione #2223.

Posso aggiungere più livelli di accesso o assegnare a un ruolo personalizzato solo l'accesso ai rapporti?

Lo standard MRBS utilizza i livelli di accesso 0, 1 e 2. Ruoli numerici aggiuntivi e autorizzazioni specifiche della pagina richiedono la personalizzazione, i test e la revisione dell'autorizzazione locale dopo ogni aggiornamento. Una patch di un vecchio problema non è un'opzione di configurazione supportata.

Preferisci la delega di aree/sale standard e i report pubblici con liste consentite ristrette laddove soddisfano i requisiti. Vedi segnalazione #3999 e Utenti e permessi.

E-mail, lingua e ora

Perché il debug della posta elettronica segnala "Nessun destinatario"?

Abilita almeno un ruolo di destinatario previsto:

$mail_settings['admin_on_bookings'] = true;
$mail_settings['area_admin_on_bookings'] = true;
$mail_settings['room_admin_on_bookings'] = true;
$mail_settings['booker'] = true;

Per la prima opzione, imposta $mail_settings['recipients']. Per gli amministratori di area e sala, mantieni aggiornati gli indirizzi e-mail in MRBS. Quando viene avvisato l'autore della prenotazione, gli utenti LDAP devono disporre di un attributo e-mail leggibile e correttamente mappato. Prova quindi separatamente la creazione, la modifica e l'eliminazione degli eventi.

Vedi segnalazione #3795 e Notifiche e-mail.

Quale valore dovrei usare per $override_locale?

Utilizza un tag di lingua BCP 47 come en, en-GB, de, fr o es, non una stringa locale del sistema operativo. Il server deve ancora disporre di dati locali adeguati. Sui sistemi simili a Unix, locale -a mostra le versioni locali installate.

Lascia vuoto $override_locale per utilizzare la selezione automatica MRBS. Vedi segnalazione #3984 e Testi e traduzioni.

Perché gli orari visualizzati sono sbagliati esattamente di un'ora?

Controlla, in ordine:

  1. il fuso orario della sala e dell'area;
  2. il globale $timezone;
  3. il pacchetto e i dati dei fusi orari di PHP;
  4. il passaggio all'ora legale della data interessata; e
  5. se il timestamp memorizzato o solo la sua visualizzazione è errata.

Utilizza un fuso orario IANA come Europe/Berlin, non un offset UTC fisso. I vecchi problemi menzionano soluzioni alternative di formattazione specifiche della versione; $force_strftime non è un'impostazione in MRBS 1.12.2 e non deve essere copiata da segnalazione #3967. Vedi Risoluzione dei problemi.

Come posso personalizzare o tradurre la pagina della Guida e il testo dell'interfaccia?

La pagina della Guida interna all'applicazione viene caricata da web/site_faq/. Ad esempio, lo spagnolo usa site_faq_es.html; impostare $faqfilelang = 'es' quando la lingua deve essere selezionata esplicitamente. Conserva un file tradotto completo per ciascuna lingua supportata.

Per brevi modifiche all'interfaccia, utilizza $vocab_override[LANG][TOKEN] in config.inc.php invece di modificare web/lang/lang.*. I campi del database personalizzati utilizzano token come entry.catering.

Vedi segnalazione #2432 e Testi e traduzioni.

Report, multisito e personalizzazione

Come può un'attività pianificata esportare un report o i dati iCalendar?

I report GET non autenticati sono disabilitati per impostazione predefinita. Se le informazioni possono essere esposte in questo modo, abilitatele deliberatamente e limitatele con:

$report_unauthenticated_get_enabled = true;
$report_keys_enabled = true;
$report_keys = ['a-long-random-secret'];
$report_open_areas = [1];
$report_open_rooms = [];

Utilizza una chiave non prevedibile, un elenco ristretto di aree e sale consentite, HTTPS e un sistema di pianificazione protetto. Verifica l'output effettivo senza aver effettuato l'accesso. L'URL di un report equivale di fatto a una credenziale e può finire nei registri o nella cronologia.

Vedi segnalazione #3742 e Ricerca e rapporti.

Più siti MRBS possono condividere un set di tabelle?

No, se prenotazioni e impostazioni devono rimanere separate. Ogni sito necessita delle proprie tabelle MRBS, in un database distinto oppure con un $db_tbl_prefix univoco in un database condiviso. Il codice può essere condiviso, ma gli insiemi di tabelle non devono sovrapporsi.

Crea le tabelle di ciascun sito con gli script dello schema MRBS e applica il relativo prefisso in modo coerente. Vedi segnalazione #3917 e Multisito.

Ogni vista o tema richiesto è disponibile tramite la configurazione?

No. Richieste quali l'inserimento di testo aggiuntivo per la sala in un particolare layout del calendario, il collegamento di prenotazioni altrimenti indipendenti, l'aggiunta di livelli di accesso o la sostituzione dell'architettura del tema potrebbero richiedere modifiche al codice. Prima di applicare una patch da un problema di supporto:

  • verificare se 1.12.2 ha già un punto di impostazione o di estensione;
  • mantenere la modifica al di fuori dei file generati e dei fornitori;
  • aggiungere test per creazione, modifica, eliminazione, privacy e autorizzazioni; e
  • registrare la personalizzazione per il prossimo aggiornamento.

Gli esempi includono problema con visualizzazione personalizzata n. 2223 e richiesta tematica n.22.