Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] value wert aus einem option einem link übergeben

Einklappen

Neue Werbung 2019

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

  • [Erledigt] value wert aus einem option einem link übergeben

    hallo,

    man soll im browser einen mitarbeiternamen auswählen können in einem select feld.
    PHP-Code:
    // Benutzerdaten abfragen
    $user mysql_query("SELECT id, vorname, nachname FROM user");
    if(!isset(
    $_GET['benutzer_id']))
    {
    echo 
    'Bitte <b>deinen</b> Namen auswählen: 
    <select name="id_benutzer" size="1">
    <option value="-----">-----</option>'
    ;
    while(
    $benutzer mysql_fetch_array($user))
    {
    echo 
    '<option value="'.$benutzer['id'].'">'.$benutzer['vorname'].' '.$benutzer['nachname'].'</option>';

    danach soll die "$benutzer['id']" dem nachfolgendem link übergeben werden:

    PHP-Code:
    echo '
    </selected>
    <form name="namen" acion="" method="post">
    <input type="submit" name="auswaehlen" value="Auswählen" onclick="window.location.href=\'http://.../verteilung_namen.php?benutzer_id='
    .$_POST['id'].'\'">
    </form>'
    ;

    mit $_POST funktioniert das nicht. was muss ich ändern?

    marcel

  • #2
    Hi.

    Mach doch um deine Select Geschichte ein Form Tag und gib als action Attribut die aufzurufende Seite an.

    Wolf29

    Kommentar


    • #3
      ach ja stimmt, genau.

      hab ich gemacht. aber ich weiß trotzdem nicht, wie ich den value wert von dem ausgewählten namen in den link übergebe.

      PHP-Code:
      echo 'Bitte <b>deinen</b> Namen auswählen:
      <form name="namen" action="verteilung_namen.php?benutzer_id='
      .$_POST['id'].'" method="post">
      <input type="hidden" name="id" value="'
      .$benutzer['id'].'">
      <select name="id_benutzer" size="1">
      <option value="-----">-----</option>'
      ;
      while(
      $benutzer mysql_fetch_array($user))
      {
      echo 
      '<option value="'.$benutzer['id'].'">'.$benutzer['vorname'].' '.$benutzer['nachname'].'</option>';

      Kommentar


      • #4
        Zitat von Dintar1989 Beitrag anzeigen
        mit $_POST funktioniert das nicht. was muss ich ändern?
        Deine Strategie - sowohl beim Problembeschreiben, als auch beim Fehlersuchen.

        "Funzt nich" ist keine brauchbare Problembeschreibung.

        Kommentar


        • #5
          wenn du werte per link übergeben willst, dann nimm get und nicht post.

          Kommentar


          • #6
            Musst du gar nicht! Du hast in deiner aufgerufenen PHP Datei dann mit $_PHP[NamedeinerSelectBox] Zugriff auf den gewählten Wert. Schau mal bitte
            hier:

            Formulare und PHP
            http://www.selfphp.de/praxisbuch/pra...roup=32&page=2

            Dir fehlt einiges an Basiswissen noch - dafür ist der link gut.

            Wolf29

            Kommentar


            • #7
              get ist doch nur um einen wert einer url adresse rauszunehmen. aber ich muss erst mal den wert da reinschreiben in eine adresse.

              Kommentar


              • #8
                Nein. Lies Dir bitte mal meine Links durch.

                GET und POST

                Wolf29

                Kommentar


                • #9
                  Zitat von Dintar1989 Beitrag anzeigen
                  aber ich muss erst mal den wert da reinschreiben in eine adresse.
                  Was dabei dein Problem ist, hast du aber immer noch nicht nachvollziehbar beschrieben.

                  Kommentar


                  • #10
                    Ganz einfaches Beispiel:

                    PHP-Code:
                    <?php

                    //seite1.php
                    <form action="seite2.php" method="POST">
                    <
                    input type="text" name="meintext"><br />
                    <
                    input type="submit" name="submit" value="Senden">
                    </
                    form>

                    //seite2.php
                    <?php
                    if (isset($_POST["meintext"])){
                     echo 
                    "Ausgabe: ".$_POST["meintext"];
                    }else{
                     echo 
                    "Kein Wert übbermittelt";
                    }
                    ?>

                    ?>
                    Verständlich?

                    Wolf29

                    Kommentar


                    • #11
                      ja, das ist verständlich.

                      jetzt hab ich das so gemacht:

                      PHP-Code:
                      <form name="namen" action="verteilung_namen.php?benutzer_id='.$_GET['id_benutzer'].'" method="get">
                      <
                      select name="id_benutzer" size="1"
                      linkadresse: http://.../verteilung_namen.php?id_b...en=Ausw%E4hlen

                      PHP-Code:
                      echo '
                      </selected>
                      <input type="submit" name="auswaehlen" value="Auswählen">
                      </form>'

                      Kommentar


                      • #12
                        Ähm, bei action muss aber auch keine ?benutzer_id... hinter. Das zeigt mir nur, dass Du die links noch nicht durchgelesen hast! Zudem würde ich dir raten (soweit es geht) Html und PHP Code zu trennen. Hier nochmal was zu GET:

                        PHP $_GET Function

                        Wolf29

                        Bsp.:

                        PHP-Code:
                        //seite1
                        <form name="namen" action="verteilung_namen.php" method="get">
                        <select name="id_benutzer" size="1">  
                        <option value="...">...</option>
                        <!-- usw. -->
                        </select>
                        <input type="submit" name="submit" value="Abschicken">
                        </form>

                        //verteilung_namen.php
                        <?php
                        if (isset($_GET['id_benutzer'])){
                         echo 
                        "Ausgabe: ".$_GET['id_benutzer'];
                        }
                        ?>

                        Kommentar


                        • #13
                          danke, funktioniert jetzt, nachdem ich ?benutzer_id... das weg gemacht habe.

                          aber wie kann ich die beiden werte des submit buttons "&auswaehlen=Ausw%E4hlen" wegmachen?

                          Kommentar


                          • #14
                            Wenn Du Dir die Links durchlesen würdest, wüßtest du, warum die da sind! Dann würdest Du auch verstehen, warum man normalerweise POST statt GET nimmt!

                            Wolf29

                            Kommentar

                            Lädt...
                            X