Fragebogen mit 4 Kategorien

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

  • Fragebogen mit 4 Kategorien

    Ich muss einen Fragebogen mit 80 Fragen zusammenstellen, der in 4 Kategorien ausgewertet werden soll.

    Das HTML geht soweit, aber nicht das php...

    Eine HTML-Linie als Bsp:

    Checktest 1<br>
    <input type="checkbox" name="checkb[]" value="1">

    was für Namen muss ich bei "name=" eingeben und wie kann ich die 4 Kategorien totaliesierend auswerten, d.h. wieviel angeklickte Checkboxes pro Kategorie (und etvl. welche am meisten "Häkchen" - mit evtl. Unterschiede zur 2.-meisten Kategorie - hat...

    Wer kann mir weiterhelfen...

    Ist DRINGEND, habe den ganzen Tag erfolglos experimentiert :-((((

    Vielen Dank im voraus,

    André

  • #2
    wenn du alles nur checkb[] nennst auf einer seite hast du ein sehr großes array, wo nur einser drin sein, wenn gecheckt ist.

    jetzt könntest du der reihenfolge deiner checkboxen entsprechend sagen, die erste 1 ist von der ersten checkbox, die zweite 1 von der 2. usw.

    was ist aber, wenn eine CB nicht gewählt wurde. dann wird auch keine 1 übergeben, du hast eine lücke, weisst aber nicht wo.

    ich würde dir empfehlen innerhalb der [] klammern noch einen namen zu verwenden. dieser ist eindeutig und es ist egal, ob der user eine checkbox mittendrin nicht gewählt hat.

    du hast allerdings das problem, wenn deine 'userumfrage' über vier seiten geht, auch das komplette array 1:1 mitzugeben. arrays kann man ja bekanntlich nicht mittels hidden-field weiterreichen. du musst also im form der folgenden seiten immer alle daten der davor liegenden dateien einzeln darstellen. dazu musst du das/die array(s) zerlegen und einzeln als hidden angeben.

    anderer vorschlag sind sessions. hier kannst du die daten zwischenspeichern und auf der letzten seite wieder verwenden.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Herzlichen Dank für deine schnelle Antwort!

      Nun, ich habe mich da zum ersten Mal mit Programmieren versucht, und ehrlich gesagt, es hat mich über ca. 8 Stunden fast in den Wahnsinn getrieben...

      Zuerst :-(((( --> doch dann habe ich es geschafft, vielleicht nicht optimal, aber immerhin :-))

      Wenn's dich interessiert, der Testlink ist für einige Tage:

      http://www.gauer.net/dating/test/quest_d.php

      Nochmals lieben Dank und schönen Sonntag,

      André

      Kommentar


      • #4
        ich habe mit das mal angesehen. irgendwie komme ich immer wieder nach 'senden' auf die gleiche seite. du hast doch geschrieben , dass es vier seiten sein müssten.

        davon abgesehen habe ich mir deinen html.code mal angesehen.
        hier kannst du natürlich noch nachbessern.....

        Code:
        <!-- bisher -->
        <input type="checkbox" name="d1" value="1">
        <input type="checkbox" name="d2" value="1">
        
        <!-- besser -->
        <input type="checkbox" name="d[1]" value="1">
        <input type="checkbox" name="d[2]" value="1">
        somit hättest du ein ARRAY mit den indizes 1 und 2. gleiches kannst du auch mit deinen anderen VARs machen. z usw.

        anzusprechen sind diese dann nicht mehr als $d1 oder $d2 in deinem script, sondern mit $d[1] oder $d[2] .

        du hast hier quasi nur EINE VAR nachem $d, die ein array ist, und alle daten zum punkt 'd' beinhaltet.
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          Original geschrieben von Abraxax
          ich habe mit das mal angesehen. irgendwie komme ich immer wieder nach 'senden' auf die gleiche seite. du hast doch geschrieben , dass es vier seiten sein müssten.

          a) Ja, es stimmt, du kommst immer wieder auf diese Seite, aber unter "Ergebnis" findest du nach dem Senden die Auswertung, die nach bisherigen Tests stimmen sollte....

          b) Missverständis :-) - Es müssen nicht 4 Seiten, sondern 4 Typen (quasie Vatiablen sein...



          somit hättest du ein ARRAY mit den indizes 1 und 2. gleiches kannst du auch mit deinen anderen VARs machen. z usw.

          anzusprechen sind diese dann nicht mehr als $d1 oder $d2 in deinem script, sondern mit $d[1] oder $d[2] .

          du hast hier quasi nur EINE VAR nachem $d, die ein array ist, und alle daten zum punkt 'd' beinhaltet.
          Danke für diese Erläuterungen. Diese Dinge habe ich stundenlange versucht, aber als Laie und Autodidact einfach nicht auf die Reihe gekriegt, welche Anweisungen/Formeln ich dann anweisen muss, damit das Resultat am Schluss stimmt...

          Wäre sicher bereit den Fragebogen zu ändern, resp. zu verbessern und verschönern (z.B. mit einer Extra-Ergebnisseite! - Da ich im Augenblick wie gesagt v.a. die Formeln für das Auswerten z.B. von 4 Arrays nicht kapiere, lass' ich's mal so... Was meinst du -> Is' es denn so schlimm jezt? (Ich bin immerhin glücklich, dass ich's so weit geschafft habe.)

          Herzlichen Dank für die Super-Unterstützung,

          André

          Kommentar


          • #6
            das ergebnis am ende der seite habe ich gesehen, hatte aber gedacht, dass es sich auf den folgenden seiten weiterhin verändert....
            ok. dann war das mit den 4 seiten vielleicht ein missverständnis.

            Original geschrieben von andre58
            Wäre sicher bereit den Fragebogen zu ändern, resp. zu verbessern und verschönern (z.B. mit einer Extra-Ergebnisseite! - Da ich im Augenblick wie gesagt v.a. die Formeln für das Auswerten z.B. von 4 Arrays nicht kapiere, lass' ich's mal so... Was meinst du -> Is' es denn so schlimm jezt? (Ich bin immerhin glücklich, dass ich's so weit geschafft habe.)
            dass es klappt ist auch die hauptsache. wenn du natürlich nur eine seite hast, brauchst du auch natürlich nicht alles in array packen. das macht dann nicht wirklich viel sinn.

            wenn du es dennoch machen würdest/willst.... musst du nur im die zahl nach dem buchstaben das [] drumrum machen.

            in deinen brechnungen natürlich auch.

            PHP-Code:
            // beispiel .....
            echo $d[1] - $d[2]; 
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar

            Lädt...
            X