Datenbank updaten - brauche dringend Hilfe!!!

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

  • Datenbank updaten - brauche dringend Hilfe!!!

    Hallo alle zusammen,

    ich hoffe ihr könnt mir bei meinem problem helfen. Und zwar: ich habe ein Poll-Script, dass bisher funktioniert hat, sprich ich kann Fragen hinzufügen. Nun möchte ich den Adminbereich noch erweitern - ich würde gerne ein script haben, mit dem ich die abgegebenen Stimmen auf 0 setzen kann.

    Ich habe schon begonnen, aber konnte es nicht wirklich weit schaffen, da ich mit mysql noch nicht so viel erfahrung habe. Hier habt ihr mal den php-code, den ich derzeit habe:

    PHP-Code:
    echo '<form name="admin" action="' $_SERVER['PHP_SELF'] . '" method="post">';
    echo 
    '<fieldset style="width: 400px;">';
    echo 
    '<legend><b>Stimmen zur&uuml;cksetzen</b></legend>';
    echo 
    '<input type="radio" name="back" value="Umfrage &uuml;ber das Quiz">Umfrage &uuml;ber das Quiz</input><br>';
    echo 
    '<input type="radio" name="back" value="Umfrage &uuml;ber das Design">Umfrage &uuml;ber das Design</input>';
    echo 
    '<br><input type="button" value="Zur&uuml;cksetzen" style="float:right;" onclick="weiter()"><br>';
    echo 
    '</fieldset>';
    echo 
    '</form>'
    --> ich weiß es ist nicht viel, aber ich hoffe ihr könnt mir weiterhelfen

    VIELEN DANK SCHON VORHER

    PS: wer den php-code der ganzen datei braucht, meldet sich bitte

  • #2
    Ohne die konkrete Datenbankstruktur kann dir keine Helfen. Desweiteren liest du dir mal ganz flott unsere Regeln durch, vor allem in Bezug auf "Wie sollte mein Betreff aussehen" ...
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Kommentar


    • #3
      Das ist keine PHP-Code, das ist nur ein HTML-Formular (welches mit PHP ausgegeben wird). Das Formular interessiert aber gar nicht. Das Problem beginnt dort, wo du dieses Formular verarbeitest, nachdem es abgeschickt wurde. Da muss halt irgendwie ein mysql_query() mit einem UPDATE-Statement ausgeführt werden. Mehr kann man ohne weitere Informationen leider nicht sagen.

      Du brauchst Grundkenntnisse, und zwar "dringend!!!"

      Kommentar


      • #4
        ihr habt mich ja gebeten, dass ihr den code braucht, also es gibt zwei dateien:

        1. config.php:
        PHP-Code:
        <?php
        // MySQL Verbindungs Variablen
        $host "localhost";
        $user "x-muchacho";
        $pass "passwort";
        $dbname "x-muchacho";

        // Verbindung aufbauen
        $serverid mysql_connect($host$user$pass);
        mysql_select_db($dbname$serverid);

        // Konfiguration der Umfrage
        $adminname "admin"// Zur Administration der Umfragen
        $adminpass "pass"// Passwort für Admin Account
        $maxoptions 5// Maximale Optionsfelder, die im Adminbereich angezeigt werden
        ?>
        2. admin.php:
        PHP-Code:
        <html>
        <head>
        <title>Computerquiz | Admin</title>
        <?php include('../../header1.php'); ?>
        <?php 
        include("config.php"); 

        if(
        $_POST["adminname"] == $adminname && $_POST["adminpass"] == $adminpass) { 

            if(
        $_POST["submit"] == "Erstellen") { 
                
        $options = array(); 
                
        $hits = array(); 
             
                for(
        $i=0$i<$maxoptions$i++) { 
                    if(
        $_POST["option" $i] != "") { 
                        
        $options[] = $_POST["option" $i]; 
                        
        $hits[] = 0
                    }  
                } 
                
        $options implode(";"$options); 
                
        $hits implode(";"$hits); 
                 
                
        $sql "INSERT INTO x_polls (frage, options, hits) "
                
        $sql .= "VALUES ('" $_POST["frage"] . "', '" $options "', '" $hits "')"
                
        $query mysql_query($sql$serverid); 
                 
                if(
        mysql_affected_rows($serverid)) { 
                    echo 
        '<h5>Neue Umfrage erfolgreich erstellt.</h5><br>'
                    echo 
        '<h5>Zur&uuml;ck zum Adminbereich: <a href="/data/sites/polls/admin.php">Adminbereich</a></h5>'
                } 
                else { 
                    echo 
        '<h5>Umfrage konnte nicht erstellt werden.</h5>'
                } 
            }
            else { 
                echo 
        '<br>';
                
        //Neue Umfrage erstellen
                
        echo '<form name="admin" action="' $_SERVER['PHP_SELF'] . '" method="post">';
                echo 
        '<fieldset style="width: 400px;">';
                echo 
        '<legend><b>Neue Umfrage erstellen</b></legend>';
                echo 
        '<input type="hidden" name="adminname" value="' $adminname '">'// Muss wegen Verifizierung nochmals übergeben werden 
                
        echo '<input type="hidden" name="adminpass" value="' $adminpass '">'// s.o. 
                
        echo 'Frage:<br>'
                echo 
        '<input type="text" name="frage" size="50"><br>'
                echo 
        'Antworten:<br>';
                
        $j 1;
                for(
        $i=0$i<$maxoptions$i++) { 
                    echo 
        $j++ . '. <input type="text" name="option' $i '" size="47.5"><br>'
                }
                echo 
        '<br><input type="submit" name="submit" value="Erstellen" style="float:right;">';
                echo 
        '</fieldset>';
                echo 
        '</form><p>';
                
        //Stimmen zurücksetzen
                
        echo '<form name="admin" action="' $_SERVER['PHP_SELF'] . '" method="post">';
                echo 
        '<fieldset style="width: 400px;">';
                echo 
        '<legend><b>Stimmen zur&uuml;cksetzen</b></legend>';
                echo 
        '<input type="radio" name="back" value="Umfrage &uuml;ber das Quiz">Umfrage &uuml;ber das Quiz</input><br>';
                echo 
        '<input type="radio" name="back" value="Umfrage &uuml;ber das Design">Umfrage &uuml;ber das Design</input>';
                echo 
        '<br><input type="button" value="Zur&uuml;cksetzen" style="float:right;" onclick="weiter()"><br>';
                echo 
        '</fieldset>';
                echo 
        '</form>';
            } 

        else { 
            echo 
        '<h4>Adminbereich für die Umfragen</h4>';
            echo 
        '<form name="login" action="' $_SERVER['PHP_SELF'] . '" method="post">'
            echo 
        '<table>'
            echo 
        '<tr><td>Username:</td><td><input type="text" name="adminname"></td></tr>'
            echo 
        '<tr><td>Passwort:</td><td><input type="password" name="adminpass"></td></tr>'
            echo 
        '</table>'
            echo 
        '<input type="submit" value="Login"></form>'

        ?>
        <?php 
        include('../../footer.php'); ?>
        ich hoffe es hilft euch und mir weiter

        DANKE

        Kommentar


        • #5
          hab das problem gelöst

          bitte schließen, DANKE

          Kommentar


          • #6
            Themen werden nicht geschlossen, wenn das Problem gelöst wurde. Schon gar nicht, wenn du die Lösung hier nicht auch für andere bereit stellst. Danke =)
            [FONT="Helvetica"]twitter.com/unset[/FONT]

            Shitstorm Podcast – Wöchentliches Auskotzen

            Kommentar


            • #7
              hier das komplette poll-script für andere anfänger

              die mysql-tabelle erstellt ihr mit hilfe dieses codes:
              Code:
              CREATE TABLE umfragen (
                   id int not null primary key auto_increment,
                   frage varchar(255) not null,
                   options text not null,
                   hits text not null
              );
              Datei config.php:
              PHP-Code:
               <?php  
              // MySQL Verbindungs Variablen  
              $host "localhost";  
              $user "root";  
              $pass "root";  
              $dbname "website";  

              // Verbindung aufbauen  
              $serverid mysql_connect($host$user$pass);  
              mysql_select_db($dbname$serverid);  

              // Konfiguration der Umfrage  
              $cookie true// Setzt einen Cookie nach der Abstimmung  
              $adminname "Admin"// Zur Administration der Umfragen  
              $adminpass "admin"// Passwort für Admin Account  
              $maxoptions 10// Maximale Optionsfelder, die im Adminbereich angezeigt werden  
              $blockdays 7// User dürfen erst nach X Tagen wieder an der Umfrage teilnehmen  
              ?>
              Datei vote.php:
              PHP-Code:
               <?php  
              // Config Datei hinzuladen  
              include("config.php");  

              // ID der aktuellen Umfrage ermitteln  
              $id mysql_result(mysql_query("SELECT id FROM umfragen ORDER BY id DESC LIMIT 1"$serverid), 0"id");  

              // Wenn abgestimmt wurde -> Datenbankeintrag  
              if($_POST["submit"] == "Vote") {  

                  
              // Bisherige Stimmen aus der Datenbank holen  
                  
              $sql "SELECT * FROM umfragen WHERE id=" $id;  
                  
              $query mysql_query($sql$serverid);  
                  
              $data mysql_fetch_array($query);  

                  
              // String wieder zurück in ein Array einlesen  
                  
              $data["hits"] = explode(";"$data["hits"]);  

                  
              // Die Variable mit der Stimme des Users erhöhen  
                  
              $data["hits"][$_POST["option"]]++;  
                    
                  
              // Array zurück in String  
                  
              $data["hits"] = implode(";"$data["hits"]);  
                    
                  
              // Datenbank Update  
                  
              $sql "UPDATE umfragen SET hits='" $data["hits"] . "' WHERE id=" $id;  
                  
              $query mysql_query($sql$serverid);  
                    
                  
              // Check  
                  
              if(mysql_affected_rows($serverid)) {  
                    
                      
              setcookie("voted"$idtime()+3600*24*$blockdays);  
                      echo 
              'Deine Stimme wurde gezählt.';  
                      
              // User in 5 Sekunden zum Ergebnis der Umfrage weiterleiten  
                      
              echo "<META http-equiv=refresh content='5; URL=result.php'>";  
                        
                  }  
                  else {  
                        
                      echo 
              'Fehler beim Abstimmen.';  
                        
                  }  

              }  
              // Wenn nicht -> Ausgabe der Optionen  
              else {  

                  
              // Überprüfen, ob User schon abgestimmt hat  
                  
              if($_COOKIE["voted"] == $id) {  
                    
                      echo 
              'Du hast bereits abgestimmt - Beim nächsten Mal wieder.';  
                      
              // User in 5 Sekunden zum Ergebnis der Umfrage weiterleiten  
                      
              echo "<META http-equiv=refresh content='5; URL=result.php'>";  
                      die();  
                    
                  }  
                    
                  
              // Letzte (aktuelle) Umfrage aus der Datenbank holen  
                  
              $sql "SELECT * FROM umfragen WHERE id=" $id;  
                  
              $query mysql_query($sql$serverid);  
                  
              $data mysql_fetch_array($query);  

                  
              // String wieder zurück in ein Array einlesen  
                  
              $data["options"] = explode(";"$data["options"]);  
                    
                  
              // Ausgabe der Frage und ihrer Optionen  
                  
              echo $data["frage"];  
                  echo 
              '<form name="umfrage" action="' $_SERVER['PHP_SELF'] . '" method="post">';  
                    
                  for(
              $i=0$i<count($data["options"]); $i++) {  
                    
                      echo 
              '<input type="radio" name="option" value="' $i '">' $data["options"][$i] . '<br>';  
                    
                  }  
                    
                  echo 
              '<br><input type="submit" name="submit" value="Vote"></form>';  

              }  
              ?>
              Datei result.php:
              PHP-Code:
               <?php  
              // Config Datei hinzuladen  
              include("config.php");  

              // Daten abfragen  
              $sql "SELECT * FROM umfragen ORDER BY id DESC LIMIT 1";  
              $query mysql_query($sql$serverid);  
              $data mysql_fetch_array($query);  

              // String in Array umwandeln  
              $data["options"] = explode(";"$data["options"]);  
              $data["hits"] = explode(";"$data["hits"]);  

              $gesamt array_sum($data["hits"]);  

              echo 
              $data["frage"] . '<br><br>';  

              // Ausgabe der Optionen mit Prozent, Stimmen und Balken  
              for($i=0$i<count($data["options"]); $i++) {  

                  
              $percent floor($data["hits"][$i]*100/$gesamt);  
                  echo 
              $data["options"][$i] . ' - ' $percent '% (' $data["hits"][$i] . ') ';  
                  echo 
              '<img border="0" src="links.gif" width="15" height="20">
              <img border="0" src="mitte.gif" width="' 
              . ($percent*2) . '" height="20">
              <img border="0" src="rechts.gif" width="15" height="20"><br>'
              ;  

              }  
              ?>
              viel vergnügen damit

              die Datei admin.php findet ihr in einem vorherigen beitrag!!

              gruß x-muchacho
              Zuletzt geändert von x-muchacho; 31.12.2009, 14:27.

              Kommentar

              Lädt...
              X