Ankündigung

Einklappen
Keine Ankündigung bisher.

votings zählen und speichern

Einklappen

Neue Werbung 2019

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

  • votings zählen und speichern

    Hallo Freunde des Warnsinns

    Wie kann ich realisieren, daß wenn ich auf einen link klicke sich in der Datenbank eine Zahl immer um eins erhöht. Ich wollte gerne ein votingsystem machen welches mir dann die Ergebnisse angeordnet nach den votes ausgibt.

    kann mir jemand weiterhelfen ???

    mein jetziger code wobei $row[4] das Feld vote ist.

    Code:
    <?PHP
    /* Datenbankserver - In der Regel die IP */
      $db_server = "localhost";
    
    /* Datenbankname */
      $db_name = "bandexplosion";
    
    /* Datenbankuser */
      $db_user = "root";
    
    /* Datenbankpasswort */
      $db_passwort = "";
    
    /* Erstellt Connect zu Datenbank her */
      $db = @MYSQL_CONNECT($db_server,$db_user,$db_passwort);
      $db_select = @MYSQL_SELECT_DB($db_name);
      $result = mysql_query("SELECT * FROM bands ORDER BY `vote` DESC LIMIT 0 , 100 ");
      $menge = mysql_num_rows($result);
      $i = 1;
    
    
    
    echo "<table border=\"0\">";
       echo "<tr>";
          echo "<td width=100 bgcolor='#cccccc'>Platz</td>";
          echo "<td width=200 bgcolor='#cccccc'>Bandname</td>";
          echo "<td width=200 bgcolor='#cccccc'>Kategorie</td>";
          echo "<td width=100 bgcolor='#cccccc'>anh&ouml;ren</td>";
          echo "<td width=100 bgcolor='#cccccc'>vote</td>";
          echo "</tr>";
            while($row = mysql_fetch_row($result)){
    
    
    
          echo "<tr>";
          echo "<td width=100 bgcolor='#efefef'>".$i++."</td>";
          echo "<td width=200 bgcolor='#efefef'>$row[1]</td>";
          echo "<td width=200 bgcolor='#efefef'>$row[2]</td>";
          echo "<td width=100 bgcolor='#efefef'>play</td>";
          echo "<td width=100 bgcolor='#efefef'>$row[4]</td>";
         echo "</tr>";
      }
      echo "</table>";
    
    
    ?>

  • #2
    Struktur: Klicks erstmal auf 0 setzen (eigene MySQL Spalte). Klicks auslesen. Klicks un 1 erhöhen. MySQL Tabelle Updaten.

    Kommentar


    • #3
      die spalte hatte ich schon angelegt und die ausgabe funktioniert auch soweit. aber das problem ist ja das hochzählen.

      hast du vielleicht noch einen tip für mich???

      gruss art

      Kommentar


      • #4
        http://www.tutorials.de/tutorials146580.html

        http://www.traum-projekt.com/forum/s...ead.php?t=7785
        aber auch mal das hier lesen
        http://www.dclp-faq.de/q/q-scripte-abstimmung.html

        grüße ben.

        Kommentar


        • #5
          Hallo Ben,

          vielen Dank für die links

          Damit werde ich erstmal genug zu tun haben

          gruss Art

          Kommentar


          • #6
            Zitat von Art
            vielen Dank für die links
            :wink:

            nunja. die linkliste ist allwissend .. ^^

            Kommentar


            • #7
              Hallo ich nochmal

              Ich bekomme es einfach nicht hin. Schaffe es einfach nicht, trotz der links, daß in mein script einzufügen. Nochmal zum Problem:

              Würde gerne, daß wenn man auf vote klickt, sich in der Datenbank der Wert um 1 erhöht.

              Kann mir nicht jemand weiterhelfen. ich kann nicht mehr...

              Code:
              <?
                mysql_connect("localhost","root","") or die
                ("Keine Verbindung moeglich");
                 mysql_select_db("bandexplosion") or die
                ("Die Datenbank existiert nicht");
              
              $abfrage = "SELECT name, kategorie, play, vote FROM bands";
              
              $ergebnis = mysql_query($abfrage);
              
              
              $i = 1;
              
              echo "<table border=\"0\">";
                 echo "<tr>";
                    echo "<td width=100 bgcolor='#cccccc'>Platz</td>";
                    echo "<td width=200 bgcolor='#cccccc'>Bandname</td>";
                    echo "<td width=200 bgcolor='#cccccc'>Kategorie</td>";
                    echo "<td width=100 bgcolor='#cccccc'>anh&ouml;ren</td>";
                    echo "<td width=100 bgcolor='#cccccc'>hits</td>";
                    echo "<td width=100 bgcolor='#cccccc'>vote</td>";
                    echo "</tr>";
              
              while($row = mysql_fetch_object($ergebnis)){
              
                    echo "<tr>";
                    echo "<td width=100 bgcolor='#efefef'>".$i++."</td>";
                    echo "<td width=100 bgcolor='#efefef'>$row->name</td>";
                    echo "<td width=100 bgcolor='#efefef'>$row->kategorie</td>";
                    echo "<td width=100 bgcolor='#efefef'><a href=$row->play>play</a></td>";
                    echo "<td width=100 bgcolor='#efefef'>$row->vote</td>";
                    echo "<td width=100 bgcolor='#efefef'><a href=zaehlhoch>vote</a></td>";
              
                  }
              
              ?>
              gruss Art

              Kommentar


              • #8
                Schau mal hier (verallgemeinert):
                PHP-Code:
                <?
                //Connect zur Database
                $anfrage="SELECT `vote` FROM `tabelle` WHERE `link_id`='1'";
                $ergebnis=mysql_query($anfrage, $connection);
                $array=mysql_fetch_array($ergebnis);
                $klicks=$array[0];
                $klicks++;
                $anfrage="UPDATE `tabelle` SET `vote`='$klicks' WHERE `link_id`='1'";
                $ergebnis=mysql_query($anfragen $connection);
                ?>
                Ich hoffe, das macht dir das Prinzip klar.

                Kommentar


                • #9
                  moinsen!

                  Das prinzip ist mir schon klar. Hattest du ja auch vorher schon beschrieben, aber beim einbinden haberts halt. Meinst Du nicht da ist vielleicht nochn kleiner Codeschnippsel für mein Script drin :wink:
                  Ich sitze doch schon den ganzen Tag und warscheinlich noch die ganze Nacht dran


                  Gruss Art

                  Kommentar


                  • #10
                    Eventuell schon
                    Verstehe jetzt nur nicht wo du genau das erhöhen willst, nachdem man auf welchen Link geklickt hat (wo der ausgegeben werden soll).

                    Kommentar


                    • #11
                      OK, ich versuche es in Worte zu fassen

                      Code:
                      echo "<td width=100 bgcolor='#efefef'>$row->vote</td>"; 
                      echo "<td width=100 bgcolor='#efefef'><a href=zaehlhoch>vote</a></td>";
                      Habe in der DB ein feld vote (da steht der Wert 0 drinn)
                      Wenn ich nun auf den link vote klicke soll sich der wert in der DB immer um 1 erhöhen.

                      verstanden?

                      gruss Art

                      Kommentar


                      • #12
                        Der fertige "Kram" sieht dann genau so aus:
                        PHP-Code:
                        <?
                        echo "<td width=\"100\" bgcolor=\"#efefef\"><a href=zaehlhoch/&id=".$row->id."\">vote</a></td>"; //ich gehe davon aus, dass du eine Spalte mit Namen `id` hast, und im Ordner zaehlhoch sich eine Datei index.php befindet. ?>
                        Jetzt die Datei zaelhoch/index.php:
                        PHP-Code:
                        <?
                        if(isset($_GET["id"]){
                        //Dein Connect zur Database
                        $anfrage="SELECT `vote` FROM `bands` WHERE `id`=$_GET[id]";
                        $ergebnis=mysql_query($anfrage, $connection);
                        $array=mysql_fetch_array($ergebnis);
                        $votes=$array[id];
                        $votes++;
                        $anfrage="UPDATE `bands` SET `vote`=$votes WHERE `id`=$_GET[id]";
                        $ergebnis=mysql_query($anfrage, $connection);
                        }
                        ?>
                        So, ich hoffe das haut hin, denn wie immer: ungetestet!

                        Kommentar


                        • #13
                          Das haut irgendwie nicht hin. Habe keinen Ordner der zaehlhoch heißt. Das hatte ich nur so in den link rein geschrieben. Und wenn ich über den link vote gehe, zeigt er mir dann nur den pfad zaehlhoch an.
                          Ich glaube echt das ist ne Nummer zu hoch

                          gruss Art

                          Kommentar


                          • #14
                            Nein, das ist echt nicht schwer. Leichter geht es kaum. Dann ersetze zaehlhoch durch zaehlhoch.php und setze in diese Datei folgendes:
                            PHP-Code:
                            <? 
                            if(isset($_GET["id"]){ 
                            //Dein Connect zur Database 
                            $anfrage="SELECT `vote` FROM `bands` WHERE `id`=$_GET[id]"; 
                            $ergebnis=mysql_query($anfrage, $connection); 
                            $array=mysql_fetch_array($ergebnis); 
                            $votes=$array[id]; 
                            $votes++; 
                            $anfrage="UPDATE `bands` SET `vote`=$votes WHERE `id`=$_GET[id]"; 
                            $ergebnis=mysql_query($anfrage, $connection); 

                            rcho mysql_error();
                            ?>

                            Kommentar


                            • #15
                              Die Antwort darauf war

                              Parse error: parse error in /srv/www/htdocs/db/zaehlhoch.php on line 2
                              Code:
                              if(isset($_GET["id"]){

                              Kommentar

                              Lädt...
                              X