Non so se questo sia il forum giusto per il post, ma non saprei dove postare - altrimenti.
Dunque, questo è il problema.
Ho una newsletter, costruita dinamicamente via PHP, i cui contenuti sono, fondamentalmente, costituiti da una serie di news; per ciascuna news, viene indicato il titolo, alcuni brevi dati ulteriori, e soprattutto il link alla relativa pagina.
Solitamente, questi link erano di questo tipo:
dove, ovviamente, il numero finale costituiva l'ID della news.
Ad un certo punto, uno degli utenti della newsletter mi segnala che i suoi link non funzionano, e che si presentano così:
in pratica, il segno = ed i primi due numeri dell'ID venivano sostituiti dalla lettera e.
Grazie all'aiuto del forum PHP, ho capito che alcuni mail browser potevano interpretare alcune sequenze di caratteri (il segno '=' + numeri) come un carattere terzo.
Per evitare questo problema, ho introdotto una variante nella costruzione dinamica dei link: tra il segno = e l'ID numerico ho inserito il segno §, che poi, nella pagina di riferimento viene strippato via.
In pratica, il nuovo link appare così:
Questo tipo di link, sia che venga cliccato, sia che si faccia il copia/incolla, nella barra degli URL del browser appare come:
(quindi, al posto del segno §, c'è un %A7), ma la pagina viene caricata correttamente.
L'utente, però, continua ad avere problemi.
Infatti, nel suo browser di posta (Apple Mail program 2.1.3, su OS/X 10.4.11), i link della newsletter si presentano così:
http://www.shavis.com/art.php?news=§6417
quindi senza che l'ID venga considerato parte del link stesso.
Cosa ancor più strana, se il medesimo link è presente in un messaggio inviato per mezzo di un normale browser di posta (Outlook Express, su WinXP), quando viene letto dall'utente, nel suo browser di posta (Apple Mail), appare corretto e funzionante!
Poichè un numero indeterminato di utenti è possibile che usino un Mac (e su oltre 34.000 mailbox, può essere un numero significativo), vorrei risolvere questo problema in via definitiva.
Ma come?
Evidentemente, c'è una questione di interpretazione dei caratteri da parte dei sistemi Macintosh, almeno nei messaggi creati server-side via PHP, visto che se inviato da Outlook invece i link funzionano, ma come posso inviare dei link aggirando questo problema?
![]()