gox: wer ist wo online

Beitrag lesen

hallo, das ist ein ausschnitt aus mein "wer ist wo online" script, funktioniert auch wunderbar, er macht:

wenn ip nicht vorhanden ein insert
wenn ip vorhanden ein update
wenn älter als 900sec macht er ein delete

aber ich hab da probleme wenn eine ip vorhanden ist und man nach 901 sec die seite neu aufruft mit der gleichen ip, macht er zwar ein delte, aber kein insert?

also, warum macht er wenn man das script nach 900 sec wieder aufruft zwar ein delete, aber kein insert mehr?

<?php
        while($row = $sqlq->fetch()){
            $ztime = $row['lastactivity'] + 900;
            if ( $ztime < mktime() ){
                $sql_del = "DELETE FROM
                                wiw
                            WHERE
                                lastactivity = '".$row['lastactivity']."'";
                mysql_query($sql_del) OR die(mysql_error());
            }
            if ((($row['ipaddress'] == $REMOTE_ADDR) AND ($userid == $row['userid']))){
                $exist = '1';
            }
        }
            if ($exist == '1'){
                $sqlud = "UPDATE
                              wiw
                          SET
                              lastactivity = UNIX_TIMESTAMP(),
                              request_uri  = '$REQUEST_URI'
                          WHERE
                              userid = $userid";
                mysql_query($sqlud) OR die(mysql_error());
            } else {
                $sqlins = "INSERT INTO
                               wiw
                           (userid, ipaddress, request_uri, lastactivity)
                       VALUES
                          ($userid,
                           '$REMOTE_ADDR',
                           '$REQUEST_URI',
                           UNIX_TIMESTAMP())";
                mysql_query($sqlins) OR die(mysql_error());
            }
?>

hoffe jemmand sieht mein denkfehler.

mfg gox