Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySQL] Dodawanie rekordów za pomocą pętli
jagon
post 18.01.2010, 17:08:06
Post #1





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 20.10.2007

Ostrzeżenie: (0%)
-----


Witam, czy mógłby mi ktoś napisać w jaki najprostszy sposób dodać kilka rekordów do bazy za pomocą pętli while? Sprawa wygląda następująco:

Pola formularza są generowane za pomocą while, liczba pól jest taka, jaką wcześniej się określiło.

Następnie, każde pole musi posiadać następujący parametr name='pole', gdzie po zapętleniu np 10 razy, nazwa każdego pola będzie się różniła tylko cyfrą (tl. pole1,pole2,pole3 itd.)

Po otrzymaniu wyniku, dane muszą zostać zapisane w bazie i tu pojawia się problem, how?
Go to the top of the page
+Quote Post
lnn
post 18.01.2010, 19:53:52
Post #2





Grupa: Zarejestrowani
Postów: 361
Pomógł: 11
Dołączył: 17.12.2008
Skąd: LU

Ostrzeżenie: (0%)
-----


yy moze cos w ten desen

najpierw okreslasz tablice elementow, ktora potem wczytujesz najpierw do petli, a pozniej do petli przy zapisie do bazy
tylko o ile sie nie myle nie mozna bezposrednio w zapytaniu SQL uzywac petli wiec musisz sobie jakas zmienna wczesniej utworzyc ktora bedzie "wstawiala" ci ta petle do zapytania..

moze cos takiego ale moge sie mylic snitch.gif bo sam wlasnie nad czyms podobnym pracuje..
Go to the top of the page
+Quote Post
bastard13
post 18.01.2010, 20:38:40
Post #3





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Nie za bardzo wiem o co Ci chodzi, więc jak co to sprostuj, ale rozumiem, że masz np tabele:
  1. moja(
  2. id int UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
  3. wartosc_pola char(200) NOT NULL
  4. )

formularz:
  1. $i=0
  2. while($i++<$ile_pol) echo '<input type="text" name="pole'.$i.'" />';

to żeby to wrzucić do bazy możesz zrobić tak:
  1. $db = new mysqli('localhost','user','haslo','baza');
  2. $zapytanie='insert into moja values ';
  3. for($i=0;i$<$ile_pol;$i++)
  4. { $zapytanie+=(null,'.$_POST['pole'.$i].')';
  5. if($i==($ile_pol-1)) $zapytanie+=';';
  6. else $zapytanie+=',';
  7. }
  8. $wynik = $db->query($zapytanie);


--------------------
Go to the top of the page
+Quote Post
Pilsener
post 19.01.2010, 10:25:34
Post #4





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Cytat
w jaki najprostszy sposób dodać kilka rekordów do bazy za pomocą pętli while?
- czy prosty sposób sprawi, że Twoje skomplikowane rozwiązanie będzie również proste? Skąd wiesz, że akurat trzeba dodawać rekordy do bazy pętlą while? Skąd taki zamysł? Opisz dokładnie, co chcesz uzyskać, daj jakiś kod formularza.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.06.2025 - 13:17