[SOLVED] modulo e UTF-8

La discussione sul CMS Made Simple in italiano.

Moderator: magallo

nervino
Power Poster
Power Poster
Posts: 448
Joined: Sun Dec 28, 2008 12:15 pm

[SOLVED] modulo e UTF-8

Post by nervino »

Ciao a tutti,
ho un problema di set di caratteri.

In una pagina, che usa un template in cui è specificato

Code: Select all

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
richiamo dei dati dal DB attraverso un semplice modulo che sto realizzando.
Il modulo è basato su quello di Skeleton, con template add_edit.tpl.

Il problema è che i caratteri accentati presenti nel DB vengono resi con il solito punto interrogativo all'interno di un quadrato nero.

Il set di caratteri della tabella del DB è utf8_general_ci.

Qualcuno ha idea di come posso risolvere?
Last edited by nervino on Mon May 04, 2009 3:29 pm, edited 1 time in total.
alby

Re: modulo e UTF-8

Post by alby »

nervino wrote: Qualcuno ha idea di come posso risolvere?
in config.php:
$config['default_encoding'] = 'utf-8';

Alby
nervino
Power Poster
Power Poster
Posts: 448
Joined: Sun Dec 28, 2008 12:15 pm

Re: modulo e UTF-8

Post by nervino »

Purtroppo il config è già impostato a utf-8.
Inoltre nel template del modulo ho inserito {get_template_vars}
e tra i risultati trovo:
lang = it_IT
encoding = UTF-8
alby

Re: modulo e UTF-8

Post by alby »

nervino wrote: Purtroppo il config è già impostato a utf-8.
Inoltre nel template del modulo ho inserito {get_template_vars}
e tra i risultati trovo:
lang = it_IT
encoding = UTF-8
non è che hail browser impostato a iso-8859-1?
Su FF: Visualizza > Codifica caratteri

Alby
User avatar
protempore
Power Poster
Power Poster
Posts: 599
Joined: Mon Jan 14, 2008 9:08 pm

Re: modulo e UTF-8

Post by protempore »

io problemi di questo tipo a volte li ho risolti scommentando la riga num.145 del file "include.php"

Code: Select all

if (!isset($DONT_LOAD_DB))
{
    $cmsdb =& $gCms->GetDB();
//    $cmsdb->Execute('set names utf8'); // database connection with utf-8
}
basta togliere i due "//" iniziali
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
alby

Re: modulo e UTF-8

Post by alby »

protempore wrote: io problemi di questo tipo a volte li ho risolti scommentando la riga num.145 del file "include.php"

Code: Select all

if (!isset($DONT_LOAD_DB))
{
    $cmsdb =& $gCms->GetDB();
//    $cmsdb->Execute('set names utf8'); // database connection with utf-8
}
basta togliere i due "//" iniziali
Giusto!
+1  ;)
sarà che in MLE utf-8 è sempre attivo che me lo dimentico quando sono nell'originale ....

Alby
nervino
Power Poster
Power Poster
Posts: 448
Joined: Sun Dec 28, 2008 12:15 pm

Re: modulo e UTF-8

Post by nervino »

Tana!!
Era proprio l'impostazione della connessione al DB!

Grazie a entrambi!
nervino
Power Poster
Power Poster
Posts: 448
Joined: Sun Dec 28, 2008 12:15 pm

Re: [SOLVED] modulo e UTF-8

Post by nervino »

ALby cos'è MLE?
Google mi dà: Malpensa Logistica Europa  :D
alby

Re: [SOLVED] modulo e UTF-8

Post by alby »

nervino wrote: ALby cos'è MLE?
Google mi dà: Malpensa Logistica Europa  :D
Acc...  :o

CMSMS MultiLanguage Edition

segui il link nella mia firma

Alby
nervino
Power Poster
Power Poster
Posts: 448
Joined: Sun Dec 28, 2008 12:15 pm

Re: [SOLVED] modulo e UTF-8

Post by nervino »

Bello! Complimenti.

Visto che lo hai sviluppato tu, ti chiedo anche un'altra info sul FMS.
Rispetto a quello usato qui, SMF, che differenze ci sono e perché hai sentito il bisogni di creare un forum?

grazie
alby

Re: [SOLVED] modulo e UTF-8

Post by alby »

nervino wrote: Visto che lo hai sviluppato tu, ti chiedo anche un'altra info sul FMS.
Rispetto a quello usato qui, SMF, che differenze ci sono e perché hai sentito il bisogni di creare un forum?
Il progetto iniziale non è mio ma era stato abbandonato.
Mi era stato richiesto un piccolo forum (più un gruppo di discussione che un forum per grandi comunità come questo) perfettamente integrato in CMSMS (stesso pannello e FEU per gli utenti).
A questo punto l'ho ripreso, corretto alcuni bugs ed inserito le feature che mi servivano.
Allora il precedente autore mi ha passato il progetto e da allora l'ho incrementato piano piano con altre feature (anche molte di più di quelle che mi servivano per la verità) ed ecco qua.
Adesso il prossimo penso di inserire i "gruppi" di forums con l'ordinamento e il captcha/akismet poi penso che può anche fermarsi.

Alby
nervino
Power Poster
Power Poster
Posts: 448
Joined: Sun Dec 28, 2008 12:15 pm

Re: [SOLVED] modulo e UTF-8

Post by nervino »

Decommentando la riga dell'include.php come suggerito da Protempore avevo risolto in locale.
L'ho fatto anche in un sito già pubblicato da tempo, in cui ho installato un mio moduletto, ed i caratteri dei testi delle pagine e delle news sballano, mentre le pagine che ho caricato, fatte da me, vanno bene.

Le tabelle del mio modulo sono tutte in utf8_unicode_ci.

Per ora ho risolto inserrendo nel codice del mio modulo, dopo l'apertura della connessione:

$db->Execute('set names utf8');

Mi potete comunque chiarire le idee? Come faccio a far convivere pacificamente le tabelle in Latin del cms e le mie in utf8?

grazie
alby

Re: [SOLVED] modulo e UTF-8

Post by alby »

nervino wrote:
$db->Execute('set names utf8');

Mi potete comunque chiarire le idee? Come faccio a far convivere pacificamente le tabelle in Latin del cms e le mie in utf8?
Puoi anche scrivere utf8 in tabelle Latin. Tutto dipende da come scrivi e come vai a leggere.
Se non puoi cambiare, puoi inserire un SET NAMES che va a settare la comunicazione giusta con il contenuto della tabella

Alby
nervino
Power Poster
Power Poster
Posts: 448
Joined: Sun Dec 28, 2008 12:15 pm

Re: [SOLVED] modulo e UTF-8

Post by nervino »

alby wrote:
Puoi anche scrivere utf8 in tabelle Latin. Tutto dipende da come scrivi e come vai a leggere.
Credo di aver capito: se scrivo in una tabella utilizzando utf8 per la connessione dovrò usare sempre utf8 anche per leggerla.
È per questo che attivando successivamente l'utf8 nella connessione, in un sito in cui era stata usata la Latin1 durante la creazione dei contenuti, i caratteri delle pagine sono errati. Giusto?
alby

Re: [SOLVED] modulo e UTF-8

Post by alby »

nervino wrote: È per questo che attivando successivamente l'utf8 nella connessione, in un sito in cui era stata usata la Latin1 durante la creazione dei contenuti, i caratteri delle pagine sono errati. Giusto?
Yes, stessa cosa nelle importazioni ad esempio con mysqldump in cui la connessione segue la configurazione del server (in genere latin

Alby
Post Reply

Return to “Italian - Italiano”