Problem bei einer ausgabe vom Durchschnittsbewertung

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem bei einer ausgabe vom Durchschnittsbewertung

    Hallo,
    ich hab folgenden skript, der Titel und Autor ausgibt und jetzt auch die Bewertung ausgeben soll.

    PHP Code:

    $sqlab  
    "SELECT id,titel,autor,counter,vote_anzahl,vote_value FROM tabelle ";
    $sqlab .= " WHERE kategorie LIKE '%$anf%' ORDER BY titel";
    $result_articles mysql_query ($sqlab,$ezine_db);





    echo 
    "
    <table border=0>
    <tr><td><b>Titel</b></td><td><b>Autor</b></td><td>Statistik&nbsp;&nbsp;</tr>
    "
    ;

    if (
    $num==0) echo "<tr><td><b>keine passenden Datensätze gefunden</b></td></tr>";

    while (
    $row=mysql_fetch_array($result_articles))

     {
      echo 
    "
      <tr>
      <td width=\"200\"><a href=\"text.php?id=
    $row[id]\">$row[titel]</a></td>
      <td>
    $row[autor]</td>
      <td>Hits: 
    $row[counter] &nbsp; Bewertung: [COLOR=crimson]????Durchschnittsbewertung????[/COLOR]  &nbsp; Stimmen: $row[vote_anz]</td>
      </tr>
      "
    ;
     } 
    EDIT:
    quote.tags entfernt und gegen php.tags ausgetauscht.


    Durchschnittsbewertung z.B. $vote_rating soll
    round(vote_value/vote_anzahl, 2);
    sein,

    wie baue ich das ein, damit die individuelle Durchschnittsbewertung für jeden Texttitel ausgegeben wird,
    es werden mehrer untereinander ausgegeben und bei meinen Versuchen
    entweder allein die bewertung vom ersten,
    oder statistik ohne bewertung oder gar nichts

    Bitte um hilfe
    Last edited by Wotan; 25-08-2003, 16:37.

  • #2
    wie ises mit:
    Code:
    $sqlab  = "
    SELECT id,titel,autor,counter,ROUND(vote_value/vote_anzahl,2) bewertung
    FROM tabelle 
    WHERE kategorie LIKE '%$anf%' 
    ORDER BY titel";
    ??
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Comment


    • #3
      Dankeschön hat geklapt,
      jetzt habe ich aber schon wieder ein Problem,

      Mehrfachvoting wollte ich dadurch verhindern, dass ich einen Cookie setze,

      Mit folgenndem Skript:

      PHP Code:
       if ($send)
      {
           if (!isset(
      $_COOKIE['name $id']))
             {
              
      //kein cookie
              
      $ablaufdatum time()+60*10*1//24 Stunden
              
      setcookie('name $id','http://www.seite.de',$ablaufdatum);
              }
            else
              {
                echo 
      "<center><font size='+1'>Vielen Dank! Du hast bereits für diesen Text gevotet,</font><p>";
                echo 
      "<center><font size='+1'>weshalb dieses mal nicht gewertet wird.</font><p>";
                echo 
      "<center><font size='+1'>zurück</a></font><p>";


              }

            if (
      $id=="" )
              {
                echo
                 
      "<center><font size='+1'>Leider ist ein Fehler aufgetreten.</font>
                <center><font size='+1'></font>"
      ;
              }
             else
             {
             require 
      "ezine_db.inc.php";
             
      $ezine_db ezine_connecte_db();

              
      $a $vote_anz +1;
              
      $v $vote_value $R1;

            
      $sql "UPDATE tabelle";
            
      $sql .= " SET vote_anz='$a', vote_value='$v' ";
            
      $sql .= "WHERE id = '$id'";

            
      mysql_query($sql$ezine_db);

            
      $num mysql_affected_rows();
            if (
      $num>0)
               {
                echo 
      "<center><font size='+1'>Ihre Bewertung / Vote wurde vermerkt.</font><p>";
                echo 
      "<center><font size='+1'>Vielen Dank!</font><p>";
                echo 
      "<center><font size='+1'>Zurück</a></font><p>";
               }
            else
            {
               echo 
      "<center><font size='+1'>Es ist ein Fehler aufgetreten, </font>";
               echo 
      "<center><font size='+1'>es wurde keine Bewertung vorgenommen.</font><p>";
               echo 
      "<center><font size='+1'></font><p>";
            }
            
      mysql_close($ezine_db);
            }
         }


      ?> 
      Ich bekomme aber den fehler und es wird trotzdem noch einmal gevotet:



      Warning: Cannot add header information - headers already sent by (output started at C:\apache\htdocs\02082003\texte\abstimmung2.php:8) in C:\apache\htdocs\02082003\texte\abstimmung2.php on line 246

      Line 246 fängt mit setcookie an ...

      bitte um hilfe und danke im vorraus
      Last edited by flo; 25-08-2003, 21:54.

      Comment


      • #4
        Original geschrieben von flo
        output started at C:\apache\htdocs\02082003\texte\abstimmung2.php:8
        da liegt der hund begraben

        vor setcookie darf keine ausgabe an den browser erfolgen
        Ich denke, also bin ich. - Einige sind trotzdem...

        Comment


        • #5
          Achso, der Code muss also nach ganz oben in den head

          Dankeschön

          Comment


          • #6
            Kann ich eigentlich aus dem Setcookie oder verweigern eine Funktion machen, und den cookie am anfang der seite dann ausführe und den rest irgendwo mitten drin oder den cookie verweigern und deswegen nur mitten drinn einen Text ausgeben?
            Wie mache ich das?

            Comment


            • #7
              hä?

              setzen musst du ihn vor der ausgabe, aber prüfen kannst du wo immer du willst
              Ich denke, also bin ich. - Einige sind trotzdem...

              Comment

              Working...
              X