v2.5.2
Giriş yap

PHP ile veritabanı işlemlerinde çoklu dil yapısı nasıl olmalıdır ?

Anonim
1,177 defa görüntülendi

Merhaba arkadaşlar,
Bir proje geliştiriyorum ve bu projede 3 dil olacak (Türkçe, ingilizce, Arapça).
Veritabanımdan dinamik veriler çekeceğim. Örneğin kategoriler, ürünler, sorular vb.
Fakat admin panelinde bunları girerken nasıl bir yapı kurmalıyım ?
İnternette araştırdım fakat çok bir kaynak bulamadım. Yardımcı olur musunuz ?

Cevap yaz
Cevaplar (3)
ugurturkmen
1380 gün önce

Ellerinize sağlık dostlar, Statik textler için kullanmış olduğum bir yol var. Benim tek sorunum veritabanına eklerken nasıl bir yol izlemem gerektiğiydi.
Opencart sistemine baktım biraz orada 3 dil için kategori ekledim, veritabanına 3 kayıt ekledi. Bu da değişik bir yol aslında

codepacks
1380 gün önce

örnek bir tablo sistemi
<?php

CREATE TABLE 'language' (
'id' int(11) NOT NULL,
'referans' varchar(250) DEFAULT '',
'secenekler' text NOT NULL,
'language_key' varchar(500) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
'ingilizce' text,
'arapca' text CHARACTER SET utf8 COLLATE utf8_unicode_ci,
'turkce' text CHARACTER SET utf8 COLLATE utf8_unicode_ci
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO 'langs' ('id', 'referans', 'secenkler', 'language_key', 'ingilizce', 'arapca', 'turkce') VALUES
(1, '', '', 'signup', 'Signup', 'سجل', 'Kaydol'),
(2, '', '', 'logout', 'Logout', 'خروج', 'Çıkış'),

üstte insert değerinde dikkat edersen 3 dil eklenmiş oldum
eklediğim bu değerleri admin sayfasından içeriklere, sayfalara, girişlere göre düzenleme yapabilirsin

örnek kod düzeni
$sorgu = login_test = language('Giriş Başarısız');

?>

jct
1380 gün önce

Mantığını anlatmaya çalışayım; Öncelikle kaç dil kullancaksan o kadar ayrı php dosyan olmalı.

$Language = array(
"Menu-1"	=> "Home",
"Menu-2"	=> "About",
"Menu-3"	=> "Products",
"Menu-4"	=> "Contact"
)

benzeri bir dizi oluşturabilirsin. Dizi değerlerini Db'den de çekebilirsin. (Ancak bence gereksiz bir yük olur SQL için) Bu değişkenleri sayfan dan çekersin. Bu dillerden biri default dil olur. Daha sonra kullanıcının seçimine göre SESSION veya COOKIE ile kullanıcıya atarsın. Yada bir üyelik sistemi ise kullanıcının profil özelliklerinden dil seçimi yaptırabilirsin.