Just a quick question.
I've had my site for years and it's always been fine, but in the last few months, I noticed that question marks � appear wherever there are copyright symbols or accents over letters, such as fianc�.
Has anyone experienced this, and if so, were you able to correct it?
I can fix everything manually, but that will literally take ages, so I'm looking for a faster fix. I've looked at the site from different browsers, so it's not that (someone suggested I try it). But I did notice that the issue started after changing server hosts.
Any insight will be appreciated, as I'm really not versed in the php side of efiction.
Thanks! :happy:
That will most likely be some codepage issue, as in ISO-8895 vs. UTF-8.
Can you please check if your header.php has this at around line 67:
header("Content-Type: text/html; charset="._CHARSET);
Also, at around line 220, check for this:
echo "<title>$titleinfo</title>
<meta http-equiv="Content-Type" content="text/html; charset="._CHARSET."">";
If they both are there, you could have the wrong codepage. fiancΓ© would require something linke utf-8 with matching data source or iso-8859-1 for western europe.
Hi!
I have the same problem, but I didn't change server or hosting.
My page has been working quite good for three years, but in the last months those symbols started apparing in Chrome and firefox, even on androids phones.
I checked as you said in the header.php but couldn't find those lines (and I have to admit that I'm quite dumb for this, really). The Edit Code Program that my hosting has lovely provided sais that the coding is utf-8.
My site is in spanish, so the symbols are all over in all things and it looks bad. I'd appreciate any help someone could lend me.
That will most likely be some codepage issue, as in ISO-8895 vs. UTF-8.
Can you please check if your header.php has this at around line 67:
header("Content-Type: text/html; charset="._CHARSET);Also, at around line 220, check for this:
echo "<title>$titleinfo</title>
<meta http-equiv="Content-Type" content="text/html; charset="._CHARSET."">";If they both are there, you could have the wrong codepage. fiancΓ© would require something linke utf-8 with matching data source or iso-8859-1 for western europe.
Could you provide a link to the page, por favor? (Just used about 50% of my spanish π )
It may have been due to php/apache changes, old versions would use iso-xxxx as default encoding, recent versions have finally started to move to using UTF-8, since that's the only thing that makes any sense in a world with different languages and character sets.
So chances are that an update to your server now conflicts with how eFiction does things.
Thank you so much for your answer! And so fast, I really don't know why I didn't get an alert.
Anyway, my site is www.thficcion.com but that same day I just scrolled through the forum and found this post "PHP7 readiness" on the 3.x general support page, and I clicked on it by pure chance, and it happened to solve the problem since my hosting had recently upgraded something (not sure what, really sorry).
So, at least for me the problem is solved, now I had other problems *sigh*
Sorry for this insanely late reply. Thank you for your help. The issue still persists, though life had me forgetting it for a while.
That will most likely be some codepage issue, as in ISO-8895 vs. UTF-8.
Can you please check if your header.php has this at around line 67:
header("Content-Type: text/html; charset="._CHARSET);
I didn't find that, actually. I only found this:
header("Content-Disposition: inline; filename="".$titleinfo.""");
Also, at around line 220, check for this:
echo "<title>$titleinfo</title>
<meta http-equiv="Content-Type" content="text/html; charset="._CHARSET."">";
That one, I did find.
Is there some adjustment I can make to the first line of code that may fix the problem? I'm not savvy with this kind of thing at all, but if you spell it out for php dummies, I think I can follow along, lol.
Thanks so much!
EDIT: The instructions on this page didn't work for me. π
https://efiction.org/forums/index.php?topic=8861.0
Starting at or around line 55, there is this part:
if(!isset($_SESSION)) session_start();
// clear the global variables if register globals is on.
if(ini_get('register_globals')) {
$arrayList = array_merge($_SESSION, $_GET, $_POST, $_COOKIE);
foreach($arrayList as $k => $v) {
unset($GLOBALS[$k]);
}
}
Header('Cache-Control: private, no-cache, must-revalidate, max_age=0, post-check=0, pre-check=0');
header ("Pragma: no-cache");
header ("Expires: 0");
header("Content-Type: text/html; charset="._CHARSET);
// Locate config.php and set the basedir path
$folder_level = "";
while (!file_exists($folder_level."header.php")) { $folder_level .= "../"; }
if(!defined("_BASEDIR")) define("_BASEDIR", $folder_level);
The line containing "Content-Type" is the important one, if it is not there, please insert below all the other header thingies.
Otherwise your HTML might tell the browser "Watch it, ISO-8895 incoming", while the server serves (pun intended) "UTF-8 to go".
Hi again!
I'm so sorry for this awfully late reply. Once again, life got in the way and I haven't been able to deal with my site until tonight. But I wanted to thank you profusely. That last bit of code did the trick. It was so nice to see all those question marks disappear. I can't thank you enough!
