xNeTworKx: Mozilla und History bei Links

Hallo,

ich hab ein seltsames Problem : Wenn ich bei einem Forumscript, daß ich selbst gebastelt habe, mit dem Mozilla die Links (Postings) besuche, wird dieser Link nicht als "visited" markiert, sondern bleibt wie ein neuer Link. Das Problem habe ich nur mit Mozilla, und auch nur auf dem Webserver, mit anderen Browsern und lokal funktioniert es auch mit dem Mozilla.
Ich glaube das Script posten würde nicht viel bringen, aber vielleicht weis jemand vielleicht, wie es zu diesem Fehler kommt ?

  1. Hi,

    Ich glaube das Script posten würde nicht viel bringen,

    das denke ich auch - aber der generierte HTML- (und CSS-) Code würde
    vermutlich doch helfen.
    Und eine vorherige Validierung desselben ebenfalls.

    Viele Grüße
          Michael

    1. Hallo,

      aber der generierte HTML- (und CSS-) Code würde vermutlich doch helfen. Und eine vorherige Validierung desselben ebenfalls.

      Es ist valide =) Aber ich kann ja mal eine der Subroutinen posten : sub topic   {   #this is the topic of the board my @liste; my %sortierungshash; print <<EOF;    <div style="position:absolute; top:91px; left:495px"><a href="$url?action=newtopic" onMouseOver="Bildwechsel(6,highlight8)" onMouseOut="Bildwechsel(6,normal8)"><img src="pics/neuesposting.gif" width="222" height="27" alt="neues Posting"></a></div>    <div style="position:absolute; top:130px; left:0px">    <form action="">    <table style="border:1px solid #666600; width:100%">    <colgroup>    <col width="50%">    <col width="15%">    <col width="5%">    <col width="5%">    <col width="25%">    </colgroup>    <tr><td class="topicklein"> &nbsp </td><td class="topicklein">begonnen von</td><td class="topicklein">Antworten</td><td class="topicklein">gesehen</td><td class="topicklein">letzte Nachricht von</td></tr> EOF     opendir(DIR,"messages") or die "Cant open database directory : $!\n";          while (defined(my $file = readdir(DIR)))   {              if ($file =~ /^\d+.txt$/)   {                  my $in = '';                  open(FILE,"messages/$file") or die "Cant open file : $!\n";                  while (<FILE>)   {                  $in .= $_;                      if ($in =~ /<unix>(\d+?)</unix>/)   {                      push @liste, $1;                      push @liste, $file;                      }                  }                  close FILE;              }          }     closedir DIR;     %sortierungshash = @liste;

      my $topicueberpruefer = 0;     foreach my $key(sort { $b <=> $a } keys %sortierungshash)   {

      my $file = $sortierungshash{$key};     my ($inhalt,$replyzeit,$replyname,$replyinhalt,$topinhalt,$topictitle,$autor,$unix) = ('') x 8;     my ($replycounter, $biggest, $clicks) = (0,0,0);     my (@replies, @sortierungsliste) = ((),());

      open(FILE,"messages/$file") or die "Cant open File : $!\n";                 while (<FILE>)  {                 $inhalt .= $;                 }            close FILE;            #### if counter exist, open #####            if (-e "counter/$file")  {            open(FILE,"counter/$file") or die "Cant open counter : $!\n";                while (<FILE>)  {                    while($ =~ /i/g)  {                    $clicks++;                    }                }            }

      ### counter end #####

      if ($inhalt =~ /<top>(.*)</top>/s)    {            $topinhalt = $1;            }

      if ($topinhalt =~ /<topic>(.+?)</topic>/)   {            $topictitle = $1;            }

      if ($topinhalt =~ /<name>(.+?)</name>/g)   {            $autor = $1;            }

      if ($replyinhalt =~ /<zeit>(.+?)</zeit>/g)   {            $replyzeit = $1;            }

      if ($replyinhalt =~ /<name>(.+?)</name>/g)   {            $replyname = $1;            }            $file =~ s/.txt//;            if ($replyname eq '')   {            $replyname = ' ';            }            if ($replyzeit eq '')   {            $replyzeit = ' ';            }            @replies = $inhalt =~ /<reply>(.+?)</reply>/sg;               foreach my $rep(@replies)  {               $replycounter++;                  if ($rep =~ /<unix>(\d+?)</unix>/)  {                  $unix = $1;                  }                     if ($unix > $biggest)  {                     $biggest = $unix;                        if ($rep =~ /<zeit>(.+?)</zeit>/)  {                        $replyzeit = $1;                        }                        if ($rep =~ /<name>(.+?)</name>/)  {                        $replyname = $1;                        }                     }               }

      print "<tr><td class="topicleft"><a class="klein" href="$url?action=showreplies&posting=$file">$topictitle</a></td><td class="topic"> $autor </td><td class="topic"> $replycounter </td><td class="topic"> $clicks </td><td class="topic"><span class="replyname">$replyname</span><br> $replyzeit </td></tr>\n";    $topicueberpruefer++;        if ($topicueberpruefer == $topiccounter)  {        last;        }    } print <<EOF;    <tr><td colspan="2" class="topickleinmitte">       <select name="topiccounter">       <option value="5">die letzten 5 Postings anzeigen</option>       <option value="10">die letzten 10 Postings anzeigen</option>       <option selected value="20">die letzten 20 Postings anzeigen</option>       <option value="30">die letzten 30 Postings anzeigen</option>       <option value="50">die letzten 50 Postings anzeigen</option>       <option value="70">die letzten 70 Postings anzeigen</option>       <option value="100">die letzten 100 Postings anzeigen</option>       <option value="200">die letzten 200 Postings anzeigen</option>       <option value="300">die letzten 300 Postings anzeigen</option>       <option value="400">die letzten 400 Postings anzeigen</option>       </select>       <input type="submit" value="aktualisieren" class="aktubutton">    </td>    <td colspan="3" class="topickleinright">xNeTworKx's Bulletin Board Version 2.0</td></tr>    </table>    </form>    </div> EOF }

      Ich poste auch mal die relevanten CSS Daten :    a.klein:link {font-size:11px; color:#FFFF00; font-family:Verdana, sans-serif; text-decoration:underline}    a.klein:visited {font-size:11px; font-family:Verdana, sans-serif; color:#777000; text-decoration:none }    a.klein:hover {color:#FFFF00; font-family:Verdana, sans-serif; text-decoration:underline }    a.klein:active {color:#FFBF00; font-family:Verdana, sans-serif; text-decoration:underline }    a.klein:focus {color:#FFFF00; font-family:Verdana, sans-serif; text-decoration:underline }

      und das Forum (lokal) : http://212.17.119.105/forum2/index.cgi

  2. Könnte es sein, dass irgendwo eingestellt ist, dass der Browser die Seite nicht in den Cache aufnimmt?

    Dann wird der Link auch nicht als "besucht"(==im Cache) angezeigt.

    fastix