![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 27.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam formularz, który przed wysłaniem sprawdza czy spełnione są pewne warunki. Walidacja przez JavaScript działa poprawnie. Klikając przycisk Dodaj wpisane/wybrane dane powinny zostać zapisane do bazy danych. Baza oczywiście została uprzednio utworzona. Kolumny mają prawidłową nazwę. Problem w tym, że dodaje mi jedynie zmienną $_SESSION[login] oraz zmienną $dziś. Pozostałe zmienne nie są przechwytywane. kod formularza:
kod doda.php:
Możecie mnie naprowadzić gdzie jest błąd? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 5 Dołączył: 26.01.2011 Ostrzeżenie: (40%) ![]() ![]() |
Po co uzywasz dwa razy "name" per input? I gdzie masz walidacje po stronie serwera?
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 27.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Po co uzywasz dwa razy "name" per input? I gdzie masz walidacje po stronie serwera? Walidacja nie jest po stronie serwera tylko w czasie rzeczywistym, odpowiada za to funkcja Walidacja (JavaScript). Podwójny "name" wygenerował mi automatycznie program WYSIWYG. To nie jest raczej powodem błędów o które pytam. Ten post edytował zaworek 31.03.2011, 09:02:24 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 654 Pomógł: 121 Dołączył: 27.10.2007 Skąd: Poznań, Łódź Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 27.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Według mnie powodem braku danych w tablicy $_POST są nie zamknięte tagi pól input np: spróbuj dla każdego tagu input zmienić na:
Pozdrawiam Usunąłem w ogóle ten wiersz. Zmienna $_SESSION['login'] została jedynie w kodzie dodaj.php. Jest gorzej niż było. Nie dodaje już nawet daty i loginu chociaż je wyświetla (wywołałem te zmienne przez echo).
Ten post edytował zaworek 31.03.2011, 10:44:03 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 654 Pomógł: 121 Dołączył: 27.10.2007 Skąd: Poznań, Łódź Ostrzeżenie: (0%) ![]() ![]() |
edit: Wcale mnie nie dziwi, że wyświetlają Ci się dane o użytkowniku i o aktualnej dacie. Przecież użytkownika pobierasz z danych sesyjnych, a nie z $_POST, Datę natomiast wyliczasz - więc to że akurat te dane się wyświetlają oznacza tylko, iż masz poprawnie podaną nazwę pliku php do obsługi formularza. Pozdrawiam Ten post edytował askone 31.03.2011, 10:51:20 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 27.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Zamknięcie wszystkich 5 inputów nie przyniosło żadnej zmiany.
Teraz kod wygląda tak:
var_dump($_POST) pokazuje array(0) { } |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
wywal te
enctype="text/plain" z <form> |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 27.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
wywal te enctype="text/plain" z <form> Jest już lepiej. Teraz var_dump($_POST) pokazuje: array(9) { ["technik"]=> string(5) "artur" ["model"]=> string(1) "A" ["opis"]=> string(1) "A" ["wina"]=> string(1) "A" ["powod"]=> string(5) "powod" ["komentarz"]=> string(18) "tu wpisz komentarz" ["sprawa"]=> string(10) "1111111111" ["hwid"]=> string(0) "" ["dodaj"]=> string(5) "Dodaj" } niestety w bazie brak rekordu, kod dodaj.php
|
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No bo ty tylko napisales zapytanie
$sql="INSERT INTO ber (data, login, technik, model, usterka) VALUES ('$dzis','$_SESSION[login]','$_POST[technik]','$model','$usterka')"; A musisz je jeszcze wykonać.... mysql_query($sql) or die(mysql_error()); |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 27.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Rzeczywiście, nie zauważyłem tego.
Przy okazji zapytam czy jest prosta metoda aby po dodaniu danych przekierowywało spowrotem do formularza? Dziękuję za pomoc @nospor. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 25.08.2025 - 01:43 |