Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]$_SESSION['csrf'] i F5, IF() nie działa...
phpuser88
post
Post #1





Grupa: Zarejestrowani
Postów: 66
Pomógł: 1
Dołączył: 4.05.2019
Skąd: PHP5.6

Ostrzeżenie: (0%)
-----


hej, mam dość dziwny problem, który teoretycznie nie powinien się pojawić. Obstawiam, że jest to problem z moim Xampp'em i nie resetowaniem komputera przez długie tygodnie.

w dużym skrócie:
Mam formularz, który ma unikalny <input type="hidden"> z wartością $_SESSION['key'] - ten kod po dokonaniu INSERT w SQL jest zmieniany aby zapobiec ponownemu INSERT przez np. F5
Dotychczas raczej działało to bezproblemowo, ale aktualnie moje IFy przepuszczają mimo, że nie powinny i troche zgłupiałem... tak wygląda kod:
  1. if ($_POST['id']==$_SESSION['key'] AND $_POST['formularz']==TRUE AND $_POST['kom']==TRUE) {
  2. $KOMENTARZ = czysc($_POST['kom'],1);
  3. $KOMENTARZ = $con -> real_escape_string($KOMENTARZ);
  4. $sql="INSERT INTO ...";
  5.  
  6. if(mysqli_query($con, $sql)) {
  7.  
  8. $_SESSION['key'] = 123;
  9. $INFO .= "<BR/>Insert=DONE! <BR/>".$_POST['id']."==".$_SESSION['key']."<BR/>";
  10. $_POST['kom'] = 0;
  11. $KOMENTARZ = '';
  12. mysqli_close($con);
  13. }
  14. }


Przy każdym odświeżeniu (F5) pojawia się Insert w bazie, mimo że $_POST['id'](123456789) != $_SESSION['key'](123)
Wiem, że przeglądarka zapisuje wartości, ale serwer mimo wszystko powinien skontrolować każde odświeżenie w IFie - mam racjęquestionmark.gif? :/
PS: wiem, że można to obejść headerem(), ale chce się dowiedzieć czy to wynik błędu czy brak wiedzy?

EDIT:
Jednak mam racje, ha! Xampp się wysypał przy ponownym uruchomieniu, ale to i tak było bardzo dziwne...

Ten post edytował phpuser88 3.04.2022, 23:37:34
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Johnas
post
Post #2





Grupa: Zarejestrowani
Postów: 650
Pomógł: 16
Dołączył: 5.07.2010
Skąd: Ściśle Tajne

Ostrzeżenie: (0%)
-----


miałem te same problemy z xampp na windows 11... ale on wysypywał mi bazę danych, dlatego lepiej jest zainstalować wamp... nic nie wysypuje


--------------------
Jak coś jest dobre, to nie znaczy że nie może być to lepsze - Ideały nie istnieją ;D
Strony internetowe Świnoujście
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 19:02