Cpanel Fantastico i upitnici u tekstu
credit: Erik Charlton
Zakupili ste hosting s Cpanelom, preko onog super jednostavnog Fantastico alata instalirali neko od blog/CMS rješenja (wordpress, joomla…) i spremni ste za rad.
….ali …što?? Odkud toliki upitnici u vašem tekstu koji ste upisali? Čćđ slova, ništa od toga ne radi? Gledate korisničke upute, prelistavate forume, nigdje ne spominju ništa ovakvog – sve je podržano, čim uključite podršku za utf8 set znakova bi sve trebalo raditi. Nažalost, još uvijek ne rade, još uvijek su upitnici sveprisutni i odgovora nigdje.
Rješenje je ustvari jednostavno – Fantastico je automatski postavio bazu pod latin1 setom znakova i vanjskim podešavanjima nikako ne možete postaviti da vam sva slova rade kako vi želite. Ustvari je potreban samo sitni zahvat – postavljanje svih tablica i tekstualnih kolona na utf8 set znakova unutar baze. Za spretnog DBA posao od par minuta.
Nažalost, ako nemate pristup bazi ili niste vični direktnom namještanju stvari u bazi nemate puno rješenja – ili možete pitati nekog stručnijeg da vam pomogne ili zatražiti od vašeg hostera pomoć oko ovoga.
Za one malo smjelije evo i trećeg rješenja – skripta koja će posao odraditi za vas: naći ćete je na ovom linku (odaberite verziju #2). Dovoljno je cjelokupni kod iskopirati u praznu datoteku, postaviti prave podatke za bazu (ime baze, korisnik u bazi, lozinka tog korisnika i server – najčešće localhost) i preimenovati je s .php ekstenzijom (npr. postavi-utf8.php). Navedenu datoteku postavite preko ftp-a u public-html direktorij na svojem internet prostoru i pokrenite je u browseru s http://ime-sajta.hr/postavi-utf8.php (naravno, zamijenite s vašom domenom i imenom datoteke koju ste postavili gore).
Skripta će sama napraviti ostatak – postaviti znakovni set svih tablica i tekstualnih polja u bazi na utf8. Ukoliko se jave greške kod izvršenja najvjerovatnije je da niste upisali dobre podatke za spajanje na bazu. Vama tada ostaje samo da još jednom sav tekst s upitnicima upišete ponovno sa svim slovima i to je to. Samu skriptu možete naravno prebrisati, dovoljno ju je samo jednom pokrenuti (nemojte se brinuti ako je pokrenete više puta, ništa posebno se neće dogoditi).