Skocz do zawartości

Komentarze na stronie


dj.drezyna

Polecane posty

Nie umiem sobie poradzić z wymyśleniem sposobu likwidacji zmiennej w ten sposób by komentarz po wpisaniu w pole i kliknięciu wyślij (wtedy komentarz wpisywany jest do pliku) nie pojawiał się ciągle jako nowy (tylko zmnienia się data godzina na tą w której kliknięto odśwież) tylko żeby ta zmienna przechowująca dane komentarza się niszczyła.

Problem chciałem rozwiązać przez unset() ale jak umieściłem przed to koment się nie wpisał a za to nie działało. (Komentarz na mojej stronie pojawia się od razu po zatwierdzeniu nie ma pliku tego rodzaju jak np. Komen.php czy coś tylko wpis pojawia się od razu po zatwierdzeniu przez przeładowanie strony już z nową treścią) Używane do przesyłu zmiennych komentrza jest sposób POST

 

Bardzo bym był wdzięczny za pomoc, pozdrawiam serdecznie!

Galeria przyrodnicza http://fotokrajobrazy.warmia.pl

Link do komentarza
Udostępnij na innych stronach

  • 1 month later...

Kompletnie nie rozumiem o co ci chodzi, domyslam ze wysylasz formularz po czym odswiezysz strone to strona odbiera jeszcze raz formularz, czego nie chcesz. Nie zrobisz to poprzez unset bo to przegladarka wysyla jeszcze raz dane, na rozwiazanie tego jest kilka sposobow, naprostszy i najszybszy to odswiezenie strony przez php-a np. poprzez header po otrzymaniu danych z formularza, lub lepsze rozwiazanie a przynajmniej bardziej optymalne jak wyswietlasz formularz to do sesji zapisuj jakis losowy ciag znakow oraz w formularzu stworz ukryte pole do ktorego wpiszesz tez ten ciag, podczas odbierania formularza porownujesz czy to co dostales z formularzem jest takie samo co w sesji jesli nie to olewasz odczymane dane.

Link do komentarza
Udostępnij na innych stronach

  • 2 months later...

Nie, nie, nie, ja bym to zrobił tak na chłopski rozum, po prostemu...

 

Zrób tak:

 

Plik wpisywania:

Ustaw np. ciastko, lub metodą POST lub GET (bo niewiem, jakiej używasz) z losowym numerem.

 

Plik zapisujący posty:

Na początku sprawdź, czy istnieje ciastko z treścią ten_losowy_numer_OK, jeżeli nie - dodaj wpis, a jeżeli istnieje - nie dodawaj!

Następnie stwórz drugie ciastko, np z treścią: ten_losowy_numer_OK.

 

Oczywiscie dla porządku w pliku, gdzie jest formularz czyść ciastko :)

To powinno pomóc. Pozdrawiam!

Link do komentarza
Udostępnij na innych stronach

  • 1 year later...

Ja korzystam z takiej metody że ma początku jeszcze przed wstawieniem komentarza skrypt bada ostatni komentarz w bazie leci po ID i porównuje adres IP ten z bazy z tym użytkownika jeżeli jest taki sam to jest blokowana funkcja wstawienia nowego komentarza sprawdza się to idealnie przy odświeżeniu czyli nie można dodać 2 komentarzy jeden po drugim z tego samego IP.

Link do komentarza
Udostępnij na innych stronach

  • 4 weeks later...

Sposób najprostrzy to chyba: sprawdzasz na początku strony czy zmienne, które powinien wysłać formularz "są ustawione" (isset) jeśli tak to wysyłasz formularz i robisz tak jak już było wspomniane wcześniej przeładowanie strony przez header.

Ot taka mini-strona moja po godzinach :)http://www.wnetrzekuchni.pl

Link do komentarza
Udostępnij na innych stronach

  • 2 weeks later...
  • 2 months later...

@5corpio jakiego rodzaju zmienne masz na myśli? $_POST? czy co innego, bo jeżeli POST to po odświeżeniu dalej istnieje zmienna w tym przypadku POST i to nie pomaga że sprawdzi się funkcją isset.

 

@Blind tak tylko to nie działa kiedy ktoś rozdzieli sobie strony na wiele kart.

Galeria przyrodnicza http://fotokrajobrazy.warmia.pl

Link do komentarza
Udostępnij na innych stronach

to po odświeżeniu dalej istnieje zmienna w tym przypadku POST i to nie pomaga że sprawdzi się funkcją isset

 

Możesz użyć funkcji header:) robi "refresh" strony już beż żadnych zmiennych POST

 

słabo znam PHP ale o ile pamiętam to tak najprościej chyba powinno to wyglądać tak:

 

KOD

if isset(POST['tresc_komentarza']) i isset(POST['temat']) {

wyslij komentarz;

header(strona)

} else {

cos tam;

}

 

... i dalej strona :)

 

 

Ot taka mini-strona moja po godzinach :)http://www.wnetrzekuchni.pl

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...