Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Select- Feld mit PHP-Variable befüllen

Einklappen

Neue Werbung 2019

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

  • ST500
    hat ein Thema erstellt [Erledigt] Select- Feld mit PHP-Variable befüllen.

    [Erledigt] Select- Feld mit PHP-Variable befüllen

    Servus miteinander,

    wie übergebe ich Werte aus MySQL an Ajax? Ich meine so, dass diese im Select-Feld als Option 0 bis Option... automatisch befüllt wird? Bspw. Kunde 1, Kunde 2 .....

    Gesendet von meinem GT-I9300 mit Tapatalk

  • ST500
    antwortet
    Super!!! Vielen Dank!!!

    Gesendet von meinem GT-I9300 mit Tapatalk

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    Hier mal ein Minimalbeispiel, wie man mit jquery ein onchange abfängt und die Selection abfragt.

    http://jsfiddle.net/zq0j0bw8/3/

    Einen Kommentar schreiben:


  • ST500
    antwortet
    Ich probiere noch was und melde mich.

    Gesendet von meinem GT-I9300 mit Tapatalk

    Einen Kommentar schreiben:


  • ST500
    antwortet
    Die Personalnummer kommt aus der Selectbox, die mittels PHP gefüllt wird. Die Funktion anfordern(personalnumner) habe ich oben definiert. Im Debugmodus erhalte ich die Fehlerneldung RessourceError: anfordern nicht definiert.
    Ich würde es gerne mit jquery machen, weiss aber nicht wie. Ich habe mir ein Beispiel aus dem Internet kopiert. Das funktioniert aber nur, wenn die Personalnummern nicht in einer Selectbox, sondern als Links untereinandern aufgelistet werden. Und ich kann es nicht für eine Selectbox umschreiben.

    Gesendet von meinem GT-I9300 mit Tapatalk

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    Code:
    onchange="anfordern(personalnummer)"
    Woher kommt diese "personalnummer"?
    Fang mit dem Debuggen an, für Javascript hat inzwischen jeder Browser eine Developerkonsole.

    Und wenn du schon jquery einbindest, warum verwendest du es dann nicht auch?

    Einen Kommentar schreiben:


  • ST500
    antwortet
    So,
    jetzt bin ich wieder da:

    Ich habe in HTML eine Selectbox erstellt, die ich mit PHP fülle. Mittels dieser Selectbox soll eine Personalnummer ausgewählt werden. Als Ergebnis sollen das Geburtsdatum und der Gehalt eine Zeile weiter unten angezeigt werden. Leider passiert hier nichts (Ich habe absichtlich die Methode GET ausgewählt, damit ich sehen kann, ob irgendwelche Variablen mitgeschickt werden).

    Zunächst die Datei TEST.php, mit der ich die Personalnummer auswähle:
    Code:
    <html>
    <head>
        <script type="text/javascript" src="jquery.js">
    
    function anfordern(personalnummer)
    {
       var req = new XMLHttpRequest();
       req.open("GET", "ajax_db_b.php?pnr=" + personalnummer, true);
       req.setRequestHeader("Content-Type",
          "application/x-www-form-urlencoded");
       req.onreadystatechange = auswerten;
       req.send();
    }
    
    function auswerten(e)
    {
       if(e.target.readyState == 4 && e.target.status == 200)
       {
          var antwort = e.target.responseXML;
          document.getElementById("idGehalt").firstChild.nodeValue =
             antwort.getElementsByTagName("gh")[0].
                firstChild.nodeValue;
          document.getElementById("idGeburtstag").firstChild.nodeValue =
             antwort.getElementsByTagName("gb")[0].
                firstChild.nodeValue;
       }
    }
    </script>
    </head>
    <body>
    <p>
    <form id="pnr" name="pnr">
     <label>
       Personalnummer w&auml;hlen:&nbsp;
       <select id="pnr" name="pnr" onchange="anfordern(personalnummer)">
        <?php
         $con = mysqli_connect("", "root");
         mysqli_select_db($con, "firma");
         $res = mysqli_query($con,
         "select personalnummer from personen order by personalnummer");
          while ($dsatz = mysqli_fetch_assoc($res)){
           echo"<option>".$dsatz['personalnummer']."</option>";
          }
       mysqli_close($con);
       ?>
       </select>
     </label>
    </form>
    </p>
    <p><span id="idGehalt">&nbsp;</span>
    <span id="idGeburtstag">&nbsp;</span></p>
    </body>
    </html>
    Und hier die "antwortende" Datei ajax_db_b.php:
    Code:
    <?php
    header("Content-Type: text/xml; charset=utf-8");
    
    $con = mysqli_connect("", "root");
    mysqli_select_db($con, "firma");
    $res = mysqli_query($con,
      "select * from personen where personalnummer = " . $_GET["pnr"]);
    $dsatz = mysqli_fetch_assoc($res);
    
    echo "<?xml version='1.0' encoding='utf-8'?>\n";
    echo "<daten>\n";
    echo " <gh>" . $dsatz["gehalt"] . "</gh>\n";
    echo " <gb>" . $dsatz["geburtstag"] . "</gb>\n";
    echo "</daten>\n";
    ?>
    Was und wo mache ich einen oder mehrere Fehler?

    Gruß

    ST500

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    zwischen MySQL und AJAX sitzt ... *trommelwirbel* PHP

    - mit PHP macht man SQL Abfragen
    - mit PHP erzeugt man HTML und Javascript (AJAX)
    - AJAX fragt ein PHP Script nach Daten (aus einer MySQL Datenbank z.B.)

    Jetzt musst du das noch zusammenbringen.

    Lerne Grundlagen - hier findest du auch Links zu Tutorials...

    Einen Kommentar schreiben:


  • ST500
    antwortet
    Ein kleiner Nachtrag: fest vorgegebene Optionen kann ich auch setzen. Dazu gibt es ja auch viele Beispiele im Internet. Nun scheitere ich an der Schleife, die die Werte aus MYSQL als Optionen setzt.

    Gesendet von meinem GT-I9300 mit Tapatalk

    Einen Kommentar schreiben:


  • ST500
    antwortet
    OK, geht aber erst am Samstag, da ich erst morgen nach Hause komme.
    Erwarte aber nicht viel. Bisher schaffe ich es das Select-Feld mittels PHP zu füllen = Grundschulwissen.
    Wenn ich dann den Submit-Button ancklicke wird die Auswahl zurückgesetzt.

    Gesendet von meinem GT-I9300 mit Tapatalk

    Einen Kommentar schreiben:


  • kaminbausatz
    antwortet
    Dann zeig doch mal was Du bisher versucht hast.

    Einen Kommentar schreiben:


  • ST500
    antwortet
    Ich komme nicht weiter und verzweifle langsam. Hätte jemand ein Beispiel für mich?

    Gesendet von meinem GT-I9300 mit Tapatalk

    Einen Kommentar schreiben:


  • lottikarotti
    antwortet
    Indem du mit PHP eine entsprechende Response erzeugst.

    Einen Kommentar schreiben:

Lädt...
X