Seite 1 von 2

script führt code erst bei f5 aus

Verfasst: 08.09.2006 20:45
von Ambience
hallo, ich habe mir eine kleine ban function geschrieben und dazu die phpbb sql classe benutzt. darf man doch oder?

naja, ich kann php noch nicht so lange und habe mich mal mit fertigen scripts geqählt.. nun habe ich eine ban function, die ist so:

wenn man schlechte wörter wie a***loch also ihr wisst schon eingibt wird man für 2 stunden gebannt.

nun aber die ban abfrage sieht so aus:

Code: Alles auswählen

include($guestbook_root_path .'includes/ctracker'. $phpEx);

//
// check if banned
//

$sql = 'SELECT ip FROM ' .BANLIST_TABLE. ' WHERE ip = "'.md5($HTTP_SERVER_VARS['REMOTE_ADDR']).'"';
$result = $db->sql_query($sql);
      
if ($db->sql_numrows($result) == 1)
{
  $guestbook->assign('BANNED', TRUE);
  die($greatbook->display($guestbook_config['default_style'] . '/info_body' . $htmlEx));
}
das wird auch ausgeführt, aber wenn ich nun gebannt werde, bin ich auf der index.php gebannt. wenn ich dann oben in der url posting.php eingebe dann kann man die seite sehen. erst wenn mann f5 drückt, oder irgendein internen link folgt ist wieder die gebannt meldung.

woran könnte das liegen? ich befasse mich noch nicht allzulang mit php und habe einiges von phpbb kopiert um mein wissen bisschen zu fördern.

wäre für jede information dankbar und hoffe ihr könnt mir noch ein paar tipps auf den weg geben.

Verfasst: 08.09.2006 23:32
von Ferchault
Sicher, dass die posting.php nicht gecached wird?

P.S.: Wieso den MD5-Hash einer IP? Der ist doch länger als die IP...

Verfasst: 09.09.2006 12:52
von Ambience
weil man so beim hacken keine ip´s rausbekommt.

ehm ich benutze das template system smarty.. hatte erst den cache eingeschaltet, dann aber wieder aus, und nun läuft das so schräg, gibt es ein php befehl für keinen cache?

Verfasst: 09.09.2006 13:08
von Miriam
Also einen PHP Befehl wäre z.B. die Funktion session_cache_limiter().


Benutze am besten ein META Tag im HTML Code:

Code: Alles auswählen

<HEAD>
<META HTTP-EQUIV="Expires" CONTENT="-1">
</HEAD>
Falls Du

Code: Alles auswählen

<HEAD>
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
</HEAD>
verwenden möchtest, solltest Du es an das Ende der HTML Seite stellen, also vor das schliessende </HTML>
Allerdings ist der erste Ansatz wohl besser....

Probiere es aus.

Verfasst: 09.09.2006 13:39
von Ambience
das nützt nix.. gibt es keinen php befehl, so nen header befehl odersowas`?

Verfasst: 09.09.2006 15:13
von Miriam
Was nützt nix? :o

Verfasst: 09.09.2006 15:21
von area57
Falls du den session_cache_limiter meinst ist hier die beschreibung :

session_cache_limiter -- Liefert und/oder setzt die aktuelle Cacheverwaltung

Verfasst: 09.09.2006 16:20
von Ambience
ich bau nicht am forum rum... ich bastel ne eigene php seite... ich brauch keine hilfe zum forum, sondern für meine seite. also das ist kein forumscode sondern ein code für ne andere seite.

Verfasst: 09.09.2006 19:29
von Miriam
???

Wer hat das behauptet? Hast Du denn mal die Vorschläge etwas näher in Betracht gezogen oder willst Du, dass Dein Smarty von uns angepasst wird? :roll:

Du wirst es doch wohl schaffen, die Datei templates/header.tpl im Smarty Ordner etwas aufzurüsten... Oder ist das zu viel verlangt.
Einen Versuch ist es doch Wert. :o

Verfasst: 09.09.2006 19:33
von Ambience
ach ich werds auch ohne euch schaffen. sorry ich kann mit nix anfangen von euch, ich verstehe es auch nicht warum mein code auch erst bei reloaden ausgeführt wird.

auf meine frage mit dem header befehl habe ich auch keine antwort bekommen... naja :roll: