Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]pobieranie wartości danych z formularza
Forum PHP.pl > Forum > Przedszkole
grzes22
Witam mam taki problem, mam skrypt który wyświetla formularz w zależności od listy zdarzeń
  1. for ($i; $i<$ilosc; $i++)
  2. {
  3. echo '<li><label for="zdarzenie'.$i.'"><b>Zdarzenie:</b></label><input type="text" name="zdarzenie'.$i.'" /></li>';
  4. echo '<li><label for="typ'.$i.'"><b>Typ:</b></label><input type="text" name="typ'.$i.'" /></li>';
  5. echo '<li><label for="kurs'.$i.'"><b>Kurs:</b></label><input type="text" name="kurs'.$i.'" /></li>';
  6. }


i teraz takie pytanie jak te wszystkie wartości przypisać do zmiennych w skrypcie który by je dodawał do bazy??
darko
Po wysłaniu formularza do skryptu przefiltruj sobie w skrypcie, w którym odbierasz dane tablicę $_POST lub $_GET w zależności jaką metodą wysyłasz formularz. Wartość zmiennej $ilosc możesz przesłać w hiddenie. I później (dla metody POST) można coś takiego:
  1. // tu znajdą się zmienne z formularza:
  2. $zdarzenie = array();
  3. $typ = array();
  4. $kurs = array();
  5. //
  6. for ($i; $i<$_POST["ilosc"]; $i++) {
  7. $zdarzenie[] = $_POST["zdarzenie".$i];
  8. $typ[] = $_POST["typ".$i];
  9. $kurs[] = $_POST["kurs".$i];
  10. }
  11. // w tej pętli zrób jeszcze walidację
grzes22
wiesz nie bardzo wiem jak mam użyć tego co napisałeś, gdy skopiuje ten kod i zechce wypisać

echo "$zdarzenie[0]";
echo "$zdarzenie[1]";

to pierwsza linijka kodu nie działa a druga już tak. nie wiem jak sobie z tym poradzić.
A czy potem można dodać tablicę do bazy??
darko
1.
for ($i; $i<$_POST["ilosc"]; $i++) { <--- dla wartości początkowej $i ustaw dokładnie tę samą wartość, od której zaczynasz generowanie elementów formularza (najlepiej i ją przesłać w ukrytym polu)

2.
echo $zdarzenie[0];
echo $zdarzenie[1];

3. zapis tablicy do bazy wiąże się z przejechaniem się po tablicy i doklejaniem jej kolejnych wartości do zapytania, np dla insertu:
  1. $sql = "insert into tabela_xyz values (zdarzenie, typ, kurs) values ";
  2.  
  3. $i = 0;
  4. foreach ($zdarzenie as $v) {
  5. $sql .= "(".$v.",".$typ[$i].",".$kurs[$i]."),";
  6. $i++;
  7. }
  8. // usuwamy ostatni średnik
  9. $sql = substr($sql, 0, strlen($sql)-1);
  10. // mysql_query($sql) or die(mysql_error());
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.