A cikk előzményeként olvasd el ezt a 2 leírást (php switch get I. és php switch get II.). A fórumon felvetődött a kérdés: hogy lehetne megoldani a nyelvválasztást az előzőekben már ismertett módszer segítségével? A TLoF-tól kapott válaszból született az alábbi olvasmány. :) (Harder)

Könyvtárszerkezet

-index.php (Flash, meg nyelvválasztás) -index2.php (Amiben a switch/GET kód van) -error.php (Egy file amiben van egy szép hibaüzenet) -HU - cegunkrol.php - termekeink.php -EN - cegunkrol.php - termekeink.php Na igy néz ki mondjuk a könyvtárszerkezeted. Igy átlátható, és tudod, hogy mi hol van. Az index.php-be igy rakod be a nyelvválasztást: index2.php?lang=HU és index2.php?lang=EN pl.:

<a href="index2.php?lang=HU">Magyar</a>

A látogató klikkel és megérkezik az index2.php-ra, de most már tudjuk, hogy milyen nyelvet akar használni. Az index2.php elő sorai:

<?php
session_start();
if (isset($_GET['lang']) and is_dir('./'. $_GET['lang']) and $_GET['lang'] != '.' and $_GET['lang'] != '..')
 {
  $_SESSION['lang'] = $_GET['lang']
 }
if ($_SESSION['lang'] == '' or !isset($_SESSION['lang']));
 {
  $_SESSION['lang'] == 'HU';
 }

/*
Ide jön a tetszőleges HTML kód, amit meg akarsz minden lapon jeleníteni.
*/

$_GET['id'] = str_replace('../', '',$_GET['id'] );
if (isset($_GET['id']) and $_GET['id'] != '')
 {
  if (is_file($_SESSION['lang'].'/'. $_GET['id'] . '.php'))
  {
  include($_SESSION['lang'] .'/'. $_GET['id'] . '.php');
 }
else
 {
  include('error.php');
 }
}
else
 {
  include($_SESSION['lang'] . '/kezdolap.php');
 }
?>

Ahhoz, hogy a nyelvvel együtt a menü is változzon, még egy plusz részre szükség van:

if is_file('./menu/' . $_SESSION['lang'] . '_menu.php')
 {
  include ('./menu/' . $_SESSION['lang'] . '_menu.php');
 }
else
 {
  include ('./menu/default_menu.php');
 }

Szerző: TLoF (kepregeny.net

Harder

Harder

Profil