Id übergabe Dropdown Menü

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

  • Id übergabe Dropdown Menü

    Hallo zusammen ich habe mal eine Frage :

    Ich habe hier ein Dropdown Menü was sich die Daten ( Id ) aus der datenbank holt !


    nun soll beim aus wählen von einer Id sich die URL ändern in z.b.

    test.php?id=3 oder test.php?id=15

    wie mach ich das am besten ?

    hier der bisherige Code :


    PHP-Code:

    <form action='' method='post'>
    <select> 
    <?

    $sql    = "SELECT Id FROM gebäude ";
    $result = mysql_query($sql) OR die(mysql_error());
    while($row = mysql_fetch_assoc($result)) 
    {
    ?>
    <option value="<? echo $row['Id']; ?>"> <? echo $row['Id']; ?></option>
    <?
    }
    ?> 
    </select> 
    <input type="submit" name="go" Value="Go">
    </form>

  • #2
    Re: Id übergabe Dropdown Menü

    Original geschrieben von launebaer
    nun soll beim aus wählen von einer Id sich die URL ändern in z.b.
    test.php?id=3 oder test.php?id=15
    wie mach ich das am besten ?
    Indem du dem Select einen Namen und dem Formular ein Ziel gibst, und es abschickst ...?

    OffTopic:
    Wieder mal eine Frage, wo mich deucht da fehlen jemandem absolute HTML-Grundkenntnisse.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Dreamweaver stellt ein tolles Javascript zur Verfügung:

      PHP-Code:
      <script language="JavaScript" type="text/JavaScript">
      <!--
      function 
      MM_jumpMenu(targ,selObj,restore){ //v3.0
        
      eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
        if (
      restoreselObj.selectedIndex=0;
      }
      //-->
      </script
      Der eigentlich PHP-Code sollte dann so aussehen:
      PHP-Code:
      <form name="form1" method="post" action="">
        <select name="menu1" onChange="MM_jumpMenu('parent',this,0)">
              <?
              $sql    = "SELECT Id FROM gebäude ";
              $result = mysql_query($sql) OR die(mysql_error());
              while($row = mysql_fetch_assoc($result)) 
              {
              ?>
                  <option value="http://www.deineurl/index.php?id=<? echo $row['Id']; ?>"> <? echo $row['Id']; ?></option>
              <?
              }
              ?>
        </select>
      </form>
      Ich hoffe ich konnte Dir helfen

      greatz reallife

      Kommentar


      • #4
        Das konnte mir schon sehr helfen ,

        nur 2 kleine fragen habe ich da noch :

        1. im Menü springt er immer wieder auf die 1 zurück ... somit bekomme ich nie " Test.php?id=1 " ....... kann man da was machen ?

        2. man sagte mir das javascript abzuschalten ginge ... was mach ich da denn ?



        Danke schonmal für die Hilfe


        greez Launebaer

        Kommentar


        • #5
          zu punkt 1:
          erweiter deine while-schleife um ein if-statement:

          PHP-Code:
          <option value="http://www.deineurl/index.php?id=<? echo $row['Id']; ?>" 
          <?= ($row["Id"] == $_GET["id"]) ? "selected" "" ?>>
           <? echo $row['Id']; ?>
          </option>
          zu punkt 2:
          hoffe das dieser Fall nie eintreten wird - nein also im ernst, kaum einer wird javascript ausgeschaltet haben und wenn doch, hat er pech gehabt.. oder handelt es sich hierbei um eine kommerzielle seite?

          Kommentar


          • #6
            Original geschrieben von reallife
            nein also im ernst, kaum einer wird javascript ausgeschaltet haben und wenn doch, hat er pech gehabt..
            Erst empfiehlst du den Einsatz der grottigen MacroMedia-Funktionen, und jetzt redest du auch noch so einen Unfug ...
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              nein ... ist ne reine Fun sache


              und das funktioniert nun ..... DANKEEEE



              greez launebaer

              Kommentar


              • #8
                Erst empfiehlst du den Einsatz der grottigen MacroMedia-Funktionen
                Was ist denn bitte an der Funktion grottig?
                Mit Sicherheit gibt es andere Lösungswege.[list=1][*]Submit in die Form machen[*]In php auf die Post variable zurückgreifen und mit headern arbeiten.[/list=1]
                Dann hat er das Javascriptproblem umgangen.

                Kommentar


                • #9
                  Original geschrieben von reallife
                  Was ist denn bitte an der Funktion grottig?
                  Wenn du selbst das nicht merkst - dann solltest du dich mit "Ratschlägen" wohl noch ein bisschen zurückhalten, bis du dein eigenes Wissen auf einen ahlbwegs akzeptablen Stand gebracht hast.

                  Schon alleine das absolut dämliche eval darin sollte jemanden mit ein bisschen Ahnung aufmerken lassen.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar

                  Lädt...
                  X