"abhängige Listen"-Script funzt nicht

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

  • "abhängige Listen"-Script funzt nicht

    Hallo!

    Ich bin absoluter Newbie in Php.

    Jetzt hab ich mal versucht das Tutorial "abhängige Listen" bei mir auf dem rechner auszuprobieren.

    Ich habe Xampp komplett installiert.(mit Datenbank, Ftp, Smpt, etc.)

    Die Verbindung zur Datenbank läuft... zumindest bekomme ich keine Fehlermeldung... aber das Script liefert keine Ergebnisse.

    Das erste Auswahlfeld bleibt leer

    PHP-Code:
    <?php
    mysql_connect
    ("localhost","root","")or die("Keine Verbindung moeglich");
     
    // "Adresse (meist Localhost)","Benutzername","Kennwort"
    mysql_select_db("testform")or die("Die Datenbank existiert nicht");
     
    //"Name der Datenbank"
    ?>
    <html>
    <head>
    <title>Test der Formularfunktion</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script type="text/javascript">
    <!--
    <?php
    // abhängiges Kombifeld erzeugen
        
    $rs=mysql_query("select * from tbl_artikel;");
        
    $rows=mysql_num_rows($rs);
        echo 
    "\tvar liste2=new Array($rows)\n"
        
    "\tfor(var i=0;i<liste2.length;i++)\n"
        
    "\t\tliste2[i]=new Array(2);\n";
        
    $n=0;
        while(
    $zeile=mysql_fetch_assoc($rs)) {
            echo 
    "\tliste2[$n][0]=".$zeile['art_id'].";\n"
            
    "\tliste2[$n][1]='".$zeile['art_bez']."';\n"
            
    "\tliste2[$n][2]=".$zeile['art_grp'].";\n";
            
    $n++;
        }
    ?>

    function update_drp2() {
        var x=document.frm_auswahl.drp2.length;
        for(var n=0; n<x; n++)
            document.frm_auswahl.drp2.options[0]=null;
        for(n=0; n<liste2.length; n++) {
            if(liste2[n][2]==document.frm_auswahl.drp1.value) {
                var NeuerEintrag=new Option(liste2[n][1], liste2[n][0]);
                document.frm_auswhal.drp2.options[document.frm_auswahl.drp2.length]=NeuerEintrag;
            }
        }
    }
    -->
    </script>

    </head>

    <body>

    <form name="frm_auswahl">
        <select name="drp1" size="1" onChange="update_drp2()">
    <?php
            $rs
    =mysql_query("select * from tbl_art_gruppe");
            while(
    $zeile=mysql_fetch_assoc($rs)) {
                echo 
    "<option value=\"".$zeile['art_grp_id']
                . 
    "\">".$zeile['art_gruppe']."</option>\n";
            }
        
    ?>
        </select>
        
        <select name="drp2" size="1">
            <option>Start</option>
        </select>
    </form>
    <script type="text/javascript">
    <!--
        update_drp2()
    -->
    </script>


    </body>
    </html>
    Hat einer einen Tipp?

    Danke Euer Andyman

  • #2
    testausgaben?

    mysql_error()?

    Kommentar


    • #3
      Ich hab mysql_error() an verschiedenen Stellen eingefügt und getestet. Ich bekomme aber keine Meldung.

      Die Felder bleiben einfach leer.

      Könnte der Fehler im Head liegen?

      PHP-Code:
      <script type="text/javascript">
      <!--
      <?php
      // abhängiges Kombifeld erzeugen
          
      $rs=mysql_query("select * from tbl_artikel")or die (mysql_error());;
          
      $rows=mysql_num_rows($rs);
          echo 
      "\tvar liste2=new Array($rows)\n"
          
      "\tfor(var i=0;i<liste2.length;i++)\n"
          
      "\t\tliste2[i]=new Array(2);\n";
          
      $n=0;
          while(
      $zeile=mysql_fetch_assoc($rs)) {
              echo 
      "\tliste2[$n][0]=".$zeile['art_id'].";\n"
              
      "\tliste2[$n][1]='".$zeile['art_bez']."';\n"
              
      "\tliste2[$n][2]=".$zeile['art_grp'].";\n";
              
      $n++;
          }
      ?>

      function update_drp2() {
          var x=document.frm_auswahl.drp2.length;
          for(var n=0; n<x; n++)
              document.frm_auswahl.drp2.options[0]=null;
          for(n=0; n<liste2.length; n++) {
              if(liste2[n][2]==document.frm_auswahl.drp1.value) {
                  var NeuerEintrag=new Option(liste2[n][1], liste2[n][0]);
                  document.frm_auswhal.drp2.options[document.frm_auswahl.drp2.length]=NeuerEintrag;
              }
          }
      }
      -->
      </script>
      Nach der <script> anweisung wird beim Dreamweaver das <?php nämlich nicht mehr farblich hervorgehoben....

      Gruß Andreas
      Zuletzt geändert von andyman032; 17.01.2005, 15:39.

      Kommentar


      • #4
        Original geschrieben von andyman032
        Nach der <script> anweisung wird beim Dreamweaver das <?php nämlich nicht mehr farblich hervorgehoben....
        who the f*** is dreamweaver ...?
        sorry, aber wenn das ding mit korrektem syntaxhighlighting überfordert ist, hau's in die tonne.


        wie sieht denn der erzeugte (javascript-)quellcode aus?
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          So:
          Code:
          <html>
          <head>
          <title>Test der Formularfunktion</title>
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
          
          
          			<script language='javascript' src='http://127.0.0.1:3004/js.cgi?caw&r=24272'></script>
          
          <script type="text/javascript">
          	var liste2=new Array(4)
          	for(var i=0;i<liste2.length;i++)
          		liste2[i]=new Array(2);
          	liste2[0][0]=1;
          	liste2[0][1]='17 Zoll';
          	liste2[0][2]=1;
          	liste2[1][0]=2;
          	liste2[1][1]='19 Zoll';
          	liste2[1][2]=1;
          	liste2[2][0]=3;
          	liste2[2][1]='160 GB';
          	liste2[2][2]=2;
          	liste2[3][0]=4;
          	liste2[3][1]='200 GB';
          	liste2[3][2]=2;
          
          function update_drp2() {
              var x=document.frm_auswahl.drp2.length;
              for(var n=0; n<x; n++)
                  document.frm_auswahl.drp2.options[0]=null;
              for(n=0; n<liste2.length; n++) {
                  if(liste2[n][2]==document.frm_auswahl.drp1.value) {
                      var NeuerEintrag=new Option(liste2[n][1], liste2[n][0]);
                      document.frm_auswhal.drp2.options[document.frm_auswahl.drp2.length]=NeuerEintrag;
                  }
              }
          }
          </script>
          
          </head>
          
          <body>
          
          <form name="frm_auswahl">
              <select name="drp1" size="1" onChange="update_drp2()">
          <br />
          <b>Warning</b>:  mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in <b>E:\XAMPP\xampp\htdocs\test.php</b> on line <b>49</b><br />
              </select>
          	
          	<select name="drp2" size="1">
                  <option>Start</option>
              </select>
          </form>
          <script type="text/javascript">
          <!--
              update_drp2()
          -->
          </script>
          
          
          </body>
          </html>
          War noch garnicht auf die Idee gekommen, den Quelltext auszuwerten :-( Blöde Newbies ;-)

          Die Meldung, die im Quelltext steht, wird aber nicht angezeigt ???

          Kommentar


          • #6
            Original geschrieben von andyman032
            War noch garnicht auf die Idee gekommen, den Quelltext auszuwerten :-( Blöde Newbies ;-)
            word ...


            was jetzt zu tun ist, ist aber hoffentlich glasklar ...?

            Die Meldung, die im Quelltext steht, wird aber nicht angezeigt ???
            verständlich, innerhalb von <select> darf ja auch ausschließlich <option> vorkommen - <br> und reinen text hier zu ignorieren, könnte man also durchaus als korrekt bezeichnen.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              hast du das mysql_error nach mysql_query noch drin?
              überall?
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                was jetzt zu tun ist, ist aber hoffentlich glasklar ...?
                Nope... SPrich mal zu mir als wäre ich ne Blondine... :-)

                hab den mysql_error() mal wieder rausgenommen, da er keine Ergebnisse geliefert hat...
                Zuletzt geändert von andyman032; 17.01.2005, 16:23.

                Kommentar


                • #9
                  Schreibfehler

                  In der Funktion "function update_drp2()" hat sich ein Schreibfehler eingeschlichen:

                  In Zeile 8 der Funktion steht "..frm_auswhal..." statt "....frm_auswahl....."

                  Kommentar


                  • #10
                    Original geschrieben von andyman032
                    hab den mysql_error() mal wieder rausgenommen, da er keine Ergebnisse geliefert hat...
                    auch nicht in generierten javascript-(quell)code?
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      Kleiner Schreibfehler, null Wirkung beim Ergebnis....(nach korrektur)

                      Möglich, dass Xampp net so läuft wie ich will? Ein anderes Projekt läuft aber.... mmmmmmmmmh

                      Kommentar


                      • #12
                        alle raus...

                        Kommentar


                        • #13
                          Original geschrieben von andyman032
                          alle raus...
                          wie meinen?

                          was macht die antwort auf meine frage?
                          Ich denke, also bin ich. - Einige sind trotzdem...

                          Kommentar


                          • #14
                            was macht die antwort auf meine frage?
                            Es hat sich NICHTS geändert. Es werden keine Fehler ausgegeben oder sonstwas... alle mysql_error sind raus
                            Zuletzt geändert von andyman032; 17.01.2005, 16:48.

                            Kommentar


                            • #15
                              Original geschrieben von andyman032
                              Es hat sich NICHTS geändert. Es werden sonst keine Fehler ausgegeben oder sonstwas...
                              online-beispiel, mit zugehörigem code?
                              I don't believe in rebirth. Actually, I never did in my whole lives.

                              Kommentar

                              Lädt...
                              X