![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 30.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam prośbę o poradę.
Na formularz dodawania rekordu do bazy wchodzę klikając w mapę. Zmienne są w adresie i mają postać dodaj-punkt.php?lat=52.308853&lng=29.776051&zoom=6 Formularz prawidłowo je pobiera. Jeśli ktoś prawidłowo wypełni pozostałe pola $nazwa i $opis wszystko jest w porządku Jednak gdy nie wypełni któregoś z nich dostaje komunikat: Wypełnij wszystkie pola z sekcji 2 i 3. (czyli nazwa i opis) Wówczas adres strony traci zmienne dodaj-punkt.php a pola lat lng i zoom otrzymują wartości domyślne. Powinny jednak utrzymać wcześniej wprowadzone wartości. Co robię źle? To mój kod
-------------------- Genealogia Polaków
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 799 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
W takim razie atrybut action formularza powinien mieć wartość: dodaj-punkt.php?lat=52.308853&lng=29.776051&zoom=6
Linia 6 w Twoim kodzie nie ma sensu. -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 30.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
W takim razie atrybut action formularza powinien mieć wartość: dodaj-punkt.php?lat=52.308853&lng=29.776051&zoom=6 Linia 6 w Twoim kodzie nie ma sensu. Dzięki! Dodałem w formularzu poniżej
Jest 4/5 sukcesu. ten if z szóstej linii jest mi potrzebny - bo mam w ramce mapę z której pobierana jest pozycja kursora. Gdy zmieniam pozycję kursora zmieniają się wartości w formularzu który potem jest wysyłany. Jest jednak mały problem z którym sobie nie radzę Wchodzę na stronę dodaj-punkt.php (pozycja kliknięcia w mapę jest pobierana i jest w linku dodaj-punkt.php?lat=23,4567.... 1. W przypadku błędu wypełnienia pozostałych pól teraz formularz już wraca poprawnie - utrzymuje pozycję 23.4567 2. Jednak w przypadku gdy ktoś wpierw przesunie kursor (pozycja w okienku formularza zmieni się na 98.7654... ) i niewypełniwszy pola "opis" lub "nazwa" wyśle formularz - to następuje reload i kursor znowu jest na 23.4567... Dałoby się tak zrobić bez reloadu przy każdym przesunięciu aby przesunięcie kursora zmieniało też wartość zmiennej? Ten post edytował Dopler 6.02.2021, 18:18:36 -------------------- Genealogia Polaków
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 799 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
if nie jest potrzebny, bo $getlat nigdy nie jest pusta, no chyba, że ktoś w linku usunie wartość, ale zachowa zmienną.
Pozbądź się zmiennych $_GET, a wszędzie używaj $_POST i Twój problem zostanie rozwiązany. Wtedy w atrybucie action formularza wystarczy samo dodaj-punkt.php. -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 594 Pomógł: 66 Dołączył: 22.02.2008 Skąd: Dublin Ostrzeżenie: (0%) ![]() ![]() |
Zawsze mozesz uzyc sesji.
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 21.06.2025 - 23:43 |