Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak odebrać POST'em tablicę?
Forum PHP.pl > Forum > Przedszkole
boxer
Witam.

Nie wiem jak odebrać tablicę wysłaną poprzez post.

Mam skrypt a.php dołączam do niego plik funkcje.php - include('funkcje.php')
zawiera on funkcje data($nazwa,$od,$do);

Następnie w pliku a wywołuję funkcję data('0','1950','2000') która jest zdefiniowana w pliku funkcje.php. Funkcja ta wyświetla datę w trzech selectach.
1.select <select name="rok[$nazwa]" > funkcja wyswietla rok od 1950 do 2000
2.select <select name="miesiac[$nazwa]" > wyswietla miesiace
3.select <select name="dzien[$nazwa]" > wyswietla dni

wywołuję drugi raz funkcję data('1','1970','2010').

I teraz chciałbym te 3 tabele rok,miesiac i dzien odczytac w skrypcie b.php, ale nie wiem jak to zrobić?

$rok[]=$HTTP_POST_VARS['rok']; questionmark.gif?
$rok=$HTTP_POST_VARS['miesiac[]']; questionmark.gif?
nospor
Po pierwsze nazwij selecty rok, miesiac,dzien, a nie jak teraz jako smieszne tablice.Następnie w opcjach selecta reguluj jaki rok, czy miesiac czy dzien ma wyswietlic.
Po drugie: zczytujesz dane z posta:

  1. <?php
  2.  
  3. $rok=$_POST['rok'];
  4. $miesiac=$_POST['miesiac'];
  5. $dzien=$_POST['dzien'];
  6.  
  7. ?>
boxer
Dzięki za odpowiedz!

Ale problem polega na tym iż ja w jednym formularzu wywołuję tę funkcję 4 razy, czyli mam 4 daty wyświetlone. Jeżeli w funkcji selecty nazwę rok, miesiąc i dzień to $rok=$_POST['rok'] do której daty się będzię odnosil 1,2,3 czy czwartej.?

Mogę np. funkcję zmienić na data('nazwa roku','nazwa miesiaca','nazwa dnia','1950','2000'), ale zależało by mi aby to zrobić właśnie w tablicy rok,miesiac,dzień i każdy wpis w tablicę wtedy jest kolejnym wywołaniem funkcji.
nospor
Aha, no to nazywaj selecty tak: rok[], miesiac[], dzien[]
a w kodzie pobierasz:
  1. <?php
  2.  
  3. $rok=$_POST['rok'];//tablica
  4. $miesiac=$_POST['miesiac'];//tablica
  5. $dzien=$_POST['dzien'];//tablica
  6.  
  7. ?>


dziala biggrin.gif

edit: ups, poprawka:
nazywaj selecty rok[$nazwa],miesiac[$nazwa], dzien[$nazwa]
a odwolujesz sie do konkretnej nazwy:
  1. <?php
  2.  
  3. $rok=$_POST['rok'][$nazwa];
  4. $miesiac=$_POST['miesiac'][$nazwa];
  5. $dzien=$_POST['dzien'][$nazwa];
  6.  
  7. ?>

Edit2: testowalem na ponizszym kodzie:
Kod
<form method="post">
<select name="ola[cos]">
    <option value="1">1</option>
</select>
<select name="ola[cosinnego]">
    <option value="2">2</option>
</select>
<input type="submit" value="sdfsdf">
</form>
<?
echo $_POST['ola']['cos'];
?>
boxer
Dzięki już wszystko guitar.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.