Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] pobieranie z wielu formularzy
Forum PHP.pl > Forum > Przedszkole
ukaszq
Mam okolo 60 formularzy z ktorych chce aby pobieral mi dane... Chce to zrobic jakas pentlą.
Kazdy formularz ma name="rabat_$id".

No i robie tak...


$ide=mysql_query("SELECT id from produkty");

while(($numery = mysql_fetch_array($ide)) !== false )
{

$nr=$numery['id'];
$rabacik_$nr = $_POST['rabat_$nr'];

}

Nie pobiera sad.gif
nospor
po pierwsze: uzywaj bbocode
po drugie: naraz mozesz wyslac tylko jeden formularz
po trzecie: wstaw te dane do jednego formularza
ukaszq
Po pierwsze nie moge wstawic do jednego formularza, bo jest wiele innych opcji i nie moge tak!
nospor
No ale czego na mnie krzyczysz?

To opisz dokladnie co masz w tych formach, napisz dokladnie czemu nie mozesz wstawic do jednego forma, napisz dokladnie co chcesz zrobic to ci pomozemy.
ukaszq
Nie krzycze smile.gif

Mam 60 rekordow w bazie danych mysql. Sa to produkty, kazdy produkt ma formularz na ilosc i na rabat.
Kazdy z tych formularzy jest generowany automatycznie i np name=$rabat_'id'

No i chce aby pobral mi wszystkie formularze przy ktorych klikniety jest checkbox. Chce zeby to zrobil przez jakas pentle...
nospor
Dales wykrzyknik na koncu zdania to myslalem ze krzyczysz smile.gif

no to ok, bez problemu mozesz dac wszystko do jednego forma.
Dla checkboxow nadaj wartosc, np. id tego rekordu. Checkboxy wysylaja sie tylko wtedy gdy sa zaznaczone, wiec po odebranej wartosci bedziesz wiedzial ktory kliknales. Dla pol nadawaj tez w nazwach id rekordu, np. opis_1,innanazwa_1
teraz pobierasz id z wartosci checkboxa i na tej podstawie dobierasz sie do danego pola, $_POST['opis_'.$idpobranezchekboxa]

proste smile.gif
ukaszq
Ale jesli mam tych checkboxow zakliknietych wiele?
Mam wrzucic to pentle?
Chce aby pobral mi wszystkie id z checkboxow.
sniezny_wilk
Po nazwie pola w html wstaw "[]" i wszystkim nadaj taką samą nazwę np. "pole[]", będzie to traktowane jako tablica i $_POST["pole"] zwróci Tobie tablicę z tymi checkboxami.
soulreaver1
pisałem ostatnio formularz do usuwania kilku użytkowników na raz, działa na tej samej zasadzie. Może ci się przyda.

  1. <?php
  2. $zapytanie = "SELECT login FROM uzytkownicy";
  3. $zapytaj = mysql_query($zapytanie);
  4. echo "<form action=\"delete_user.php\" method=\"POST\">";
  5. while ($rekord = mysql_fetch_row($zapytaj))
  6. {
  7. foreach ($rekord as $pole)
  8. echo "<input type=\"checkbox\" name=\"uzytkownicy[]\" value=\"$pole\">$pole<BR>";
  9. }
  10. // teraz wyślij dane metodą POST
  11. echo "<input type=\"submit\" value=\"usuń\"></form>";
  12. // odbierz dane
  13. $_POST['uzytkownicy'] = $uzytkownicy;
  14. if (isset($uzytkownicy))
  15. {
  16. foreach ($uzytkownicy as $uzytkownik)
  17. {
  18. $zapytanie = "DELETE FROM uzytkownicy WHERE login='$uzytkownik'";
  19. $zapytaj = mysql_query($zapytanie);
  20. echo "<HTML><META HTTP-EQUIV=\"Refresh\" CONTENT=\"0;URL=delete_user.php\"></HTML>";
  21. }
  22. }
  23. ?>
ukaszq
Juz wiem ktory jest zaznaczony i OK!
Ale nie wiem jak mam pobrac dane z tych formularzy <input name='ilosc_$wiersz1[id]' type='text' class='style15' size='4'>
No i w ta petle wrzucam $_POST['ilosc_$idii'], gdzie $idii to jest numer id.
Nie pobiera mi.
soulreaver1
A wysłałeś te dane ? Najlepiej wklej ten kod bo tak to trudno się domyśleć
ukaszq
Ok!
Ale mam dwa okienka do wypelnienia jedno ilosc i drugie z rabatem. Kiedy jest zaznaczony checbox podaje mi id z value. Ale nie moge pobrac name= z tych inputow ilosc i rabat.

Tak wyglada moj skrypt:

  1. <?php
  2. $ide=mysql_query("SELECT * from produkty");
  3.  
  4. $click=$_POST['click'];
  5.  
  6.  
  7. if (isset($click))
  8. {
  9. foreach ($click as $idii)
  10. {
  11. $zapytanie = "Select * FROM produkty WHERE id='$idii'";
  12. $zapytaj = mysql_query($zapytanie);
  13. $wierszyk = mysql_fetch_array($zapytaj);
  14.  
  15.  
  16.  echo $_POST['ilosc_$idii'];
  17.  
  18.  
  19. }
  20. }
  21. ?>


a takie mam w formularzu:
<input name='ilosc_$wiersz1[id]' type='text' class='style15' size='4'>
soulreaver1
hmm nie jestem pewien
  1. <?php
  2. "<input name=\"ilosc_$wiersz1[id]\" type='text' class='style15' size='4'>"
  3. ?>


albo

  1. <?php
  2. "<input name='nazwa' value=\"ilosc_$wiersz1[id]\" type='text' class='style15' size='4'>"
  3. ?>


ale raczej to drugie
ukaszq
Tak mam! i nic... nie pobiera...
soulreaver1
spróbuj umieścić tablice w value
  1. <?php
  2. value="ilosc_$wiersz1[id]"
  3. ?>
ukaszq
Dalej nic...
soulreaver1
poczytaj tutaj : http://republika.onet.pl/20404,16476,3,06,kursy.html
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.