ok
A więc tak tak wygląda kod tabeli w której muszę podmienić język:
CODE
include "lang.php";
$panel_komisu = array ( 'Osobowe' => array ( ''.lang("osobowe").'' => array ( 'id' => 1, 'nazwa' => ''.$marka.'', 'fieldname' => 'marka_osobowe', 'pole' => 'lista_marka' , 'checked' => 'first' ),
'model_osobowe' => array ( 'id' => 2, 'nazwa' => 'Model', 'fieldname' => 'model_osobowe', 'pole' => 'lista_model' , 'checked' => 'first' ),
'wersja'=> array ( 'id' => 2, 'nazwa' => 'Wersja modelu, itp...', 'fieldname' => 'wersja', 'pole' => 'input1' , 'maxlength' => 20 ),
'stats' => array ( 'id' => 110, 'nazwa' => 'Liczba wy¶wietleń', 'fieldname' => 'stats', 'pole' => 'input1' , 'maxlength' => 7 ),
'numer' => array ( 'id' => 111, 'nazwa' => 'Numer ogłoszenia', 'pole' => 'input1' ), ), ?>
Z tak wygląda kod odpowiedzialny za podmienianie danych:
CODE
<?php
if ($_GET['lang']){
setcookie('lang', $_GET['lang'], time()+12*2592000);
};
if ($_GET['lang']){ //jeśli wybrano zmianę języka, aktualizuje ciastko.
setcookie('lang', $_GET['lang'], time()+12*2592000);
};
function lang($zm){
if (isset($_COOKIE['lang']) && !isset($_GET['lang'])) { // sprawdzamy czy istnieje ciastko LANG i czy nie wysłano przypadkiem polecenia zmiany języka. Jeśli się zgadza to ustawiamy zmienną na zawartość ciastka.
$tong = $_COOKIE['lang'];
}
elseif($_GET['lang']){ // jeśli zostało wysłane polecenie zmiany języka, aktualizujemy ciastko oraz ustawiamy zmienną na tą wartość. Przez to unikam konieczności odświeżania strony, po każdym kliknięciu zmiany języka
$tong = $_GET['lang'];
}
else { //jeśli ktoś nie dokonał wcześniej wyboru języka
$tong = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2);
};
//------------czesc II------------------
switch ($tong) {
case 'pl': $tong = 0; break;
case 'en': $tong = 1; break;
case 'de': $tong = 2; break;
case 'fr': $tong = 3; break;
case 'nl': $tong = 4; break;
// tu dodajemy deklaracje kolejnych wersji językowych
default: $tong = 0; break;
}
//------------czesc III------------------
$lang = Array(
//---------------------poprawność wyświetlania różnych wersji językowych---------------------------
'jezykstrony' => array("<head><meta http-equiv='Content-Type' content='text/html; charset=windows-1250' /><meta http-equiv='Content-pl' content='pl' /></head>", "<head><meta http-equiv='Content-Type' content='text/html; charset=windows-1250' /><meta http-equiv='Content-en' content='en' /></head>", "<head><meta http-equiv='Content-Type' content='text/html; charset=windows-1250' /><meta http-equiv='Content-de' content='de' /></head>", "<head><meta http-equiv='Content-Type' content='text/html; charset=windows-1250' /><meta http-equiv='Content-fr' content='fr' /></head>", "<head><meta http-equiv='Content-Type' content='text/html; charset=windows-1250' /><meta http-equiv='Content-nl' content='nl' /></head>"),
//------------------------------------------administracja------------------------------------------
"marka" => array('marka', 'mark', 'ABS', 'ABS', 'ABS'),
'tstatus' => array('Twój status:', 'Type of Account:', 'Art des Kontos:', 'Type de compte:', 'Type account:'),
'menu' => array('Menu', 'Menu', 'Menü', 'Menu', 'Menu'),
);
return $lang[$zm][$tong];
};
?>
A tak wygląda kod odpowiedzialny za wyświetlanie danych na stronie:
CODE
<?
$page = $_GET['page'];
$id = $_GET['id'];
$section = $_POST['section'];
$action = $_POST['action'];
$special = $_POST['special'];
if ($page == 'add' && $action == 'save' && !$special)
{
foreach ($_POST as $key => $value)
$$key = $value;
}
if (!$marka)
$marka = 0;
if (!$model)
$model = 0;
// ================================================================================
=================================================================
// ============================================================== osobowe ===========================================================================
// ================================================================================
=================================================================
if ($section == 1)
{
if ($action == 'save')
{
if (!$errtext)
{
$errtext = CheckVerifyForm($section);
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
{
$errtext = CheckWarrningForm($section);
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
{
$errtext = CheckVerifyDaneKontatkoweForm('BezLogowania');
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
{
$errtext = CheckVerifyTelefonyForm('BezLogowania');
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
{
$errtext = CheckVerifyEmailForm('BezLogowania');
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
$ogloszenie -> Zapamietaj($_POST);
$_SESSION['ogloszenie'] = $ogloszenie;
// if ($_SESSION['panel'] -> lo && $_SESSION['panel'] -> pa && $_SESSION['panel'] -> status != 1 && !$print)
// var_export ($ogloszenie);
}
if (($action == 'save' && $errtext) || ($action == 'create') || ($action == 'edit'))
{
echo '<div id="search">
<form action="?page='.$page.'&id='.$id.'" method="post">
<input type="hidden" name="section" value="'.$section.'">
<input type="hidden" name="action" value="save">
<table width="535" cellpadding=0 cellspacing=0>
<tr>
<td colspan="3" style="border: solid #828282; border-width: 0px 0px 2px 0px;">
<h1>Podstawowe parametry pojazdu</h1>
</td>
</tr>
<tr>
<td width="179">
<b>';
ShowPanelLabel($section, 'marka_osobowe');
echo '</b><br>';
ShowPanel($section, 'marka_osobowe', $marka_osobowe); // pokaz marke
i dalszy ciąg kodu odpowiedzialnego za wyswietlanie danych:
CODE
echo ' </td>
<td width="179">
<b>';
ShowPanelLabel($section, 'model_osobowe');
echo '</b><br>';
ShowPanel($section, 'model_osobowe', $model_osobowe); // pokaz model
echo ' </td>
<td width="179">
<b>';
ShowPanelLabel($section, 'wersja');
echo '</b><br>';
ShowPanel($section, 'wersja', $wersja);
echo ' </td>
<td>
<b>';
ShowPanelLabel($section, 'a17');
echo '</b><br>';
ShowPanel($section, 'a17', $a17);
echo ' </td>
<td>
<table cellpadding=0 cellspacing=0 width=100%><tr><td>';
ShowPanelLabel($section, 'a18');
if ($_SESSION['panel'] -> lo && $_SESSION['panel'] -> pa && $_SESSION['panel'] -> status > 1)
{
echo ' </td><td>';
ShowPanel($section, 'a18a', $a18a);
}
echo ' </td><td>';
ShowPanel_SP($section, 'a18', $a18);
echo ' </td>
<td>';
ShowPanel($section, 'a64', $a64);
ShowPanelLabel($section, 'a64');
CODE
echo ' </td>
</tr>
<tr>
<td>
<table cellpadding=0 cellspacing=0 width=100%><tr><td>';
ShowPanelLabel($section, 'a34');
if ($_SESSION['panel'] -> lo && $_SESSION['panel'] -> pa && $_SESSION['panel'] -> status > 1)
{
echo ' </td><td>';
ShowPanel($section, 'a34a', $a34a);
}
echo ' </td><td>';
ShowPanel_SP($section, 'a34', $a34);
ShowPanel($section, 'a111', $a111);
ShowPanelLabel($section, 'a111');
echo ' </td>
<td>
<table cellpadding=0 cellspacing=0 width=100%><tr><td>';
ShowPanelLabel($section, 'a72');
if ($_SESSION['panel'] -> lo && $_SESSION['panel'] -> pa && $_SESSION['panel'] -> status > 1)
{
echo ' </td><td>';
ShowPanel($section, 'a72a', $a72a);
}
echo ' </td><td>';
ShowPanel_SP($section, 'a72', $a72);
<tr>
<td>';
ShowPanel($section, 'a53', $a53);
ShowPanelLabel($section, 'a53');
echo ' </td>
<td>
<table cellpadding=0 cellspacing=0 width=100%><tr><td>';
ShowPanelLabel($section, 'a15');
if ($_SESSION['panel'] -> lo && $_SESSION['panel'] -> pa && $_SESSION['panel'] -> status > 1)
{
echo ' </td><td>';
ShowPanel($section, 'a15a', $a15a);
}
echo ' </td><td>';
ShowPanel_SP($section, 'a15', $a15);
echo ' </td>
</tr>';
include ('addkontaktkrok2.php3');
echo '</table>
</form>
</div>';
}
}
else
if ($section == 2)
{
if ($action == 'save')
{
if (!$errtext)
{
$errtext = CheckVerifyForm($section);
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
{
$errtext = CheckWarrningForm($section);
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
CODE
if (!$errtext)
{
$errtext = CheckVerifyDaneKontatkoweForm('BezLogowania');
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
{
$errtext = CheckVerifyTelefonyForm('BezLogowania');
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
{
$errtext = CheckVerifyEmailForm('BezLogowania');
if ($errtext)
echo '<table width="535"><tr><td align="center" class="warrning">'.$errtext.'</td></tr></table>';
}
if (!$errtext)
$ogloszenie -> Zapamietaj($_POST);
$_SESSION['ogloszenie'] = $ogloszenie;
}
if (($action == 'save' && $errtext) || ($action == 'create') || ($action == 'edit'))
{
echo '<div id="search">
<form action="?page='.$page.'&action=save&id='.$id.'" method="post">
<input type="hidden" name="section" value="'.$section.'">
<input type="hidden" name="action" value="save">
<table width="535">
<tr>
<td colspan="3" style="border: solid #828282; border-width: 0px 0px 2px 0px;">
<h1>Podstawowe parametry pojazdu</h1>
</td>
</tr>
<tr>
<td width="179">
<b>';
ShowPanelLabel($section, 'markainput');
echo '</b><br>';
ShowPanel($section, 'markainput', $markainput); // pokaz marke
echo ' </td>
<td width="179">
<b>';
ShowPanelLabel($section, 'modelinput');
echo '</b><br>';
ShowPanel($section, 'modelinput', $modelinput);
echo ' </td>
<td width="179">
<b>';
ShowPanelLabel($section, 'a1');
echo '</b><br>';
ShowPanel($section, 'a1', $a1);
include ('addkontaktkrok2.php3');
echo '</table>
</form>
</div>';
}
}
?>
Zadeklarowałem język strony, dodałem do kodu tablicy oraz panelu dodawania ogłoszeń:
echo lang('jezykstrony'); w której mam zadeklarowane jezyki w zalezności od wybranego.
Z niewiadomych przyczyn zwraca mi teraz wartość "Array" a powinno co innego.
... ;/