Cześć,
chciałem zrobić sobie księgę gości z tokenem , wszystko fajnie znalazłem skrypt tokena wszystko działa . Ale chciałem popracować nad tym aby ktoś nie dodawał mi tam tych wpisów codziennie .
Postanowiłem użyć ciasteczek lecz coś ich źle używam (pierwszy raz).
Chciałem zrobić tak :
1.jeśli wpisane dane w formularzu poprawnie wyślij ciasteczko o wartości 1 ważne miesiąc
2.jeśli ktoś się chce w ciągu miesiąca dopisać nie może ,bo funkcja sprawdza czy istnieje ciacho o wartosci 1 .
3. zle wypełni formularz wyswietli sie tekst i nie ustawia ciacha .
Wydaje mi się że nie działa przez sesje , ale nie wiem czy mam racje .
Może macie jakieś pomysły aby to rozwiązać.
Oto kod 2 dokumentow
formularz.php
<?php
$_SESSION['token'] = '';
?>
<?php
for($i=0;$i<5;$i++) {
$_SESSION['token'] .= $liczba;
$img .= '<img src="token/'.$liczba.'.gif" />';
}
?>
<html>
<head>
<title>Ksiega gosci</title>
</head>
<body>
<TABLE>
<form action="sprawdz.php" method="post">
<TR><TD>Osoba :</TD><TD><INPUT TYPE="text" NAME="osoba"></TD></TR>
<TR><TD>Wpis :</TD><TD>
<TEXTAREA NAME="wpis" COLS=45 ROWS=4 wrap="VIRTUAL"></TEXTAREA>
</TD></TR>
<TR><TD> Kod</TD><TD>
<?php echo $img; /* Wyświetla token w formie graficznej */ ?></TD></TR>
<TR><TD>Wprowadź kod z obrazka :</TD><TD> <input type="text" name="token"></TD></TR>
<TR><TD></TD><TD><input type="submit" value="Wyślij" /></TD></TR>
</form>
</TABLE>
</body>
</html>
sprawdz.php
<?php
mysql_connect ("localhost", "root", "") or
die ("Nie można połączyć się z MySQL");
if ($_SESSION['token'] == $_POST['token']) {
echo " <b>Twój wpis został dodany</b>";
if ($osoba && $wpis) { // są informacje do wpisania do księgi gości
$query = "INSERT INTO ksiegagosci (data, osoba, wpis) ".
"VALUES (now(), '$osoba', '$wpis');";
}
$wynik = mysql_query ("SELECT * FROM ksiegagosci ORDER BY data DESC;");
stripslashes($rekord['osoba']).",</B> <I>".$rekord['data']."</I></DL>\n";}
echo '<a href="java script:history.back();">Wstecz</A>'; } elseif ($_COOKIE['wpis']== 1) {
//echo '<b>nie możesz się dopisać w tym miesiacu </b>';
header ("Location: http://" . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . "/index.php"); //przekierowanie jezeli istnieje cicho o wartosci 1 }
else {
echo 'Wprowadzono <b>nieprawidłowe</b> dane <br><br> <a href="java script:history.back();">Wstecz</A>'; }
?>