Most éppen a “Staff directory” bővítménnyel próbálkozom - a hosszú ő és ű betűk helyett kérdőjelek vannak. A kódban nincs megadva karakterkódolás. Tudna segíteni valaki, melyik php-ba fájlba milyen parancsot kell beírni ehhez?
Lehet ezt általánosan javítani, mert már több pluginnál előfordult ilyen hiba.
Köszönettel,
boresuta
Ennek oka az, hogy latin1_swedish_ci be menti el az adatokat.
Próbáld ki azt, hogy:
- inaktiváld a bővítményt! (nem kell törölni, csak ne legyen aktív!)
- Menj be a phpmyadmin-ba (a tárhelyedhez biztos kaptál hozzáférést), keresed meg az adazbázisodat, menj bele és töröld ki ezt a 3 táblát (de csak ezeket!):
wp_staff_directory
wp_staff_directory_categories
wp_staff_directory_templates
Ezzel elvesznek az adatok, de gondolom még nincsennek feltöltve.
- Keresd meg a a wp-content/plugins/staff-directory/admin/admin-functions.php -fájlt! Ezt fogjuk szerkeszteni. Ezt mentsd le és nyisd meg szerkesztésre.
Ebben az admin-functions.php -fájlban keresd meg a 20. sort (meg ami utána van sql utasítás), ami így néz ki:
$sql = “CREATE TABLE " . STAFF_DIRECTORY_TABLE . " (
staff_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) NOT NULL ,
position VARCHAR(30) NOT NULL ,
email_address VARCHAR(30) NOT NULL ,
phone_number VARCHAR(30) NOT NULL ,
photo VARCHAR(60) NOT NULL ,
bio TEXT NOT NULL ,
category varchar(3),
image varchar(100),
PRIMARY KEY (staff_id)
)”;
Ezt cseréld le erre:
$sql = “CREATE TABLE " . STAFF_DIRECTORY_TABLE . " (
staff_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) character set utf8 ,
position VARCHAR(30) character set utf8 ,
email_address VARCHAR(30) character set utf8,
phone_number VARCHAR(30) character set utf8,
photo VARCHAR(60) character set utf8,
bio TEXT character set utf8,
category varchar(3) character set utf8,
image varchar(100) character set utf8,
PRIMARY KEY (staff_id)
)”;
Ezzel rákényszerítjük, hogy a tábla minden egyes eleme tuti utf8 legyen, mert phpmyadmin ban is meg lehetne, de ott valójában nem biztos hogy át is állítja!
Ezután keresd meg a 46. sort, ott is lesz egy ilyen:
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) NOT NULL ,
PRIMARY KEY (cat_id)
)”;
Ezt is cseréljük, utf-8 ra beállítva: (name részt elég)
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) character set utf8 ,
PRIMARY KEY (cat_id)
)”;
És van még a 110. sorban is egy sql utasítás:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) NOT NULL ,
template_code TEXT NOT NULL ,
PRIMARY KEY (template_id)
)”;
…helyett ez legyen:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) character set utf8 ,
template_code TEXT character set utf8 ,
PRIMARY KEY (template_id)
)”;
A fájl módosítása után utf-8 ban mentsed el magát ezt a fájlt! Minden esetben, amikor ilyen történik, akkro valahol, valami nem utf-8! Mindennek utf-8 nak kell lennie, (adatbázis és a kapcsolódás, adatok, fájlok)
Utána másold vissza ezt a fájlt a helyére, és csak aktiválni kell a bővítményt, le fog futni ez az install rész és megint elkészíti a 3 új táblát, de most már biztosan utf-8 lesz, így pl az Å is Å lesz és nem ? kerül a helyére.
$sql = “CREATE TABLE " . STAFF_DIRECTORY_TABLE . " (
staff_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) NOT NULL ,
position VARCHAR(30) NOT NULL ,
email_address VARCHAR(30) NOT NULL ,
phone_number VARCHAR(30) NOT NULL ,
photo VARCHAR(60) NOT NULL ,
bio TEXT NOT NULL ,
category varchar(3),
image varchar(100),
PRIMARY KEY (staff_id)
)”;
Ezt cseréld le erre:
$sql = “CREATE TABLE " . STAFF_DIRECTORY_TABLE . " (
staff_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) character set utf8 ,
position VARCHAR(30) character set utf8 ,
email_address VARCHAR(30) character set utf8,
phone_number VARCHAR(30) character set utf8,
photo VARCHAR(60) character set utf8,
bio TEXT character set utf8,
category varchar(3) character set utf8,
image varchar(100) character set utf8,
PRIMARY KEY (staff_id)
)”;
Ezzel rákényszerítjük, hogy a tábla minden egyes eleme tuti utf8 legyen, mert phpmyadmin ban is meg lehetne, de ott valójában nem biztos hogy át is állítja!
Ezután keresd meg a 46. sort, ott is lesz egy ilyen:
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) NOT NULL ,
PRIMARY KEY (cat_id)
)”;
Ezt is cseréljük, utf-8 ra beállítva: (name részt elég)
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) character set utf8 ,
PRIMARY KEY (cat_id)
)”;
És van még a 110. sorban is egy sql utasítás:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) NOT NULL ,
template_code TEXT NOT NULL ,
PRIMARY KEY (template_id)
)”;
…helyett ez legyen:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) character set utf8 ,
template_code TEXT character set utf8 ,
PRIMARY KEY (template_id)
)”;
A fájl módosítása után utf-8 ban mentsed el magát ezt a fájlt! Minden esetben, amikor ilyen történik, akkro valahol, valami nem utf-8! Mindennek utf-8 nak kell lennie, (adatbázis és a kapcsolódás, adatok, fájlok)
Utána másold vissza ezt a fájlt a helyére, és csak aktiválni kell a bővítményt, le fog futni ez az install rész és megint elkészíti a 3 új táblát, de most már biztosan utf-8 lesz, így pl az Å is Å lesz és nem ? kerül a helyére.
$sql = “CREATE TABLE " . STAFF_DIRECTORY_TABLE . " (
staff_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) character set utf8 ,
position VARCHAR(30) character set utf8 ,
email_address VARCHAR(30) character set utf8,
phone_number VARCHAR(30) character set utf8,
photo VARCHAR(60) character set utf8,
bio TEXT character set utf8,
category varchar(3) character set utf8,
image varchar(100) character set utf8,
PRIMARY KEY (staff_id)
)”;
Ezzel rákényszerítjük, hogy a tábla minden egyes eleme tuti utf8 legyen, mert phpmyadmin ban is meg lehetne, de ott valójában nem biztos hogy át is állítja!
Ezután keresd meg a 46. sort, ott is lesz egy ilyen:
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) NOT NULL ,
PRIMARY KEY (cat_id)
)”;
Ezt is cseréljük, utf-8 ra beállítva: (name részt elég)
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) character set utf8 ,
PRIMARY KEY (cat_id)
)”;
És van még a 110. sorban is egy sql utasítás:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) NOT NULL ,
template_code TEXT NOT NULL ,
PRIMARY KEY (template_id)
)”;
…helyett ez legyen:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) character set utf8 ,
template_code TEXT character set utf8 ,
PRIMARY KEY (template_id)
)”;
A fájl módosítása után utf-8 ban mentsed el magát ezt a fájlt! Minden esetben, amikor ilyen történik, akkro valahol, valami nem utf-8! Mindennek utf-8 nak kell lennie, (adatbázis és a kapcsolódás, adatok, fájlok)
Utána másold vissza ezt a fájlt a helyére, és csak aktiválni kell a bővítményt, le fog futni ez az install rész és megint elkészíti a 3 új táblát, de most már biztosan utf-8 lesz, így pl az Å is Å lesz és nem ? kerül a helyére.
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) NOT NULL ,
PRIMARY KEY (cat_id)
)”;
Ezt is cseréljük, utf-8 ra beállítva: (name részt elég)
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) character set utf8 ,
PRIMARY KEY (cat_id)
)”;
És van még a 110. sorban is egy sql utasítás:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) NOT NULL ,
template_code TEXT NOT NULL ,
PRIMARY KEY (template_id)
)”;
…helyett ez legyen:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) character set utf8 ,
template_code TEXT character set utf8 ,
PRIMARY KEY (template_id)
)”;
A fájl módosítása után utf-8 ban mentsed el magát ezt a fájlt! Minden esetben, amikor ilyen történik, akkro valahol, valami nem utf-8! Mindennek utf-8 nak kell lennie, (adatbázis és a kapcsolódás, adatok, fájlok)
Utána másold vissza ezt a fájlt a helyére, és csak aktiválni kell a bővítményt, le fog futni ez az install rész és megint elkészíti a 3 új táblát, de most már biztosan utf-8 lesz, így pl az Å is Å lesz és nem ? kerül a helyére.
$sql = “CREATE TABLE " . $staff_directory_categories . " (
cat_id INT(11) NOT NULL AUTO_INCREMENT ,
name VARCHAR(30) character set utf8 ,
PRIMARY KEY (cat_id)
)”;
És van még a 110. sorban is egy sql utasítás:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) NOT NULL ,
template_code TEXT NOT NULL ,
PRIMARY KEY (template_id)
)”;
…helyett ez legyen:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) character set utf8 ,
template_code TEXT character set utf8 ,
PRIMARY KEY (template_id)
)”;
A fájl módosítása után utf-8 ban mentsed el magát ezt a fájlt! Minden esetben, amikor ilyen történik, akkro valahol, valami nem utf-8! Mindennek utf-8 nak kell lennie, (adatbázis és a kapcsolódás, adatok, fájlok)
Utána másold vissza ezt a fájlt a helyére, és csak aktiválni kell a bővítményt, le fog futni ez az install rész és megint elkészíti a 3 új táblát, de most már biztosan utf-8 lesz, így pl az Å is Å lesz és nem ? kerül a helyére.
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) NOT NULL ,
template_code TEXT NOT NULL ,
PRIMARY KEY (template_id)
)”;
…helyett ez legyen:
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) character set utf8 ,
template_code TEXT character set utf8 ,
PRIMARY KEY (template_id)
)”;
A fájl módosítása után utf-8 ban mentsed el magát ezt a fájlt! Minden esetben, amikor ilyen történik, akkro valahol, valami nem utf-8! Mindennek utf-8 nak kell lennie, (adatbázis és a kapcsolódás, adatok, fájlok)
Utána másold vissza ezt a fájlt a helyére, és csak aktiválni kell a bővítményt, le fog futni ez az install rész és megint elkészíti a 3 új táblát, de most már biztosan utf-8 lesz, így pl az Å is Å lesz és nem ? kerül a helyére.
$sql = “CREATE TABLE " . $staff_directory_templates . " (
template_id INT(11) NOT NULL AUTO_INCREMENT ,
template_name VARCHAR(50) character set utf8 ,
template_code TEXT character set utf8 ,
PRIMARY KEY (template_id)
)”;
A fájl módosítása után utf-8 ban mentsed el magát ezt a fájlt! Minden esetben, amikor ilyen történik, akkro valahol, valami nem utf-8! Mindennek utf-8 nak kell lennie, (adatbázis és a kapcsolódás, adatok, fájlok)
Utána másold vissza ezt a fájlt a helyére, és csak aktiválni kell a bővítményt, le fog futni ez az install rész és megint elkészíti a 3 új táblát, de most már biztosan utf-8 lesz, így pl az Å is Å lesz és nem ? kerül a helyére.
Köszönöm szépen,
nálam kicsit másképpen néznek ki a kódok, de a phpmyadmin jó ötlet volt, átállítottam a mezők nyelvkiosztását, és megoldódott a probléma.
Köszönöm a segítséget, ha közvetve is, de benne volt a megoldás!