Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL][JavaScript] Zapamiętanie textarea i data
Forum PHP.pl > Forum > Przedszkole
jaccogaco
Witam

1. Zrobiłem formularz wysyłający dane metodą POST. Formularz po wysłaniu przeładowuje się i sprawdza czy wszystko zostało poprawnie wypełnione i jak były błędy to je wyświetla, a następnie przekierowuje na stronę tego samego formularza. Chciałbym żeby tekst wpisany w textarea został, gdy będą jakieś błędy. Raczej nikomu drugi raz nie będzie chciało się pisać artykułu. Wyczytałem, że można to zrobić za pomocą sesji, albo JS, ale żadnych przykładów, czy opisu jak powinienem się za to zabrać nie znalazłem.

2. Chciałbym zrobić statystyki na stronie. np. statystyki z ostatniego miesiąca, tygodnia i dnia. Mogę użyć:
strtotime() i ustawić -1 week, ale jakby tu to zrobić by był podział od poniedziałku do niedzieli, a nie na ostatnie 7 dni?
nospor
sesja? js? Cos czytal?

Normalnie, wstawiasz w forma to, co wlasnie z niego wyslales. Przyklad (uproszczony):

  1. echo '<input type="text" name="jakies_pole" value="'.$_POST['jakies_pole'].'" />';

Ot i cala filozofia
jaccogaco
Coś czytał, bo podana przez Ciebie metoda mi nie działa i musiał szukać innych. Na górze dokumentu jest kod php sprawdzający dane, a niżej formularz. Jeżeli dane są ok. to dodaje do bazy, wyświetla komunikat o poprawnym dodaniu i przekierowuje na tą samą podstronę (jak nie przekieruję i odświeżę podstronę to wpis dodaje się jeszcze raz). Gdy wystąpi błąd to wpisany tekst przepada.
nospor
Widac cos skopales, bo podana przeze mnie metoda jest jak najbardziej poprawna. Niestety co zepsules nie jestem w stanie powiedziec, bo wrozek nie ma. Pokaz kod.

ps: gdy wystapi blad, to strony masz nie przekierowywac, co mam nadzieje nie robisz.
freemp3
Wydaje mi się, że strona jest przekierowywana niezależnie od wyniku. Zrób tak jak napisał nospor: jeśli formularz będzie błędny pomiń przekierowanie. Nie ma sensu go robić bo nawet jak ktoś odświeży stronę to nie doda wpisu bo są błędy. Dopiero po poprawnym wysłaniu formularza zrób przekierowanie.
SaMi
Ewentualnie proponuję nie przeładowywać wogle strony czyli uzyć np. biblioteki jquery i metody $.ajax()
jaccogaco
Cytat(nospor @ 4.10.2013, 12:18:44 ) *
Widac cos skopales, bo podana przeze mnie metoda jest jak najbardziej poprawna. Niestety co zepsules nie jestem w stanie powiedziec, bo wrozek nie ma. Pokaz kod.

ps: gdy wystapi blad, to strony masz nie przekierowywac, co mam nadzieje nie robisz.


Dziękuję, że mi to uświadomiłeś, bo szukałbym innych metod zamiast swojego błędu...

Teraz jeszcze:
2. Chciałbym zrobić statystyki na stronie. np. statystyki z ostatniego miesiąca, tygodnia i dnia. Mogę użyć:
strtotime() i ustawić -1 week, ale jakby tu to zrobić by był podział od poniedziałku do niedzieli, a nie na ostatnie 7 dni?
nospor
Cytat
Dziękuję, że mi to uświadomiłeś, bo szukałbym innych metod zamiast swojego błędu...

Czyli co, poprawiles juz i dziala? Bo z Twojej wypowiedzi nic nie wynika, co najwyzej to, ze pusciles malego focha.

Cytat
strtotime() i ustawić -1 week, ale jakby tu to zrobić by był podział od poniedziałku do niedzieli, a nie na ostatnie 7 dni?

No to robisz strtotime() i zamiast -1 week robisz "last Monday" i masz poprzedni poniedzialek. Dodajesz do tego 7 dni i masz niedziele. Czyli masz zakres jaki chciales.
jaccogaco
Kobietą nie jestem by puszczać fochy smile.gif Oczywiście działa, a podziękowałem, bo Twój post był pomocny.
nospor
W takim razie wybacz. Poprostu twoj post zabrzmial dla mnie dziwnie, jakby z pretensjami, stad moje pytanie smile.gif
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.