Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] sesje..., problem z przekazaniem ich dalej
wojtekwro
post
Post #1





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 26.04.2007

Ostrzeżenie: (0%)
-----


Witam,

tworzes obie mały skrypcik obsługujący języki na stronie. Zasada jest prosta z 1 strony wybieramy interesujący nas język i jestesmy przenoszenei na stronę główna, w już wybranym języku. Ma to działać tak, że z bazy:

  1. `main` (`id`, `pozycja`, `tekst`, `lang`) VALUES
  2. (1, 'top', 'witaj na stronie.', 'pl'),
  3. (2, 'top', 'Wellcome english', 'uk'),
  4. (3, 'top', 'co? po niemiecku', 'de'),
  5. (4, 'top', 'co? po hiszpa?sku', 'sp');

która wygląda tak jak pokzałem wyżej. Jest uruchamiane zapytanie wyglądające tak:
  1. <?php
  2. $query = "SELECT tekst FROM main WHERE pozycja ='top'AND lang='$lang'";
  3. $wynik = mysql_query($query);
  4. while ($ROW = mysql_fetch_object($wynik))
  5. {
  6. print "$ROW->tekst ";
  7. ?>


Działa to fajnie jak na moje potrzeby ;] problem pojawia się kiedy umieszczę linka do jakiejś podstrony i tam chcę wczytać również jakiś język. Nie jest przekazywana zmienna $_SESSION['lang'] poniże zamieszczę skrypty. Proszę o wskazanie błędu/ów i powiedzcie czy taki sposób jest dobry aby na stronei www mieć kilka języków.

index.php w tym pliku wybieramy język jaki ma być wyświetlany na stronie, a także przekazujemy sobie zmienną $lang.
  1. <?
  2. ?>
  3. <html>
  4. <head>
  5. <meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
  6.  
  7. </head>
  8. <body>
  9. <a href="lang.php?lang=uk"><img src="images/uk.jpeg" width="70px" height="50px" alt="angielski" border="0"/></a>
  10. <a href="lang.php?lang=de"><img src="images/de.jpeg" width="70px" height="50px" alt="niemiecki" border="0"/></a>
  11. <a href="lang.php?lang=pl"><img src="images/pl.jpeg" width="70px" height="50px" alt="polski" border="0"/></a>
  12. <a href="lang.php?lang=sp"><img src="images/sp.jpeg" width="70px" height="50px" alt="hiszpański" border="0"/></a>
  13. <?php
  14. $_SESSION[$lang1]=$lang ; 
  15. print_r($_SESSION);
  16. ?>
  17. </body>
  18. </html>


lang.php tutaj odbieramy zmienną lang i wyświetlamy interesujący nas język ten skrypt działa OK do momentu kliknięcia w test, czyli kolejnej "podstrony".
  1. <?
  2. $lang=$_GET['lang'];
  3. $_SESSION['lang'] = $lang; // przypisz jej początkową wartość
  4. ?>
  5. <html>
  6. <head>
  7. <meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
  8. </head>
  9. <body>
  10. <?php
  11. $connection = @mysql_connect('localhost', 'root', '')
  12. or die('brak polaczenia z BD');
  13. $db = @mysql_select_db("page")
  14. or die('Nie mogę połączyć się z bazą danych');
  15. $query = "SELECT tekst FROM main WHERE pozycja ='top'AND lang='$lang'";
  16. $wynik = mysql_query($query);
  17. while ($ROW = mysql_fetch_object($wynik))
  18. {
  19. print "$ROW->tekst ";
  20. echo '<a href="test.php">test</a>';
  21. }
  22.  
  23.  echo 'Aktulanie używanym językiem jest: '.$lang.'.';
  24.  echo ' sesja '.$_SESSION['lang'].'';
  25. print_r($_SESSION);
  26. ?>

test.php
  1. <?
  2.  
  3. $_SESSION['lang'] = $lang; // przypisz jej początkową wartość
  4. ?>
  5. <html>
  6. <head>
  7. <meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
  8. </head>
  9. <body>
  10. <?php
  11.  echo 'Aktulanie używanym językiem jest: '.$lang.'.';
  12.  echo ' sesja '.$_SESSION['lang'].'';
  13. print_r($_SESSION);
  14. ?>


Z góry dziękuje z pomoc.
Go to the top of the page
+Quote Post

Posty w temacie
- wojtekwro   [php] sesje...   4.11.2007, 20:11:44
- - tsharek   hmm z tego co widzę to w każdym skrypcie przypisuj...   4.11.2007, 21:01:58


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 19:01