umfrage script

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

  • umfrage script

    Hallo,
    ich möchte mir ein umfrage script schreiben und habe da mal ein paar fragen bezüglich der mysql Tabellen verknüpfungen.
    Hab folgende Tabellen erstellt:

    user
    ID, name, vorname, gruppe usw. (da habe ich schon mal 5 user eingetragen zum testen)

    fragen
    ID, fragen, themen_ID (dort sind 50 fragen eingetragen)

    antwortmöglichkeiten
    ID, antwort (dort stehen 5 antwortmöglichkeiten drinn (radio buttons))

    themen
    ID, thema ( dort sind 8 themen eingetragen für die 50 fragen)

    antworten
    user_ID
    fragen_ID
    themen_ID (brauche ich um später u.a. nach themen auswerten zu können)
    antwortmögl_ID

    Jetzt habe ich ein Loginscript wo der username bei anmeldung übergeben wird. Nun soll das umfrage formular kommen aber ich weiss jetzt nicht wie ich anfangen soll. Lass ich die fragen,themen, antwortmöglichkeiten jetzt per DB einlesen? Vielleicht kann mir ja mal einer einen Tip geben wie ich jetzt am besten vorgehe. Das mit der eindeutigkeit der Tabellen mache ich so zum ersten mal.

  • #2
    So habe mich mal alleine da dran gegeben.
    Habe aber natürlich schon das 1. Problem.

    Wie kann ich aus der Fragen Tabelle die Fragen einzelnd rauslesen?
    Mit dem Code hole ich mir alle 55 Frage auf einmal ins Formular:

    <?
    $result = mysql_query("SELECT * FROM fragen") OR die(mysql_error());
    while($row=mysql_fetch_array($result)) {
    echo $row[1];
    }
    ?>

    Aber ich möchte erst frage1, darunter dann 5 radio buttons, dann frage 2 usw.

    Kommentar


    • #3
      schau dir mal LIMIT im mysql-manual an (link in meiner sig)
      Kissolino.com

      Kommentar


      • #4
        warum limit? du musst doch in der schleife die radio-buttons mit ausgeben. .... wo ist das prob?
        h.a.n.d.
        Schmalle

        http://impressed.by
        http://blog.schmalenberger.it



        Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
        ... nur ohne :-)

        Kommentar


        • #5
          Ja Limit kann man nehmen wenn die Fragen auf mehreren Seiten verteilt
          werden.
          Es sollen aber alle Fragen auf einer Seite mit den jeweiligen radios stehen.

          Das Problem ist das ich nicht weis wie ich die Schleife ändern muss.
          Zuletzt geändert von emacs; 14.10.2003, 14:45.

          Kommentar


          • #6
            Original geschrieben von emacs
            Das Problem ist das ich nicht weis wie ich die Schleife ändern muss.
            du musst doch nur "echo "<input type=\"radio\"> etc. "einbauen ... ist das so schwer?
            h.a.n.d.
            Schmalle

            http://impressed.by
            http://blog.schmalenberger.it



            Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
            ... nur ohne :-)

            Kommentar


            • #7
              Ne das ist ja nicht das Problem.
              Siehe oben:

              So habe mich mal alleine da dran gegeben.
              Habe aber natürlich schon das 1. Problem.

              Wie kann ich aus der Fragen Tabelle die Fragen einzelnd rauslesen?
              Mit dem Code hole ich mir alle 55 Frage auf einmal ins Formular:

              <?
              $result = mysql_query("SELECT * FROM fragen") OR die(mysql_error());
              while($row=mysql_fetch_array($result)) {
              echo $row[1];
              }
              ?>

              Aber ich möchte erst frage1, darunter dann 5 radio buttons, dann frage 2 usw.

              Kommentar


              • #8
                das muss man alles ned begreifen oder? lies die fargen aus, pack die radios darunter, und werte auf der nächsten seite aus ...
                h.a.n.d.
                Schmalle

                http://impressed.by
                http://blog.schmalenberger.it



                Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                ... nur ohne :-)

                Kommentar


                • #9
                  Ja LOOOL
                  ich häng ja voll daneben
                  OK jetzt habe ich es geschnallt.

                  Kommentar


                  • #10
                    Ich nochmal....
                    Bitte mich erschlag mich jetzt nicht aber irgendwie bin ich zu doof.

                    Die Antwortmöglichkeiten liegen auch in der DB.
                    Jetzt habe ich unter jeder Frage die radios mit Bezeichnung aber kann nur
                    eine Frage anklicken weil die radios ja jetzt quasi immer den gleichen namen haben.
                    <?
                    $result = mysql_query("SELECT * FROM fragen") OR die(mysql_error());
                    while($row=mysql_fetch_array($result)) {

                    echo "<br><br><b>";
                    echo $row[1];
                    echo "</b><br><br>";

                    $result2 =mysql_query("SELECT * FROM ant_moe") OR die(mysql_error());
                    while($row=mysql_fetch_array($result2)) {
                    echo "<input type=\"radio\" name=\"ant\" value=\"$row[1]\">\n";
                    echo $row[1];

                    }
                    }
                    ?>
                    Zuletzt geändert von emacs; 14.10.2003, 16:30.

                    Kommentar


                    • #11
                      Hi,

                      also die Fragen auszulesen hast Du soweit ichs verstanden hab ja schon hinbekommen ?! Das ganze wird wohl, oder besser sollte in Schleife laufen?! Innerhalb der Schleife fügst Du also eine zweite Schleife ein, in der Du die Antworten zu der Frage (an Hand der Frage-ID) ausliest. Die jeweils ausgelesene Antwort wird wohl hoffentlich auch eine ID besitzen?! Diese ID benutzt Du als Name für den RadioButton. In den POST Daten kannst Du die ausgewählten Antworten zu den Fragen ermitteln. (eben an Hand der IDs)

                      Kleiner Hinweis:

                      Falls Du Mehrfach-Antworten ermöglichen willst, vergib den Checkboxen einen Namen, so dass sie als PHP-Array übermittelt werden (2-dimensional), wobei der erste Eintrag die Frage ID ist und der Zweite die Antowrt ID.

                      Gruß,
                      Ultra.

                      Kommentar


                      • #12
                        Jo klar haben die Antworten alle eine ID.
                        Eine mehrfach auswahl ist nicht vorgesehen.
                        Danke für den Tip. Probier das gleich mal aus.

                        Gruß
                        emacs

                        Kommentar


                        • #13
                          So ich lasse mir jetzt die fragen mit den radio buttons aus der DB auslesen . Jetzt habe ich aber noch ein Problem.
                          Zu den frage gibt es noch 8 Themen auf 55 fragen verteilt.

                          Tabelle: fragen
                          ID, frage, themen_ID

                          Tabelle: themen
                          ID, thema

                          Die themen ID uber jede frage auszulesen ist ja nicht das Ding aber das macht ja keinen Sinn. Und über jede frage das Thema ja auch nicht.
                          Vielleicht kann mir noch mal jemand helfen.

                          <?
                          $result = mysql_query("SELECT * FROM fragen") OR die(mysql_error());
                          while($row=mysql_fetch_array($result)) {
                          echo "<br><br><b>";
                          echo "<FONT FACE=\"Verdana\" SIZE=\"2\">";
                          echo $row[1];
                          echo "</b><br><br>";

                          $result2 =mysql_query("SELECT * FROM ant_moe") OR die(mysql_error());
                          while($rw=mysql_fetch_array($result2)) {
                          echo "<input type=\"radio\" name=\"ant-".$row[0]."\" value=\"$rw[0]\">\n";
                          echo $rw[1];

                          }
                          }
                          echo "</font>";
                          ?>

                          Thema1
                          Frage1
                          radios

                          Frage2
                          radios
                          "
                          "
                          Thema2
                          Frage 6
                          radios
                          u.s.w

                          Kommentar

                          Lädt...
                          X