Auswahl über Optionsliste und mit anschließendem Ereignis

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

  • Auswahl über Optionsliste und mit anschließendem Ereignis

    Hallo,

    ich habe ein Formular, in dem es eine Optionsliste gibt. Die Optionsliste wird mit hilfe einer Datenbankabfrage gefüllt. Jetzt möchte ich, das nach auswahl eines Wertes aus der Liste ein Wert in ein Feld in dem Formular geschrieben wird, der mit dem Ausgewählten Wert in Verbindung steht.

    mein Code sieht folgendermaßen aus:
    Ich habe den PHP- Code im html Fett gemacht, da es sonst zu unübersichtlich wurde!
    PHP-Code:
    <?php
    $query 
    "SELECT ArtikelNr, ArtikelNr2, ArtikelNr3,Name, Preis FROM tblartikel_gross";

           
    $result mysql_query($query);
           
    $i=0;
           while(
    $row[$i] = mysql_fetch_array($result))
           {
               
    $i++;
           }

           
    mysql_close();
       }
    ?>
    <form action="gross_rech2.php" name="items" method="post">
    <table width="50%" border="1" align="center">
    <tr>
    <td width="100%">
    <label>Rechnungs Nr</label>
    </td>
    <td width="100%">
    <input type="text" name="rNr" size="20" readonly />
    </td>
    </tr>
    <tr>
    <td width="100%">
    <label>LS</label>
    </td>
    <td width="100%">
    <input type="text" name="ls" size="20" />
    </td>
    </tr>
    <tr>
    <td width="100%">
    <label>Datum</label>
    </td>
    <td width="100%">
    <input type="text" name="date" size="20" />
    </td>
    </tr>
    <tr>
    <td width="100%">
    <label>Artikel-Nr.</label>
    </td>
    <td width="100%">
    <select name="ArtNr" size="1">
    <option>..</option>
    <?php
    $j=0;
    while($j<$i)
    { ?>

    <option><?=$row[$j]['ArtikelNr'] ?>-<?=$row[$j]['ArtikelNr2'] ?>-<?=$row[$j]['ArtikelNr3'] ?></option>
    <?php
    $j++;
    }
    ?>

    </select>
    </td>
    </tr>
    <tr>
    <td width="100%">
    <label>Auftrags-Nr.</label>
    </td>
    <td width="100%">
    <input type="text" name="AufNr" size="20" />
    </td>
    </tr>
    <tr>
    <td width="100%">
    <label>Menge</label>
    </td>
    <td width="100%">
    <input type="text" name="anz" size="20" />
    </td>
    </tr>
    <tr>
    <td width="100%">
    <label>Einzelpreis</label>
    </td>
    <td width="100%">
    <input type="text" name="price" size="20" value="<?=$... ?>"/>
    </td>
    </tr>
    <tr>
    <td width="100%">
    <input type="reset" name="reset" value="Reset" />
    </td>
    <td width="100%">
    <input type="submit" name="submit" value="Eintragen" />
    </td>
    </tr>
    <tr>
    <td width="100%">
    <a href="home.php" target="_parent" >Beenden</a>
    </td>
    <td width="100%">
    <a href="gen_pdf.php">Ausdruck generieren</a>
    </td>
    </tr>
    </table>

    Und nach dem man aus dem Optionsfeld ausgewählt hat, soll der Preis des gewählten Artikels in dem als FETT markierten Textfeld erscheinen.

    Jetzt ist natürlich im Vorfeld meine Frage, ist das machbar oder nicht?

    Wenn ja, wie müsste ich mein Script umbauen?

  • #2
    Also nur mit PHP funktioniert das nicht. Mit Javascript geht das schon eher, ich weiß aber nicht, ob mein Beispiel jetzt wirklich in jedem Browser funktioniert.

    Code:
    <option onclick="document.items.price.value='<?=$row[$j]['Preis'] ?>';"><?=$row[$j]['ArtikelNr'] ?>-<?=$row[$j]['ArtikelNr2'] ?>-<?=$row[$j]['ArtikelNr3'] ?></option>
    mfg oko

    Kommentar


    • #3
      Mit PHP

      Es würde auch mit php funktionieren!

      Du musst eine Form erstellen

      <form action="selberdateiname.php" method="post" name="f">
      <select name="ArtNr" size="1" onchange="document.f.submit();">
      <option>..</option>
      <?php
      $j=0;
      while($j<$i)
      { ?>
      <option><?=$row[$j]['ArtikelNr'] ?>-<?=$row[$j]['ArtikelNr2'] ?>-<?=$row[$j]['ArtikelNr3'] ?></option>
      <?php
      $j++;
      }
      ?>
      </select>
      </form>
      .
      .
      .
      <input type="text" name="price" size="20" value="<?=$ArtNr ?>"/>

      Nur musst du dir dann überlegen wie du die werte auf die Seite
      <form action="gross_rech2.php" name="items" method="post">
      bekommst denn due kannst nicht zwei form ineinander haben!
      Am besten funktioniert das mit Hidden feldern

      Kommentar


      • #4
        @ oko...
        also im Opera funktioniert das so, nur im IE irgendwie nicht, aber ist für meine bedüfnisse auch nicht schlimm.

        Ich bedanke mich für die schnelle Hilfe!

        Kommentar

        Lädt...
        X