Lomakkeeseen annetut hehnkilötiedot tarkistetaan näin:
/* Postitoimipaikan kelvollisuus */
if (!(ereg("^[a-z,å,ä,ö,A-Z,Å,Ä,Ö]", $_POST['postitoimipaikka'])))
{
print "Antamasi postitoimipaikka on virheellinen.";
exit;
}
Lomakkeessa täytyy olla charset=utf-8, koska muuten cPanelin webmail ei näytä lomakkeelta tuleissa viesteissä skandinaaveja å,ä,ö. Mutta nyt lomakkeen käsittelijä ei sitten hyväksy lomakkeen kenttiin skandinaaveja! Hyväksyisi, jos laittaisi charset=iso-8859-1, mutta webmailiin tulleessa viestissä eivät sitten skandinaavit näy.
Mitä tehdä?
/* Postitoimipaikan kelvollisuus */
if (!(ereg("^[a-z,å,ä,ö,A-Z,Å,Ä,Ö]", $_POST['postitoimipaikka'])))
{
print "Antamasi postitoimipaikka on virheellinen.";
exit;
}
Lomakkeessa täytyy olla charset=utf-8, koska muuten cPanelin webmail ei näytä lomakkeelta tuleissa viesteissä skandinaaveja å,ä,ö. Mutta nyt lomakkeen käsittelijä ei sitten hyväksy lomakkeen kenttiin skandinaaveja! Hyväksyisi, jos laittaisi charset=iso-8859-1, mutta webmailiin tulleessa viestissä eivät sitten skandinaavit näy.
Mitä tehdä?
Vastaukset 1
Vanhimmat
Katsos http://fi2.php.net/manual/fi/function.mb-ereg.php
Tai sitten otat ISOna ja tarkastat sen sillä, ja sitten vain http://fi2.php.net/manual/fi/function.utf8-encode.php function kautta kun lähetät mailiin.
Voit myös kokeilla http://fi2.php.net/manual/fi/function.setlocale.php
Käsittääkseni tuo ongelmasi johtunee että PHP 5 ei ymmärrä UTF-8 tekstiä kunnolla, vasta PHP 6 asia korjaantuu.
Ja tallennathan tiedoston UTF-8:na etkä ISOna? Tuo muutetaan editoristasi. Jos et tuota muuta niin ääkköset tulee UTF-8 koodattuna ja tuossa eregissä niitä ei ole.