phpBB Italia chiude!
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.
Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.
Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.
Grazie ancora,
Carlo - Amministratore di phpBB Italia
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.
Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.
Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.
Grazie ancora,
Carlo - Amministratore di phpBB Italia
Sistemare lettere accentate
- Micogian
- Leader Programmatori
- Messaggi: 3704
- Iscritto il: 07/01/2010, 8:51
- Versione: 3.2.0
- Server: UNIX/Linux
- PHP: 5.4.36
- Database: MySQL 5.1.70-log
- Località: Udine
- Contatta:
Re: Sistemare lettere accentate
Ma tu devi inserire il testo in un post o in una tabella personalizzata?
Per i testi destinati al post phpbb usa la funzione generate_text_for storage che probabilmente sistema il testo per essere archiviato.
Per inserire il testo di una textarea in una tabella io non ho particolari problemi se non quelli legati all'apostrofo e al segno & che risolvo come detto prima.
Per i testi destinati al post phpbb usa la funzione generate_text_for storage che probabilmente sistema il testo per essere archiviato.
Per inserire il testo di una textarea in una tabella io non ho particolari problemi se non quelli legati all'apostrofo e al segno & che risolvo come detto prima.
-
- Utente
- Messaggi: 31
- Iscritto il: 18/09/2015, 23:53
- Sesso: Maschio
- Versione: 3.1.5
- PHP: 5.4
Re: Sistemare lettere accentate
devo inserire il testo della textarea nella tabella del topic...e uso appunto la funzione che hai detto
facendo un echo prima di questa funzione per il testo "caffè all'alba" mi restituisce "caff?? all'alba"
già prima di metterlo nella tabella predefinita dei post.
più avanti dopo un controllo se il topic è stato già inserito con lo stesso titolo ho quest'altra funzione
se l'errore sui caratteri me lo da prima non credo centrino le funzioni di inserimento...è così?
c'è forse qualche errore quando prelevo il testo?
con la funzione str_replace riesco a rimpiazzare i ritorni d'accapo e gli apostrofi...ma non le lettere accentate
Codice: Seleziona tutto
$my_subject = utf8_normalize_nfc($titolo, '', true);
$my_text = utf8_normalize_nfc($testo, '', true);
generate_text_for_storage($my_subject, $uid, $bitfield, $options, false, false, false);
generate_text_for_storage($my_text, $uid, $bitfield, $options, true, true, true);
già prima di metterlo nella tabella predefinita dei post.
più avanti dopo un controllo se il topic è stato già inserito con lo stesso titolo ho quest'altra funzione
Codice: Seleziona tutto
submit_post('post', $my_subject, $user->data['username'], POST_NORMAL, $poll, $data);
c'è forse qualche errore quando prelevo il testo?
Codice: Seleziona tutto
$testo1 = mysql_real_escape_string(request_var('Testo', ''));
$testo= str_replace("\\n", "<br />",$testo1);
$testo= str_replace("\'", "' ",$testo);
- Micogian
- Leader Programmatori
- Messaggi: 3704
- Iscritto il: 07/01/2010, 8:51
- Versione: 3.2.0
- Server: UNIX/Linux
- PHP: 5.4.36
- Database: MySQL 5.1.70-log
- Località: Udine
- Contatta:
Re: Sistemare lettere accentate
Hai provato con latin1 al posto di utf-8?
mysql_query("SET NAMES latin1");
-
- Utente
- Messaggi: 31
- Iscritto il: 18/09/2015, 23:53
- Sesso: Maschio
- Versione: 3.1.5
- PHP: 5.4
Re: Sistemare lettere accentate
no, non sortisce effetto....non so più cosa provare: le tabelle del db sono settate bene (utf general ci) metto qualsiasi caracter set nel file php e solo impostando UTF8 almeno riesco a far postare il testo anche se le lettere accentate appaiono con ?? (si perchè se non imposto UTF8 il testo della textaerea non viene messo nella tabella del db)Micogian ha scritto:Hai provato con latin1 al posto di utf-8?mysql_query("SET NAMES latin1");
ripeto...c'è qualcosa di sbagliato da come prendo il testo dalla textarea? appena prelevato, inviando un 'print' appaiono già i ?? al posto delle lettere accentate....quindi non è nè un problema di funzione di post automatica nè altro...secondo me è l'acquisizione del testo
- Sir Xiradorn
- Grafico
- Messaggi: 1659
- Iscritto il: 11/08/2009, 12:41
- Sesso: Maschio
- Versione: 3.2.0
- Server: UNIX/Linux
- PHP: 5.6.15
- Database: MariaDB 10.1.9
- Località: Lontano....
- Contatta:
Re: Sistemare lettere accentate
Ricordo che avevo un problema similare quando feci la mia mod per la form di inseriento di un post personalizzata (che vorrei trasformare in estensione).
Hai provato a cercare se ci sono funzioni alternative per il prelievo del testo? Magari il parsing_text. Ti rimando a questa guida ( https://wiki.phpbb.com/Parsing_text ) magari riesci a fare qualcosa. Faro anche io qualche test
Hai provato a cercare se ci sono funzioni alternative per il prelievo del testo? Magari il parsing_text. Ti rimando a questa guida ( https://wiki.phpbb.com/Parsing_text ) magari riesci a fare qualcosa. Faro anche io qualche test
Sir Xiradorn

~ XDojo - Xiradorn Lab Division - xiradorn.it ~
~ GitHub - XiradornLab ~

Stargate - phpbb 3.0.x || 3.1.x || 3.2.x

~ XDojo - Xiradorn Lab Division - xiradorn.it ~
~ GitHub - XiradornLab ~
Stargate - phpbb 3.0.x || 3.1.x || 3.2.x
-
- Utente
- Messaggi: 31
- Iscritto il: 18/09/2015, 23:53
- Sesso: Maschio
- Versione: 3.1.5
- PHP: 5.4
Re: Sistemare lettere accentate
grazie sir Xiradorn ma purtroppo non posso usare un unica INSERT magari per inserire nella tabella dei topic...
uso già il modello di inserimento illustrato nell'esempio....
MOD: Ho risolto!!!! grazie a tutti per l'impegno. Vi illustro come, così è utile per chi si ritrova impantanato come me:
Il problema stava nell'acquisizione del testo come avevo intuito...ma non tanto la modalità, piuttosto la sintassi, cioè io acquisivo il testo così:
e sbagliavo la sintassi, anche se il debug non restituiva errori manca una parola fondamentale nell'istruzione: TRUE
grazie al link che mi ha linkato sir Xiradorn mi sono accorto dell'errore di sintassi...praticamente va aggiustato così:
con il TRUE alla fine...tutto il resto andava bene, mancava solo quella benedetta parolina magica....
non ho però capito perchè quel true fa si che gli accenti si inseriscono e visualizzino correttamente
uso già il modello di inserimento illustrato nell'esempio....
MOD: Ho risolto!!!! grazie a tutti per l'impegno. Vi illustro come, così è utile per chi si ritrova impantanato come me:
Il problema stava nell'acquisizione del testo come avevo intuito...ma non tanto la modalità, piuttosto la sintassi, cioè io acquisivo il testo così:
Codice: Seleziona tutto
$testo=mysql_real_escape_string(request_var('Testo', ''));
grazie al link che mi ha linkato sir Xiradorn mi sono accorto dell'errore di sintassi...praticamente va aggiustato così:
Codice: Seleziona tutto
$testo=mysql_real_escape_string(request_var('Testo', '',true));
non ho però capito perchè quel true fa si che gli accenti si inseriscono e visualizzino correttamente
- Sir Xiradorn
- Grafico
- Messaggi: 1659
- Iscritto il: 11/08/2009, 12:41
- Sesso: Maschio
- Versione: 3.2.0
- Server: UNIX/Linux
- PHP: 5.6.15
- Database: MariaDB 10.1.9
- Località: Lontano....
- Contatta:
Re: Sistemare lettere accentate
La risposta sta nella definizione di request_var la funzione creata da phpbb per sostituire il $_REQUEST e purificare le stringhe. Quella parolina TRUE è una delle opzioni della funzioni che abilita questa cosa che cito
[quote=phpbb wiki](optional, default is false) request_var does allow multibyte characters to return in requests unless you explicitly set this to true for the variable you request.[/quote]
In sostanza permette di estrapolare caratteri multibyte che da soli non verrebbero fuori. Quindi vengono fuori tutti quei caratteri che sono filtrati perchè ritenuti a rischo. Questo implica che quando si gestisce il tutto va fatta attenzione a cosa poi viene inserito o gestito perchè può creare vulnerabilità
[quote=phpbb wiki](optional, default is false) request_var does allow multibyte characters to return in requests unless you explicitly set this to true for the variable you request.[/quote]
In sostanza permette di estrapolare caratteri multibyte che da soli non verrebbero fuori. Quindi vengono fuori tutti quei caratteri che sono filtrati perchè ritenuti a rischo. Questo implica che quando si gestisce il tutto va fatta attenzione a cosa poi viene inserito o gestito perchè può creare vulnerabilità
Sir Xiradorn

~ XDojo - Xiradorn Lab Division - xiradorn.it ~
~ GitHub - XiradornLab ~

Stargate - phpbb 3.0.x || 3.1.x || 3.2.x

~ XDojo - Xiradorn Lab Division - xiradorn.it ~
~ GitHub - XiradornLab ~
Stargate - phpbb 3.0.x || 3.1.x || 3.2.x
Chi c’è in linea
Visitano il forum: Nessuno e 76 ospiti