Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z przenoszeniem zmeinnych sesji
Forum PHP.pl > Forum > Przedszkole
Gość_malina_c
Mam problem! na moim kompie w domu skrypt mi dziala (uzywam krasnala), a na

innym serwerze juz nie. proboem jest w zmeinnych sesji. Na pierwszej stronie

jest wszystko ok, a gdy przekazuje zmienne sesji na druga strone, to one juz

nei istenija, mimo, ze uzywam wszystkich session_start() na poczatku, i

zmeinne rpzekazuje przez $_HTTP_SESSION_VARS. O co tu chodzi? Dlaczego u mnie

to dizala a na innym serwerze nie?

A oto kody:
index.php
  1. <?php
  2. ?>
  3. <?php
  4. @ $kod = $HTTP_POST_VARS['kod'];  //pobranie wartosci zminnej kod z tablicy
  5.  
  6.  
  7. if (empty($kod)) {
  8. ?>
  9. <table border = "0" align = "center">
  10. <tr>
  11.  <td align = "center"><h3>Wprowadz kod</h3></td>
  12. </tr>
  13. <tr>
  14. <td align = "center">
  15. <form action = "index.php?<?=SID?>" method = "POST">
  16. //to co ma sie wyswietlic
  17. <?php
  18. }
  19.  
  20.  
  21. if (!empty($kod)) {
  22.  
  23. include('polacz_z_baza.inc');
  24. polacz();
  25. $ilosc_kodow = 0;
  26. $ilosc_wierszy = 0;
  27. $zapytanie = "select max(id_kodu) from kody";
  28.  $kwerenda = mysql_query($zapytanie);
  29.  $max_kod = mysql_fetch_row($kwerenda);
  30.  
  31. $dobry_kod == false;
  32. for ($i = 1; $i <= $max_kod[0]; $i++) {
  33. $zapytanie = "select kod from kody where id_kodu=$i";
  34.  $kwerenda = mysql_query($zapytanie);
  35. $kod_baza = mysql_fetch_row($kwerenda);
  36. $tresc_kodu = $kod_baza[0];
  37. if ($kod == $tresc_kodu) {
  38. $dobry_kod = true;
  39. //$zapytanie = "delete from kody where id_kodu=$i";  
  40.  
  41. //usuniecie wykorzystanego raz kodu z bazy
  42. // $kwerenda = mysql_query($zapytanie);
  43. break;
  44. }
  45. }
  46.  
  47. rozlacz();
  48.  
  49. if ($dobry_kod == true) { ?>
  50. <table border="0" align = "center">
  51. <form name="ustalenie_plci" action="main.php?<?=SID?>
  52.  
  53. onsubmit="return checkRadios(this)" >
  54. //to, co ma sie wyswietlic w tym momencie
  55. </form><?php
  56. } else {
  57.  // to, co ma sie wyswietlic w tym momencie
  58. }
  59.  
  60. $_HTTP_SESSION_VARS['tresc_kodu'] = $tresc_kodu;
  61. $_HTTP_SESSION_VARS['kod'] = $kod;
  62. echo "tresc kodu z sesji: ".$_HTTP_SESSION_VARS['tresc_kodu']."<br>";
  63. }
  64. ?>

i to wszystko dizala. problem zaczyna sie tutaj, w main.php:
  1. <?php
  2. ?>
  3. <?php
  4. extract($_SESSION);
  5.  
  6.  $kod = $_HTTP_SESSION_VARS['kod'];
  7.  $tresc_kodu = $_HTTP_SESSION_VARS['tresc_kodu'];
  8.  
  9. if ((isset($kod) != 1) )
  10. {
  11. echo "tresc kodu z sesji: $tresc_kodu, kod z sesji: $kod<br>";
  12. die ("<h1> Musisz podac kod!</h1>");
  13. }
  14.  
  15. if ($kod == $tresc_kodu)
  16. {
  17. include('klasa.inc');
  18.  
  19. $asertywnosc = new pytania();
  20.  
  21. $plik_z_trescia = "tresc_pytan.txt";
  22.  
  23. $asertywnosc -> ustaw_plik($plik_z_trescia);
  24.  
  25. $asertywnosc -> wyswietl_pytania($plik_z_trescia);
  26. }
  27. else
  28. {
  29. die ("<h1>Bledny kod!</h1>");
  30. }
  31. ?>

Bo tu pojawia sie komunikat "Musisz podac kod", czyli tak, jakby ten kod sesji

nei istnial! A u mnie na kompie w domu jest wszystko ok, nawet SID jest

przekazywane w pasku adresu do kona, a na serwerze innym tylko za pierwszym

razem...
Co mam zrobic?? Bardzo pilna to sprawa dla mnie, wiec jak mozesz to

odpisz...smile.gif Pozdrawaim
- Malina
kszychu
Zdecyduj się, raz używeasz $HTTP_SESSION_VARS a raz $_SESSION. Polecam pozamieniać wszystko na to drugie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.