Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ponowne wysłanie formularza po kilku minutach, Jak cos takiego zrobic ?
Matiash
post
Post #1





Grupa: Zarejestrowani
Postów: 103
Pomógł: 0
Dołączył: 7.04.2007

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


Witam, jak zrobic cos takiego ze np. jak ktos kliknie 4 * wyslij to za 4 razem wyskoczy komunikat ze musi odczekac 5 minut ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Matiash
post
Post #2





Grupa: Zarejestrowani
Postów: 103
Pomógł: 0
Dołączył: 7.04.2007

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


No wiec wyczyściłem ciasteczka ( moja przegladarka to firefox 2.0.0.3 ) i dalej to samo. Problem jest taki ze dopiero gdy czas wygaśniecia ciasteczek ustawie na 10000 i wiecej sekund to działa ( wyswietla sie napis "Juz glosowano" Natomiast jesli ustawie mniejsza liczbe np 60 albo 120 to po ponownym wyslaniu formularza w odstepie krotszym niz te 120 lub 60 sekund wysyla go.

Probowalem jeszcze na IE wersja 6.0.3 i jest jeszcze gorzej tam po klikniecu wyslij pojawia sie caly kod php.

Oto moj kod:

  1. <?php
  2. if (isset($_COOKIE['ciastko2'])) {
  3.  echo("Już głosowałeś!");
  4.  /*warunek sprawdza czy istnieje w przeglądarce ciasteczko o nazwie
  5.    "ciastko2", jeśli tak to nie pozwala na ponowne wysłanie formularza*/
  6. }
  7. else {
  8. $katalog="./pliki/".date('dmyHis')."/";
  9. mkdir($katalog,0777);//tworzymy katalog
  10. $plik=fopen($katalog."opis.txt","w+");
  11. fputs($plik,"Imię i nazwisko:".chr(10).$_POST['imie'].chr(10).chr(10)."Adres email:".chr(10).$_POST['email'].chr(10).chr(10)."Treść wiadomości:".chr(10).$_POST['tresc'].chr(10).chr(10)."Dodano: ".chr(10).date("d F Y, H:i"));
  12. fclose($plik); 
  13. echo "Dziękujemy za przesłanie relacji<br /><br />";
  14. for ($i=0; $i<sizeof($_FILES['plik']['size']); $i++) {
  15. if ($_FILES['plik']['size'][$i] !=0) {
  16. $uploaded = $katalog. $_FILES['plik']['name'][$i];
  17. if (is_uploaded_file($_FILES['plik']['tmp_name'][$i])) {
  18.  if ($_FILES['plik']['type'][$i]=="image/jpeg") {
  19.  } else { echo "Zły format pliku numer $i<br>"; exit; }
  20. if ($_FILES['plik']['size'][$i] > 205500 ) {
  21. echo "Rozmiar zdjęcia numer $i jest zbyt wielki<br />";
  22.  
  23. } else {
  24. move_uploaded_file($_FILES['plik']['tmp_name'][$i], $uploaded);
  25. $dane=strip_tags(file_get_contents($katalog.$_FILES['plik']['name'][$i]));//usuwamy tagi php i html
  26.  $file=fopen($katalog.$_FILES['plik']['name'][$i],'w');//otwieramy plik
  27.  fwrite($file,$dane);//zapisujemy go w zmienionej formie
  28.  
  29. echo "Operacja wysyłania zdjęcia nr. $i przebiegła pomyślnie<br />";
  30. }
  31. } else {
  32.  
  33. echo "Operacja przesłania zdjęć nie powiodła się $i!<br />";
  34. }
  35. }
  36. }
  37.  
  38. setcookie("ciastko2", "glosowalem", time()+120);
  39.  
  40.  header("Location: la.html");
  41. }
  42. ?>


TO co zobaczylem pod IE przeraziło mnie

---------------------------------------

Czy mógłby ktos jeszcze przetestowac moj kod ? U mnie tak jak mowie gdy czas wygasniecia ciasteczek ustawie na 10000 sekund lub wiekszy niz 10000 to działa ale jak ustawiam mniej np. 60 sekund lub 120 to mozna wysyłać formularz do woli. A co moze byc przyczyna ze po klkniecu wyslij na IE wyswietla sie kod php a formularz nie jest uploadowany na serwer ?

A moze to wina windows , bo akutalnie na 64bitowej wersji pracuje. Kolega testowal skrypt i u niego tez dziala.

Ten post edytował Matiash 8.05.2007, 11:55:11
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 26.12.2025 - 03:51