Anzeige:
Ergebnis 1 bis 3 von 3

Thema: fehler beim bewerten...

  1. #1
    Registrierter Benutzer
    Registriert seit
    11.01.2006
    Beiträge
    103

    fehler beim bewerten...

    PHP-Code:
    $vote=$_POST['vote'];
    $voteintVal($vote);
        
    $sql="SELECT * FROM `gallery` WHERE `id`='$id' ";
    $row=mysql_fetch_assoc(mysql_query($sql));

                    
    $bewertungen=$row['bewertungen'];

                    
    $bewertungen++;


            
    $durchschnitt= ((($row['bewertungen'] * $row['durchschnitt']) + $vote) / $bewertungen );

        
        
    $sql="UPDATE `bilder` Set `bewertungen`='$bewertungen' WHERE `id`='$id'";
        
    mysql_query($sql);

        
    $sql="UPDATE `bilder` Set `durchschnitt` ='$durchschnitt' WHERE `id`='$id'";
        
    mysql_query($sql); 
    irgendwie zählt der bei den bewertungen immer nur runter, dass heißt nu negative bewertungen werden in den durchschnitt aufgenommen, die anzahl der bewertungen werden richtig gezählt...

    kann mir da vielleicht jemand weiterhelfen?

    danke schon mal...
    Geändert von inge (12-05-2006 um 13:24 Uhr)

  2. #2
    Registrierter Benutzer Avatar von BLUESCREEN3D
    Registriert seit
    08.11.2002
    Beiträge
    665
    Zuerst liest du die Anzahl der Bewertungen aus "gallery" aus, schreibst sie dann aber in "bilder"?
    Und falls das der Fehler war, dann solltest du außerdem die drei Queries zu einem Query zusammenfassen, damit das ganze atomar ist - ansonsten hast du da vermutlich eine Race Condition drin.

    Außerdem solltest du nicht den bisherigen Durchschnitt speichern - das führt nur zu Rundungsfehlern. Speicher stattdessen die Summe der bisherigen Bewertungen.

    edit: Ist es gewollt, dass man für "vote" beliebige Werte zwischen -2 Milliarden und +2 Milliarden übergeben kann (bei einem 32bit-System)?
    Geändert von BLUESCREEN3D (12-05-2006 um 14:03 Uhr)

  3. #3
    Registrierter Benutzer
    Registriert seit
    11.01.2006
    Beiträge
    103
    oh, stimmt auf die weise hat es geklappt, danke...

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •