Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Jak wywołać zmienną $_POST wewenątrz klasy?
Forum PHP.pl > Forum > Przedszkole
m4rc1no5
Witam,

Zaczynam zabawę z programowaniem obiektowym i natknąłem się na mały problem - chciałbym wywołać w klasie zmienną $_POST[id] ale nie za bardzo wiem jak - jest w ogóle taka możliwość?
kresh
$_POST podobnie jak $_GET, $_SESSION, $_COOKIE, $_FILES, $_ENV, $_REQUEST, $_SERVER, $GLOBALS należy do tablic superglobalnych, czyli możesz się do niej odwołać z dowolnego miejsca skryptu.

Dla przykładu w dowolnej metodzie klasy możesz odwoływać się do jej elementów, bądź przypisywać wartości do zmiennych i składowych klasy:
  1. <?php
  2. //dla php4:
  3. class Cos{
  4.  
  5. var $skladowa;
  6.  
  7. function Cos(){
  8. /*
  9.  Pamiętaj jednak, że aby odczytać
  10.  tablicę, nalezy najpierw przesłać
  11.  metodą POST w formularzu jakieś
  12.  dane - w tym wypadku "id"
  13. */
  14. echo $_POST['id']; 
  15.  
  16. //lub
  17. $this->skladowa = $_POST['id'];
  18. echo $this->skladowa;
  19. }
  20. }
  21.  
  22. //dla php5:
  23. class Cos{
  24.  
  25. private $skladowa;
  26.  
  27. function __construct(){
  28. echo $_POST['id']; 
  29.  
  30. //lub
  31. $this->skladowa = $_POST['id'];
  32. echo $this->skladowa;
  33. }
  34.  
  35. }
  36.  
  37. // no i teraz aby sprawdzić wystarczy napisać
  38. if( $_POST ){
  39. $object = new Cos();
  40. //w rezultcie wyświetlona zostanie wartość zmiennej $_POST['id']
  41. // oczywiście pod warunkiem, że wpiszesz coś z formularzu.
  42. }
  43. ?>


Zatem formularz wyglądałby:
  1. <form action="/" method="post">
  2. <input type="text" name="id" />
  3. <input type="submit" value="wyślij" />
  4. </form>
m4rc1no5
Wielkie dzieki za wyczerpujaca odpowiedz - to dziala! smile.gif
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.