بسم الله الرحمن الرحيم ,
السلام عليكم و رحمة الله ,
بحثت كتير و تعبت في ايجاد موضوع عن تعدد اللغات و بصراحة كل المواضيع مفهمتش منها حاجة لحد ما ذاكرت OOP لقيت حل لتعدد اللغات
ارجوا الناس تقولي رايها فيه و اذا كان عملي و سريع ولا لآ ,
صفحة index.php
<?php
/**
* @author HUSSEin-AHMeD
* @copyright 2011
*/
// here we include head.html and edit on it :D
class languages {
public $lang_name;
public function _loadfile ($filename){
$this->lang_name = file_get_contents($filename);
}
public function _strrep ($rep,$str){
$this->lang_name = str_replace("{$rep}",$str, $this->lang_name);
}
public function _display (){
eval("?>".$this->lang_name."<?");
}
}
/*<?$_SERVER['PHP_SELF']?>*/
$lang = new languages();
echo "
<form method='POST' action='lang.php'>
<input type='image' src='img/ar.png' name='ar' value='lang'/>
<input type='image' src='img/en.png' name='en' value='lang'/>
<input type='image' src='img/fr.png' name='fr' value='lang'/>
</form>";
if(isset($_COOKIE['ar'])){
include "langs/ar.php";
}
if(isset($_COOKIE['en'])){
include "langs/en.php";
}
if(isset($_COOKIE['fr'])){
include "langs/fr.php";
}
if(!isset($_COOKIE['en']) && !isset($_COOKIE['ar']) && !isset($_COOKIE['fr']))
{
include "langs/en.php";
}
$lang->_loadfile("head.html");
$lang->_strrep("{sitename}",$sitename);
$lang->_strrep("{name}",$name);
echo $lang->_display();
?>صفحة lang.php التي يتم فيها تسجيل الكوكي الخاص باللغة ثم التحويل للرئيسية
<?
/**
* @author HUSSEin-AHMeD
* @copyright 2011
*/
ob_start();
if($_POST['en']){
setcookie("ar",'language',time()-3610);
setcookie("fr",'language',time()-3610);
setcookie("en",'language',time()+3600);
header("location:index.php");
}
elseif($_POST['ar']){
setcookie("en",'language',time()-3610);
setcookie("fr",'language',time()-3610);
setcookie("ar",'language',time()+3600);
header("location:index.php");
}
elseif($_POST['fr']){
setcookie("en",'language',time()-3610);
setcookie("ar",'language',time()-3610);
setcookie("fr",'language',time()+3600);
header("location:index.php");
}
ob_end_flush();
?>صفحة head.html الي بتظهر للمتصفح الي فيها المتغيرات الي بيتم استبدالها علي حسب الكوكي
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1256" />
<meta name="author" content="HUSSEin-AHMeD" />
<title>{sitename}</title>
</head>
<body>
<h1>{name}</h1>
</body>
</html>صفحات اللغة نفسها ar.php || en.php || fr.php علي الترتيب
<?php
/**
* @author HUSSEin-AHMeD
* @copyright 2011
*/
$sitename = "مرحبا بكم في موقعنا";
$name = "اسمي: حسين أحمد";
?><?php
/**
* @author HUSSEin-AHMeD
* @copyright 2011
*/
$sitename = "Welcome to our site";
$name = "My name is: HUSSEin";
?><?php
/**
* @author HUSSEin-AHMeD
* @copyright 2011
*/
$sitename = "Bienvenue sur notre site";
$name = "Je m'apple: HUSSEin";
?>و الصور في المرفقات اتمني التعليق حتي تعم الفائدة .