Hilfe bei Counter

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Hilfe bei Counter

    Hallo,
    habe jetz n Counter gemacht. Will Reload sperre reinbauen! Hab mir da ma wo was geklaut aber funzt net wirklich... hier die page addy... werden fehler gemeldet...

    http://web275.athen023.server4free.de/uhren123.php

    und hier der code der mycounter.php

    Code:
    <?php 
    
    $weg="240"; 
    $filename2="counter2.txt"; 
    $filename="counter.txt"; 
    $date=time(); 
    $fp=fopen($filename,"r"); 
    $date=time(); 
    
    if (file_exists($filename)) 
    { 
        $fp=fopen($filename,"r"); 
         $dat=fgets($fp,100); 
        fclose($fp); 
    
        @list($counter, $gcounter, $datum) = explode("|", $dat); 
        
        if ($sperre!=1) 
        { 
            $counter++; 
            $gcounter++; 
        
          if ($datum!=strftime("%d",$date)) 
          { 
             $counter=1; 
          } 
          $dat="$counter|$gcounter|".strftime("%d",$date); 
            $fp=fopen($filename,"w"); 
             fputs($fp,$dat); 
            fclose($fp); 
        } 
    } else {                      
       $counter=1; 
       $gcounter=1; 
       $dat="$counter|$gcounter|".strftime("%d",$date); 
        $fp=fopen($filename,"w"); 
         fputs($fp,$dat); 
        fclose($fp); 
    } 
    $sperre=1; 
    
    $weg=$date-$weg; 
    
    
    
    
    while($zeile=fgets($fp,999)) 
    { 
    $zeile=chop($zeile); 
    $array=explode("|",$zeile); 
    if($array[1]<$weg){ 
    $daten1.=" |$array[1]n"; 
    $online++; 
    continue; 
    } 
    if($array[0]==$REMOTE_ADDR){ 
    continue; 
    } 
    $filename.="$array[0]|$array[1]n"; 
    $online++; 
    } 
    fclose($fp); 
    $daten1.="$REMOTE_ADDR|$filename"; 
    
    
    $fp=fopen($filename,"w"); 
    
    fputs($fp,$filename); 
    
    fclose($fp); 
    
    
    
    
    
    $startdate=filectime($filename); 
    #$startdate= mktime(0,0,0,06,20,2003); 
    
    $running=($date-$startdate)/86400; 
    if ($running<1) { $running=1; } 
    $schnitt=round($gcounter/$running,1); 
    
    echo "Heute: $counter<br>"; 
    echo "Gesamt: $gcounter<br>"; 
    echo "Durchschnittlich pro Tag: $schnitt"; 
    ?>
    Noch ne Frage wie kann ich die counter (gesamt, heute, durchschnitt) unabhängig von einander anwählen in ner tabelle wie bei der url oben???

  • #2
    Da is eine } zuviel
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      wo genau?

      Kommentar


      • #4
        seh keinen fehler mehr.

        aber rück mal die verschachtelungen richtig ein, dann findest du solche klammern schneller.

        wie meinst du das mit dem einzeln ansteuern?

        wie definierst du datum bzw. Zeit?
        datum != zeit; zeit != datum; !!!

        Kommentar


        • #5
          wie meinst du das wie ich das definiere?
          ach wasn kack bei mir geht das net!!!

          Richtig einrücken??? Wie mache ich das???

          Könnte mir wer n ganz neuen Counter machen, der Besucher Heute, Gesamt, und Durchschnittlich pro Tag (da wäre die Formel: Besucher/(Datum-Onlinestart der Seite))

          Und der sollte so ne Sperre haben, dass wenn man auf refresh geht net +1 gezählt wird, sondern erst wenn diesselbe IP 240 sek später auf refresh geht oder die seite erneut aufruft...

          Kommentar


          • #6
            deinen job wird hier keiner aus "freundschaft" machen.

            such doch mal bei den scripten

            Kommentar


            • #7
              *hust hust*

              PHP-Code:
              $date=time(); 
              $fp=fopen($filename,"r"); 
              $date=time(); 
              warum definierst du das zweimal?

              MFG T

              Kommentar


              • #8
                oh...

                hmmm ja ich merke schon dass hier keiner wirklich bereit ist mir zu helfen... naja trotzdem danke...

                Kommentar


                • #9
                  habe das jetz mal alles mit sessions gemacht... kommen nur 2 fehler kann man sich unter

                  http://web275.athen023.server4free.de/uhren123.php

                  angucken, kann mir da wer helfen???

                  Kommentar


                  • #10
                    output started at /usr/local/httpd/htdocs/kunden/web275/html/uhren123.php:3

                    heißt, dass du inzeile 3 dieser datei ne ausgabe an den browser schickst und daher kannst du in zeile 85 nicht mehr die session starten

                    mach das session_start mal als allerallerallerersten befehl in dein skript, vor jeder ausgabe
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      du sendest ein cookie, nachdem schon eine ausgabe mittels echo oder html erfolgte.

                      steht ja quasi hier. nur eben in englisch...
                      Warning: Cannot send session cookie - headers already sent by (output started at /usr/local/httpd/htdocs/kunden/web275/html/uhren123.php:3) in /usr/local/httpd/htdocs/kunden/web275/html/uhren123.php on line 85
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        kann eigentlich nicht sein, hier der Quelltext...

                        PHP-Code:
                        <html><head> 
                        <title>.::Counter::.</title> 
                        <script type="text/javascript"> 
                        <!-- 
                        function Uhr() 
                        {Datum = new Date(); 
                          Tag = Datum.getDate(); 
                          Monat = Datum.getMonth()+1; 
                          Jahr = Datum.getFullYear(); 
                          Stunde = Datum.getHours(); 
                          Minute = Datum.getMinutes(); 
                          Sekunde = Datum.getSeconds(); 

                        var Tag=((Tag<10) ? "0"+Tag:Tag); 
                        var Monat=((Monat<10) ? "0"+Monat:Monat); 
                        var Stunde=((Stunde<10) ? "0"+Stunde:Stunde); 
                        var Minute=((Minute<10) ? "0"+Minute:Minute); 
                        var Sekunde=((Sekunde<10) ? "0"+Sekunde:Sekunde); 

                        var kalender = Tag+"."+Monat+"."+Jahr; 
                        var uhrzeit = Stunde+":"+Minute+":"+Sekunde; 
                        var zeit = uhrzeit; 
                        var dat = kalender; 

                        if(document.all) { 
                           document.all.MsUhr.innerHTML = uhrzeit; 
                           document.all.MsKal.innerHTML = kalender; 
                           } 

                        else if(document.layers)  { 
                           document.NsTag.document.open(); 
                           document.NsTag.document.write("<font color='#0000ff'>"+kalender+"</font>"); 
                           document.NsTag.document.close(); 
                           document.NsUhr.document.open(); 
                           document.NsUhr.document.write("<font color='#0000ff'>"+uhrzeit+"</font>"); 
                           document.NsTag.document.close();  } 

                        else if (navigator.userAgent.indexOf("Gecko")!=-1){ 
                        var laenge1 = document.getElementById("NsTag").firstChild.nodeValue.length; 
                        var laenge2 = document.getElementById("NsUhr").firstChild.nodeValue.length; 
                        document.getElementById("NsTag").firstChild.replaceData(0,laenge1,kalender); 
                        document.getElementById("NsUhr").firstChild.replaceData(0,laenge2,uhrzeit); 


                        //--> 
                        </script> 
                        </head> 
                        <body onLoad="window.setInterval('Uhr()',100)" background="kasten.jpg"> 
                        <br>
                        <br>
                        <font>Hallo lieber User,<br>
                        Willkommen auf meiner Homepage!
                        <br>
                        <br>
                        Hier ein paar Infos:
                        <br>
                        <br>
                        <br>
                        <table align="center" border="1"> 
                        <tr> 
                        <!--Hier beginnt die Zelle mit der Uhrzeit--> 
                        <td width="110">Datum : </td> 
                        <td width="90"> 
                        <div id="MsUhr"><layer id="NsTag">Mit Opera...</layer></div> 
                        </td> 
                        </tr><tr> 
                        <td>Uhrzeit : </td> 
                        <td> 
                        <div id="MsKal"><layer id="NsUhr">...gehts irgendwie nicht.</layer></div> 
                        </td> 
                        <!--Hier endet die Zelle mit der Uhrzeit--> 
                        </tr> 
                        <tr><td>Ihre IP lautet : </td> 
                        <td><?php echo $REMOTE_ADDR?></td></tr>
                        <tr><td>Besucher (gesamt) : </td><td></td></tr>
                        <tr><td>Benutzer (heute) : </td><td></td></tr>
                        <tr><td width="250">durchschnittliche Seitenaufrufe pro Tag : </td><td></td></tr>
                        <tr><td>Gästebucheinträge : </td><td></td></tr>
                        <tr><td>Neuester Gästebucheintrag : </td><td></td></tr>
                        </table>
                        <br>
                        <br>
                        <br>
                        <?php 
                        session_start
                        ();
                        session_register("sperre");

                        if (!isset(
                        $sperre)) { $sperre=0; } 

                        $filename="counter.txt"
                        $date=time(); 

                        if (
                        file_exists($filename))

                            
                        $fp=fopen($filename,"r"); 
                             
                        $dat=fgets($fp,10); 
                            
                        fclose($fp); 

                            @list(
                        $counter$gcounter$datum) = explode("|"$dat); 
                            
                            if (
                        $sperre!=1)
                            { 
                                
                        $counter++; 
                                
                        $gcounter++; 
                            
                              if (
                        $datum!=strftime("%d",$date)) 
                              { 
                                 
                        $counter=1
                              } 
                              
                        $dat="$counter|$gcounter|".strftime("%d",$date); 
                                
                        $fp=fopen($filename,"w"); 
                                 
                        fputs($fp,$dat); 
                                
                        fclose($fp); 
                            } 
                        } else {
                           
                        $counter=1
                           
                        $gcounter=1
                           
                        $dat="$counter|$gcounter|".strftime("%d",$date); 
                            
                        $fp=fopen($filename,"w"); 
                             
                        fputs($fp,$dat); 
                            
                        fclose($fp); 

                        $sperre=1;

                        $startdatemktime(0,0,0,06,20,2003);

                        $running=($date-$startdate)/86400
                        if (
                        $running<1) { $running=1; } 
                        $schnitt=round($gcounter/$running,1); 

                        echo 
                        "Heute: $counter<br>"
                        echo 
                        "Gesamt: $gcounter<br>"
                        echo 
                        "Durchschnittlich pro Tag: $schnitt"
                        ?>
                        </body></html>

                        Kommentar


                        • #13
                          vor dem session_start steht doch schon html, javascript und mehr oder nich?!
                          Code:
                          <html><head> 
                          <title>.::Counter::.</title> 
                          <script type="text/javascript"> 
                          <!--
                          damit fängt deine datei an und das IST ne ausgabe

                          lass die datei mit
                          PHP-Code:
                          <?php
                          session_start
                          ();
                          ?>
                          <html><head> 
                          <title>.::Counter::.</title> 
                          <script type="text/javascript"> 
                          <!--
                          anfangen
                          Ich denke, also bin ich. - Einige sind trotzdem...

                          Kommentar


                          • #14
                            thx jetz gehts...
                            mal noch ne frage! Wie kann ich jetz inne Tabelle in unterschiedlichen Zellen die Werte einfügen die der Counter ausspuckt??? Und wie ist die Reloadsperre da eingestellt?!? Wollt die auf 240 sek...

                            Kommentar

                            Lädt...
                            X