flood brauche mal hilfe

hups1803

Erfahrenes Mitglied
ich habe folgenden code

PHP:
$fload = time() - 2;

   if($lastentry > $fload){
     echo'<p><z>'.$time.'</z>'.$avatar.'
       <span class="hupsi_chatusr">'.$user.' - </span></a>
       <em>'.$date.'</em>    
       <span class="hupsi_chat">- zu schnell</span>    
       </p>';
       }
       else{
    
   fwrite(fopen('chat.txt', 'a'), '
   <p><z>'.$time.'</z>'.$avatar.'
       <span class="hupsi_chatusr">'.$user.' - </span></a>
       <em>'.$date.$lastentry.'</em>    
       <span class="hupsi_chat">- '.$bbcoderowtxt.'</span>    
       </p>      
    ');
}//if flood

ich übergebe den timestamp mitels post so

$lastentry=$_POST['lastentry'];

nun kann ich aber immer eintragen selbst wenn es schneller als 1 sek ist wo habe ich da mein denkfehler?

ich möchte das er bei Einträge die schneller als x sek sind das erste echo anzeigen.

Danke
 
Hi

lass dir im Script $lastentry einmal ausgeben.
Und setz die Zeit testweise einmal auf mehr, zB. 10sec.

Außerdem ist ein Write-fopen auf einer mehrfach aufrufbaren PHP-Seite schlecht (tm).
Grund: Funktioniert nur, solang man wenig Benutzer hat.
 
Ich meinte $fload = time() - 10; statt $fload = time() - 2;.
Und eine Ausgabe der empfangenen Variablenwerte beim Ausführen des Scripts.

Write-fopen: Ein Datenbanksystem ist gemeint. Theoretisch gehts schon auch direkt auf Dateien (nach ausbessern der Fehler), aber dass das irgendwie sinnvoll (nicht nur fehlerfrei, sondern auch effizient) funktioniert ist nicht unbedingt trivial.
 
Zurück