![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 12 Dołączył: 30.11.2011 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam kod. i jak widzicie powtarzaj mi się name ponieważ chciałbym dodać dwie pozycje o tym samym name do tabeli. Czy jest to możliwe ? Czy muszę pojedynczo dodawać? Ten post edytował kropamk 14.12.2011, 12:34:07 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 548 Pomógł: 105 Dołączył: 4.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
jak są takie same to zmień na inne
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 12 Dołączył: 30.11.2011 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
hmm, może inaczej z tego kodu powstaną mi dwa wiersze formularza. Każdy wiersz ma pole NUMER i ZNAK. więc jeżeli zmienie nazwe to nie doda mi sie do tej samej kolumny w bazie danych.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 14.12.2011 Ostrzeżenie: (0%) ![]() ![]() |
rozumiem że chodzi ci o to(dla jasności przykład poniżej):
(kluczowy jest nawias kwadratowy - tworzymy tablicę która zbiera to co do niej wsadzimy pod jedną nazwą) <form action="" method="POST"> <p><strong>Wybierz produkt:</strong></p> <select name="owoce[]" size="5" multiple="multiple"> //dla wielokrotnego wyboru istotny jest nawias kwadratowy(tablica) <option> Truskawki <option> Maliny <option> Poziomki <option> Wiśnie <option> Śliwki </select> </select> <input type="submit" value="ok"> </form> <? foreach($_POST['owoce'] as $owoce){ echo $owoce; } |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 12 Dołączył: 30.11.2011 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
@cariri dzięki za odp ale to nie o to mi chodzi. Potrzebuję takiego czegoś jak wspomniałem wyżej.
za pomocą PHP tego nie powinno się zrobić ? string ? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
cariri podał prawidłowe rozwiązanie, jednak przykład już nie najlepszy:
Obsługę takiego formularza realizujemy w PHP podobnie, jak to przedstawił cariri:
Do wstawiania danych do bazy najlepiej będzie skorzystać z multi INSERT-a, jak wyżej. Przeczytaj komentarze. EDIT: Poprawiłem kod. Ten post edytował mortus 14.12.2011, 13:54:51 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 12 Dołączył: 30.11.2011 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Gdy stosujemy w formularzach tablice (jak u Ciebie numer[], znak[]) to dane przesyłane są do pliku jako tablice indeksowane domyślnie, czyli tablica $_POST będzie wyglądać tak:
Przedstawiona pętla foreach "porusza się" po tablicy $_POST i odpowiednio ją przetwarza, generując część zapytania MULTI INSERT. Na końcu trzeba wyciąć z tego wygenerowanego zapytania SQL zbędny przecinek (stąd substr). Możesz na końcu pliku sprawdzić zawartość tablicy $_POST, jak i zmiennej $sql, a wtedy będzie Ci łatwiej zrozumieć. Przydatny kod: PS: W poprzedniej odpowiedzi użyłem przez pomyłkę nazwy "nazwa", a tymczasem powinienem był użyć nazwy "numer". EDIT: Poprawiłem kod powyżej. Ten post edytował mortus 14.12.2011, 13:56:01 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.09.2025 - 07:54 |