php switch get III.


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

Kapcsolódó bejegyzések:
  • Egyszer mindenki elérkezik odáig, hogy több nyelvű honlapot kell készítenie. Ilyenkor jön a nagy kérdés, hogy adatbázissal csináljuk-e meg avagy sem. Ez a kérdés …

  • A PHP segítségével könnyen megoldható, hogy egy lapon váltogatni lehessen a stílusok és template-k között (attól is függ hogy a CSS-ben csak a formázásra vonatko …

  • Az első kérdés, ami felmerül majdnem mindenkiben, hogy lehet egy többnyelvű honlapot megcsinálni, amin váltani lehet a nyelvek között. Vegyünk egy példát, van eg …

  • Először is nem árt egy biztonsági mentést csinálni a főfájlodről! (index.html), aztán mentsd el a "fő" oldaladat , PHP dokumentumként. Egyszerűen csak …

  • Talán a cikk neve egy kicsit érdekesen hangzik, de aki belesett az alábbi problémába, az egyből érteni fogja miért is adtam ezt a nevet.Talán sokan olvastáto …

A cikket beküldte: Harder (http://blog.harder.hu)

Szólj hozzá
a php switch get III. c. bejegyzéshez

- Engedélyezett HTML elemek: <a> <em> <strong> <ul> <ol> <li>
- Forráskód beküldéséhez tedd a kódot ezek közé: <pre lang="php" line="1">Kódrészlet helye itt</pre>