Ankündigung

Einklappen
Keine Ankündigung bisher.

Zähler

Einklappen

Neue Werbung 2019

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

  • Zähler

    Hallo

    ich habe versucht einen Klickzähler zu machen..

    also wenn jemand auf die seite anzeigen.php?provider=blablabla
    kommt soll es in der db bei diesem eintrag in der spalte click zählen wie viele male das profil besucht wurde. hoffe ihr versteht was ich meine

    ich hab da mal was versucht zu machen und hoffe dass mir jemand weiter helfen kann denn ich bekomme natürlich eine fehlermeldung

    Notice: Undefined variable: zaehler_eintragen in C:\xampp\htdocs\safeinternet\include\functions.inc .php on line 431

    431 wäre das hier ('$zaehler_eintragen')";


    PHP-Code:
        $provider    mysql_real_escape_string(strip_tags($_GET['provider']));
        
        
    $abfrage "SELECT click FROM provider_userdaten WHERE benutzername = '$provider'";
                    
    $ergebnis mysql_query($abfrage);
                    while(
    $provider mysql_fetch_object($ergebnis))
                    
                    if (empty(
    $row->click))
                    {
                    
    $zaehler 0;
                    
    $zaehler_eintragen $zaehler++;
                    }
                    else
                    {
                    
    $zaehler_eintragen $row->click++;
                    }
                    
                    
    $eintragen "INSERT INTO provider_userdaten
                                            (click)
                                    VALUES
                                            ('
    $zaehler_eintragen')";

                    
    $eintragen mysql_query($eintragen) or exit(mysql_error()); 

    Hab mitlerweile kein Fehlermeldung mehr hab was geändert aber wird nicht richtig eingetragen

    PHP-Code:
        $provider    mysql_real_escape_string(strip_tags($_GET['provider']));
        
        
    $abfrage "SELECT click FROM provider_userdaten WHERE provider = '$provider'";
                    
    $ergebnis mysql_query($abfrage) or exit(mysql_error()); 
                    while(
    $provider mysql_fetch_object($ergebnis))
                    
                    if (
    '$row->click' == 0)
                    {
                    
    $zaehler 0;
                    
    $zaehler_eintragen $zaehler +1;
                    }
                    else
                    {
                    
    $zaehler_eintragen $row->click +1;
                    }
                    
                    
    $eintragen "UPDATE provider_userdaten SET click='".addslashes($zaehler_eintragen)."' WHERE provider='$provider'";
                    
    $update mysql_query($eintragen); 


  • #2
    $zaehler_eintragen wird ja hier im Script initalisiert. Was allerdings nicht definiert ist, ist $row, und dadurch macht das Script natürlich gar nichts, auch $zaehler_eintragen ist null.
    Aber wie meistens in deine Problembeschreibungen, ist nicht wirklich klar, was du willst. Aus dem Code ist das leider auch nicht ersichtlich.
    Wieviele Einträge in provider_userdaten pro Provider gibt es? Die Schleife impliziert, dass es mehrere sind. Und dann wird ein neuer Eintrag gemacht, in dem nur der Zähler in einer neuen Zeile eingetragen wird, ohne Key und sonst etwas.
    Ich verstehe diese Zusammenhänge nicht.
    Gruss
    L

    Kommentar


    • #3
      also habs jetzt hinbekommen das es geht

      hoffe jetzt verstehst du was ich gemacht hab

      PHP-Code:
      function Show_Zaehler_Provider()
          {
          
      $provider    mysql_real_escape_string(strip_tags($_GET['provider']));
          
          
      $abfrage "SELECT click FROM provider_userdaten WHERE provider = '$provider'";
                      
      $ergebnis mysql_query($abfrage) or exit(mysql_error()); 
                      while(
      $row mysql_fetch_object($ergebnis))
                      
                      
                      
      $zaehler_eintragen $row->click +1;
                      
                      
          
      $eintragen "UPDATE provider_userdaten SET click='".addslashes($zaehler_eintragen)."' WHERE provider='$provider'";
          
      $update mysql_query($eintragen) or exit(mysql_error()); 


          } 

      Kommentar


      • #4
        Zitat von robydog Beitrag anzeigen
        öhm ja sorry bin nicht sehr g ut mit php
        Das ist keine Entschuldigung für mangelhafte Problembeschreibung
        Zitat von robydog Beitrag anzeigen
        es gibt mehrere einträge aber es wird nur eines ausgelesen. sprich mit WHRE provider = provider kann nur eines zutreffen
        D.h. auch, dass du klar keine Schleife brauchst. Und ich nehme auch an, dass du den bestehenden Eintrag ändern, und nicht einen neuen erstellen willst. Das ergibt dann noch so etwa drei Zeilen:
        PHP-Code:
        $provider    mysql_real_escape_string(strip_tags($_GET['provider']));    
        $eintragen "UPDATE
                        provider_userdaten
                      SET
                        click = click + 1
                      WHERE
                         benutzername = '
        $provider'";
        $eintragen mysql_query($eintragen) or exit(mysql_error()); 
        Gruss
        L

        Kommentar


        • #5
          hmm ok dank dir vielmals...

          ich habs ja hinbekommen das es funktioniert aber so ist bestimmt einfach und gelernt hab ich auch noch was dabei... nämlich dass man bei der mysql abfrage gleich mit was machen kann

          Kommentar

          Lädt...
          X