compl
30.12.2010, 14:38:38
Witam. Znalazłem w necie taki oto skrypt komentarzy:
<?php
if (isset($_POST['submit'])) { if (isset($_POST['message'])) { if (isset($_COOKIE['dodano'])) { echo "Już dodałeś komentarz! Spróbuj za chwilę.<br>"; } else {
$message = "<B>".$_POST['name']."</B><BR>".$date."<P>".$message."<BR><HR>";
}
}
}
?>
Powinien on korzystać z ciasteczek, lecz niestety chyba to niedziała, bo mogę dodawać wiele komentarzy w ciągu paru minut. Mógłby mi ktoś ten skrypt poprawić?
IceManSpy
30.12.2010, 14:44:07
Korzysta z ciasteczek, ale raczej nie w taki sposób, o który Tobie chodzi. On tylko zapisuje, że jakiś komentarz został dodany. Nigdzie nie sprawdza go.
compl
30.12.2010, 15:31:17
To czy mógłby ktoś go przerobić tak aby można było pisać jeden komentarz na godzinę?
bim2
30.12.2010, 19:59:56
Liczba 300 to sekundy przez ile istnieje ciastko. Jeśli chcesz godzinę to 60*60=3600 sekund

@IceManSpy
Czytaj dokładnie kod. Dodaje ciastko, że dodano komentarz a potem przy próbie dodania sprawdza czy takie ciastko istnieje.
IceManSpy
30.12.2010, 21:46:36
Cytat(bim2 @ 30.12.2010, 19:59:56 )

@IceManSpy
Czytaj dokładnie kod. Dodaje ciastko, że dodano komentarz a potem przy próbie dodania sprawdza czy takie ciastko istnieje.
Faktycznie, musiałem coś przegapić
compl
30.12.2010, 22:13:23
Coś jest nie tak, bo mogę robić dowolną ilosć komentarzy. Po dodaniu komentarza wyskakuje błąd:Warning: Cannot modify header information - headers already sent by (output started at /homez.379/swiatgot/www/naglowekart.php:1) in /homez.379/swiatgot/www/komentarzek.php on line 16
Próbuje użyć Notepada do zmiany kodowania, ale bez skutecznie zapisze w UTF-8 bez BOm. Otwieram ponownie, a tam ANSi mnie wita, więc kurde jak mam to zmienić?
bim2
30.12.2010, 22:24:38
Widocznie ciastko Ci nie dopisuje. Zobacz u siebie w przeglądarce czy masz ciastko.
compl
30.12.2010, 22:41:19
Mam kilka ciasteczek o różnych nazwach nawet nie wiem skąd, bo nie korzystam z ciasteczek. (chyba, że było wysyłane po jednym ciastku zajeden komentarz)
IceManSpy
30.12.2010, 23:24:18
Dodaj sobie echo przed i po setcookie z jakimś napisem i zobacz, czy Ci się one wyświetlają. Bo może nawet do tamtego miejsca nie dochodzi skrypt.
compl
31.12.2010, 10:57:40
Wstawiłem to echo i nic się nie zmieniło. Powiem także, że ten błąd dotyczy własnie linijki z setcookie.
bim2
31.12.2010, 11:13:59
W Notepad++ użyj Convert to UTF-8 without BOM powinno ci kodowanie permanentnie zmienić. Przed <? nie może być żadnych znaków, spacji, enterów, tabów, czegokolwiek. Ma być nic.
compl
31.12.2010, 16:32:45
Jednak dodanie tego echa coś zmieniło:
Wysyłamy ciacho
Warning: Cannot modify header information - headers already sent by (output started at /homez.379/swiatgot/www/naglowekart.php:1) in /homez.379/swiatgot/www/komentarzek.php on line 17
ciacho wysłane
Tak to wygląda.
IceManSpy
31.12.2010, 17:41:14
Ten błąd oznacza, że coś jest przed setcookie. Usuń "Wysyłamy ciacho" i zobacz, czy po tym ustawia się ciastko. Opcjonalnie zrób echo $_COOKIE['dodano']; wtedy zobaczysz, co ciasteczko o nazwie dodano zawiera.
compl
31.12.2010, 19:01:11
Ok. Po prostu usunąłem tą linijkę i błedu już nie ma. Na razie obejde się bez ciasteczek. Mam inne pytanie. Na stronie głównej mam odnośniki to artykułów i chciałbym żeby koło odnośników było napisane ile jest komentarzy. Jak mogę takie coś zrobić?
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.