MySQL counter + Problem

Diskutiere mit über: MySQL counter + Problem im Web-Programmierung Forum

  1. oconner

    oconner Thread Starter MacUser Mitglied

    Beiträge:
    269
    Zustimmungen:
    0
    Registriert seit:
    11.01.2006
    Hallo macuser!

    ich programmiere mir gerade einen MySQL counter dieser vieles zaehlen soll wie z.b. die Hits.

    Nur geht das Hits zaehlen irgendwie nicht.

    Meine sql variable sieht so aus

    PHP:
    $sql_count_hits "UPDATE $counter_table Set counter_hits = '$hits_count' WHERE counter_id = '1'";
    und dadurch das hits ja immer gezaehlt werden, muss ich diese funktion ja nicht in eine if abfrage setzen, so sieht das so aus

    PHP:
    $hits_count $counter_hits++;
    mysql_query $sql_count_hits );
    die variable $counter_hits enthaelt im script weiter oben die daten aus der Datenbank, die bis jetzt 0 sind, da ja noch nicht gezaehlt wird.

    Ich hoffe mir kann jemand helfen.:o
     
  2. MyIndY

    MyIndY MacUser Mitglied

    Beiträge:
    80
    Zustimmungen:
    2
    Registriert seit:
    31.01.2005
    hast du in deinem Script testweise einfach mal die $counter_hits ausgeben lassen? Wenn die Zahl dort schon nicht erhöht wird, dann ist wohl schon der Query mit der Anzahl der Hits, die anfangs ausgelesen werden, falsch.

    Es könnte auch sein, dass die Hitanzahl über die Datenbank als String ausgegeben wird, und du daher nichts addieren kannst.

    ...und... nur als tip: Schreib anstatt
    $sql_count_hits = "UPDATE $counter_table Set counter_hits = '$hits_count' WHERE counter_id = '1'";

    um die kompatiblität mit PHP5 zu erhöhen (und weils sauberer is ;)) lieber

    $sql_count_hits = "UPDATE ".$counter_table." Set counter_hits = '".$hits_count."' WHERE counter_id = '1'";



    Gruß, IndY
     
    Zuletzt bearbeitet: 01.07.2006
  3. oconner

    oconner Thread Starter MacUser Mitglied

    Beiträge:
    269
    Zustimmungen:
    0
    Registriert seit:
    11.01.2006
    Hit,

    ja meine Hits werden ausgegeben. es steht null da, aber es wird nicht erhöt.

    meine mysql abfragen mach ich eigentlich immer mit diesen klammern `` so hab ichs gelernt. Habs nur da oben anders, da ich testen wollte obs ohne geht.
     
  4. Thommy

    Thommy MacUser Mitglied

    Beiträge:
    1.833
    Zustimmungen:
    0
    Registriert seit:
    23.06.2003
    lass doch die Spalte per SQL sich selbst hochzählen..

    UPDATE table SET foo=foo+1
     
  5. MyIndY

    MyIndY MacUser Mitglied

    Beiträge:
    80
    Zustimmungen:
    2
    Registriert seit:
    31.01.2005
    Ich weiß nicht, ob du das von der Form her jetz nur so geschrieben hast, aber wenn du den Query zuerst schreibst, dann ++ rechnest und den Query ausführst, gehts ned, weil ja zuerst addiert werden muss. :D
     
  6. oconner

    oconner Thread Starter MacUser Mitglied

    Beiträge:
    269
    Zustimmungen:
    0
    Registriert seit:
    11.01.2006
    @MyIndY jaja. sag mir wie ich es denn sonst machen soll

    @Thommy das muesste dann so aussehen oder?

    PHP:
    $sql_count_hits "UPDATE $counter_table Set `counter_hits` = '$counter_hits + 1' WHERE `counter_id` = '1'";
    mysql_query $sql_count_hits ) OR die (mysql_error());
     
  7. Thommy

    Thommy MacUser Mitglied

    Beiträge:
    1.833
    Zustimmungen:
    0
    Registriert seit:
    23.06.2003
    Ne, nichts mit PHP Variablen. Hochzählen kann SQL alleine :)

    Schaut dann in deinem Fall so aus:

    UPDATE $counter_table SET counter_hits = counter_hits + 1 WHERE counter_id = 1

    Das betroffene Attribut zählt also den aktuellen Wert um einen hoch. Falls dort 45 gespeichert war, steht nach dem Query 46 dort.
     
  8. oconner

    oconner Thread Starter MacUser Mitglied

    Beiträge:
    269
    Zustimmungen:
    0
    Registriert seit:
    11.01.2006
    danke geht nun!
     
Die Seite wird geladen...
Ähnliche Themen - MySQL counter Problem Forum Datum
Leidiges Thema Sonderzeichen mit php und mysql Web-Programmierung 22.02.2013
Dynamisch erstellte Navugation mit MySQL Anbindung Web-Programmierung 10.11.2012
MySQL SELECT über mehrere Tabellen Web-Programmierung 19.09.2012
MySQL MaxOpenFiles unter Lion Web-Programmierung 18.02.2012
[PHP] Massen-Email verschicken: Was kann man falsch machen? Web-Programmierung 01.11.2011

Diese Seite empfehlen

Benutzerdefinierte Suche