Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]formularz + sesja = problem
Forum PHP.pl > Forum > Przedszkole
piotr286
Witam,

Oto mój problem: mam plik db.php w którym tworzę formularz, gdzie mogę wybrać nazwę jednej z 2 tabel

Kod
           <?php
          session_start();
          $_SESSION['Table'] = $POST_Table;
          ?>
                    
        <html>
        <head>
        <title>Data base application</title>
        </head>
        <body>
        <form method=post action="db2.php">
        Please choose the table:
        
        <input name="POST_Table" type="radio" value="MAJORS">
        MAJORS
        
        <input name="POST_Table" type="radio" value="STUDENTS">
        STUDENTS
        
        <input type=submit name="formsubmit" value="Next">
        </form>
        </body>
        </html>


Po naciśnięciu przycisku przechodzę do pliku db2.php, ale on nie jest ważny. W pliku db3.php
chcę mieć dostęp do
POST_Table przy użyciu sesji.

Kod
             <?php
              session_start();
              echo $_SESSION['Table'];
              ?>


Niestety, jako wynik dostaję pustą stronę. Szukając z google mam wrażenie, że jestem pierwszą
osobą na tej planecie, która ma taki problem smile.gif Czy to złe podejście do problemu z tą sesją, jak powinno się robić, żeby
widzieć wynik z formularza w innym skrypcie?

Co do tej linijki:
$_SESSION['Table'] = $POST_Table; no to mogę się domyślać, że w złym miejscu jest, czyli przekazuję plikowi db3.php
wartość, która nie została jeszcze zainicjalizowana, tyle, że już próbowałem w różnych miejscach ja umieszczać i nic. Jak to rozwiązać??

Dzięki z góry za pomoc
erix
Cytat
Kod
$_SESSION['Table'] = $POST_Table;

Poczytaj o register_globals. Temat wałkowany na tym forum setki razy.
piotr286
Cytat(erix @ 1.12.2008, 18:38:49 ) *
Poczytaj o register_globals. Temat wałkowany na tym forum setki razy.


czytałam już coś o register_globals. Ale skoro w db.php występuje w formularzu POST_Table, to chyba mogę odwoływać się do niej w tym samym pliku przy pomocy $POST_Table?
Jeżeli nie, to jak mogę: np. tak $_POST['$POST_Table']?
nexis
db.php
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <head>
  3. <title>Data base application</title>
  4. </head>
  5. <body>
  6. <form method="post" action="db2.php">
  7. <p>Please choose the table:</p>
  8. <input type="radio" name="POST_Table" value="MAJORS" /> MAJORS<br />
  9. <input type="radio" name="POST_Table" value="STUDENTS" /> STUDENTS<br />
  10. <input type="submit" name="formsubmit" value="Next" />
  11. </form>
  12. </body>
  13. </html>


db2.php
  1. <?php
  2. $_SESSION['POST_Table'] = $_POST['POST_Table'];
  3. ?>


db3.php
  1. <?php
  2. echo $_SESSION['POST_Table'];
  3. ?>
piotr286
Dzięki
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.