Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Ciasteczka w skrypcie komentarzy
#1
Witam.
Chciałbym dodać możliwość komentarzy do notek na stronie.
Znalazłem prosty bez bazy danych.
W którym miejscu i co należy dopisać, aby ograniczyć możliwość dodawania komentarzy w określonym czasie np 15 minut.

Z góry dziękuję i pozdrawiam


Kod:
<FORM  method="post">
    <b>Twój nick:</b><BR><INPUT name="imie" type="text" size="20"><BR>
    <b>Komentarz:</b><BR><TEXTAREA name="message" rows=8 cols=30 wrap=virtual>
    </TEXTAREA><BR>
    <INPUT name="submit" type="submit" value="Dodaj komentarz">
    </FORM>

    <?
    $im=$_POST['imie']; $message=$_POST['message'];
    if ($message && $im)
       {
       $date = date("Y-m-d H:i:s");
       $message = "<B>$im</B> -- $date<P> $message <BR><HR>";
       $fp = fopen (basename($_SERVER['PHP_SELF']).".text", "a");
       fwrite ($fp, $message);
       fclose ($fp);
       }
    @readfile(basename(($_SERVER['PHP_SELF'].".text")));
    $message ="";
    
    ?>
Odpowiedz
#2
Kod PHP:
<?
if(isset($_POST['submit']))
{
        
$im=$_POST['imie']; $message=$_POST['message'];
    if (
$message && $im)
           {     
         if(isset(
$_COOKIE['czas']))
         {
             echo
'<b style="color:red;">Komentarz możesz dodać co 15minut.</b>';
         }
         else
         {

             
$date date("Y-m-d H:i:s");
             
$message "<B>$im</B> -- $date<P> $message <BR><HR>";
             
$fp fopen (basename($_SERVER['PHP_SELF']).".text""a");
              
fwrite ($fp$message);
              
fclose ($fp);
             
setcookie("czas""1"time()+(15*60));
         }
    
           }
    else
    {
        echo  
'<b style="color:red;">Wypełnij wszystkie pola.</b>';
    }
}    
   
?>

<FORM action="" method="post">
<b>Twój nick:</b><BR><INPUT name="imie" type="text" size="20"><BR>
<b>Komentarz:</b><BR><TEXTAREA name="message" rows=8 cols=30 wrap=virtual>
</TEXTAREA><BR>
<INPUT name="submit" type="submit" value="Dodaj komentarz">
</FORM>

<?
@readfile(basename(($_SERVER['PHP_SELF'].".text")));
$message ="";
?>
Odpowiedz
#3
Witam i dziękuję.

Po dodaniu komentu pojawia się:
Kod PHP:
WarningCannot modify header information headers already sent by (output started at ....................... on line 19 

co to oznacza?
Odpowiedz
#4
Na samym początku pliku dodaj
<?
ob_start();
?>

a na samym końcu

<?
ob_end_flush();
?>
Odpowiedz
#5
Dzięki,ale teraz pojawia się:
Kod PHP:
WarningCannot modify header information headers already sent by (output started at ............................................................/komentator.php on line 23 

Cały plik php wyglada tak:
Kod PHP:
<p>&nbsp;</p><p>
<?
ob_start();
?>
<?
if(isset($_POST['submit']))
{
        
$im=$_POST['imie']; $message=$_POST['message'];
    if (
$message && $im)
           {     
         if(isset(
$_COOKIE['czas']))
         {
             echo
'<b style="color:red;">Komentarz możesz dodać co 15minut.</b>';
         }
         else
         {

             
$date date("Y-m-d H:i:s");
             
$message "<B>$im</B> -- $date<P> $message <BR><HR>";
             
$fp fopen (basename($_SERVER['PHP_SELF']).".text""a");
              
fwrite ($fp$message);
              
fclose ($fp);
             
setcookie("czas""1"time()+(15*60));
         }
    
           }
    else
    {
        echo  
'<b style="color:red;">Wypełnij wszystkie pola.</b>';
    }
}    
   
?>

<FORM action="" method="post">
<b>Twój nick:</b><BR><INPUT name="imie" type="text" size="20"><BR>
<b>Komentarz:</b><BR><TEXTAREA name="message" rows=8 cols=30 wrap=virtual>
</TEXTAREA><BR>
<INPUT name="submit" type="submit" value="Dodaj komentarz">
</FORM>

<?
@readfile(basename(($_SERVER['PHP_SELF'].".text")));
$message ="";
?>
<?
ob_end_flush
();
?> 
</p> 
Odpowiedz
#6
Powinno być
Kod PHP:
<?
ob_start
();
?>
<p>&nbsp;</p><p>

<?
if(isset($_POST['submit']))
{
        
$im=$_POST['imie']; $message=$_POST['message'];
    if (
$message && $im)
           {     
         if(isset(
$_COOKIE['czas']))
         {
             echo
'<b style="color:red;">Komentarz możesz dodać co 15minut.</b>';
         }
         else
         {

             
$date date("Y-m-d H:i:s");
             
$message "<B>$im</B> -- $date<P> $message <BR><HR>";
             
$fp fopen (basename($_SERVER['PHP_SELF']).".text""a");
              
fwrite ($fp$message);
              
fclose ($fp);
             
setcookie("czas""1"time()+(15*60));
         }
    
           }
    else
    {
        echo  
'<b style="color:red;">Wypełnij wszystkie pola.</b>';
    }
}    
   
?>

<FORM action="" method="post">
<b>Twój nick:</b><BR><INPUT name="imie" type="text" size="20"><BR>
<b>Komentarz:</b><BR><TEXTAREA name="message" rows=8 cols=30 wrap=virtual>
</TEXTAREA><BR>
<INPUT name="submit" type="submit" value="Dodaj komentarz">
</FORM>

<?
@readfile(basename(($_SERVER['PHP_SELF'].".text")));
$message ="";
?>
 
</p> 
<?
ob_end_flush
();
?>

przed ob_start() nie powinno być wyświetlana żadna treść.
Odpowiedz
#7
Niestety cały czas po dodaniu komentu:
Kod PHP:
WarningCannot modify header information headers already sent by (output started at /home/....................../public_html/index.php:4in /home/................................/public_html/komentator.php on line 24 

Czy jest jasne dlaczego tak się dzieje?
Z góry dziękuje za odpowiedz i pozdrawiam
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Podgląd szablonów w skrypcie? vka1 3 3,301 15-06-2013, 03:53
Ostatni post: kornell
  PHPMailer - dodanie opcji wyboru tematu w skrypcie formularza kontaktowego [PHP],[JS] Apikshos 2 3,231 21-01-2012, 00:27
Ostatni post: Apikshos
Exclamation [PYTANIE] Strona i luki w skrypcie xtronix856 3 3,228 11-07-2011, 12:15
Ostatni post: hieroshima
  opcja "Zgłoś nadużycie" obok komentarzy w PHP mark014 0 1,183 27-11-2010, 23:51
Ostatni post: mark014

Skocz do:


Użytkownicy przeglądający ten wątek:
Sponsorzy i przyjaciele
SeoHost.pl