Ankündigung

Einklappen
Keine Ankündigung bisher.

Eine JS Variable an ein php script schicken

Einklappen

Neue Werbung 2019

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

  • Eine JS Variable an ein php script schicken

    Hallo Community bin neu hier

    angemeldet habe ich mich wegen eines problems das ich schon seid 2 Tagen habe!
    Ich wähle über ein <select><option> einen Namen aus. Dieser Name wird dann in ein <p> geschrieben, damit ich auf meiner seite verdeutlichen kann, welche <option> angewählt wurde.
    nun will ich das sich daraufhin dynamisch eine tabelle läd, die ich durch eine mysql_datenbankabfrage befüllen möchte.
    PHP-Code:
    <?php
    echo '<div id="formular">';
    echo 
    '<form name="" action="?seite=firmenwagenbelegungen" method="post">';
    $result mysql_query("SELECT fz_marke, fz_modell FROM kfz_fahrzeuge ORDER BY fz_marke ASC"); 
    echo 
    '<select class="dropdown_feld" id="auto" name="firmenwagen">'
    while (
    $res mysql_fetch_assoc($result))

    $a $res["fz_marke"]." ".$res["fz_modell"]; 
    echo 
    '<option>'.$a.'</option>'

    echo 
    '</select>';
    echo 
    '</form>';
    echo 
    '</div>';
            
    ?>

    <script language="javascript">

    var sel = document.getElementById('auto');
    sel.onchange = function() {
    var show = document.getElementById('show');
    show.innerHTML = this.value;
       }
      
    </script>
    <p class="ueberschrift_2" id="show"></p>
    wie bekomme ich nun meine var namens "sel" an ein Php Script zum ausführen meiner nächsten mysql query?

    danke im vorraus!

  • #2
    Ahoi,

    schau dir mal AJAX an, einfacher wäre das mit JQuery.
    Du kannst dabei deine variable via asynchronen Post-Request an das PHP-Script übergeben.
    ------
    Grüße Manü

    Kommentar


    • #3
      hallo

      mit ajax und jquery habe ich das auch schon versucht, jedoch ist mir unklar, wie ich aus dem jquery/ajax die variable übergebe und wie ich auf die übergebene variable in meinem php script zugreifen kann?

      Kommentar


      • #4
        Die älteste der drei mysql-Erweiterungen ist veraltet (mysql_*-Funktionen, nicht die MySQL-Datenbank) und wird in den kommenden Versionen aus PHP entfernt. Aktuell wirft sie schon E_DEPRECATED-Fehler bei einer Verbindung zur Datenbank. Des Weiteren stehen dir sehr viele tolle Features von mysql mit diesen Funktionen nicht zur Verfügung! Weiterführende Links:
        Choosing an API
        Warum man mysql* generell nicht (mehr) nutzen sollte.
        Wie man von mysql* auf PDO umsteigt
        Wissenswertes zum Thema SQL-Injection

        Kommentar


        • #5
          Du kannst zB auch via JS immer bei Änderung des Feldes dein Form submitten, dann wird die Seite immer neu mit den jeweilis ergänzten Parametern aufgerufen und damit auch das Ergebnis nach jeder Änderung immer aktuell angezeigt.

          Übrigens: mysql_ Erweiterung wird bald nicht mehr funktionieren, die ist veraltet. Umsteigen auf mysqli_ oder PDO.
          http://php.net/manual/en/migration55.deprecated.php

          LG
          The string "()()" is not palindrom but the String "())(" is.

          Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
          PHP.de Wissenssammlung | Kein Support per PN

          Kommentar


          • #6
            danke für die links, sehr interessant.
            das hat mir aber leider grad nicht weitergeholfen

            Kommentar


            • #7
              wie bekomme ich nun meine var namens "sel" an ein Php Script zum ausführen meiner nächsten mysql query?
              Muss es JS sein? Warum nicht mit PHP direkt lesen?

              Du kannst zB auch via JS immer bei Änderung des Feldes dein Form submitten, dann wird die Seite immer neu mit den jeweilis ergänzten Parametern aufgerufen und damit auch das Ergebnis nach jeder Änderung immer aktuell angezeigt.
              The string "()()" is not palindrom but the String "())(" is.

              Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
              PHP.de Wissenssammlung | Kein Support per PN

              Kommentar


              • #8
                Zitat von lenny-li Beitrag anzeigen
                das hat mir aber leider grad nicht weitergeholfen
                "dynamic" "selectbox" "php" "mysql" heissen deine suchbegriffe. php kannste wohl weglassen.

                Kommentar


                • #9
                  ich habe es nicht mit php gemacht, da ich das ohne erneutem seitenaufruf machen wollte und so auch fortführen will.
                  könnte mir jemand ein beispiel geben mit ajax/jquery?

                  Kommentar


                  • #10
                    weisste wie man suchmaschinen bedient?

                    Kommentar


                    • #11
                      sehr daneben deine aussage moma

                      Kommentar


                      • #12
                        Zitat von lenny-li Beitrag anzeigen
                        sehr daneben deine aussage moma
                        tschuldigung, wollte dich nicht überfordern.
                        http://lmgtfy.com/?q=dynamic+select+box+jquery+mysql

                        Kommentar


                        • #13
                          Zitat von lenny-li Beitrag anzeigen
                          hallo

                          mit ajax und jquery habe ich das auch schon versucht, jedoch ist mir unklar, wie ich aus dem jquery/ajax die variable übergebe und wie ich auf die übergebene variable in meinem php script zugreifen kann?
                          AJAX:
                          Code:
                          $.get("ajax.php", {id: 1337}, function( data ) {
                            alert(data);
                          });
                          Siehe: http://api.jquery.com/jquery.get/

                          PHP - ajax.php:
                          PHP-Code:
                          if (isset($_GET['id'])) {
                              echo 
                          $_GET['id'];

                          It's that simple! Insofern ist momas Aussage ziemlich genau im Ziel gelandet. Denn diese sechs Zeilen Code sind kein wohlgehütetes Geheimnis sondern Google sehr wohl bekannt. Streng genommen benötigst du laut deiner Anforderung sogar nur zwei Zeilen:
                          Code:
                          $.get("ajax.php", {id: 1337}); // "wie ich aus dem jquery/ajax die variable übergebe"
                          Code:
                          $_GET['id']; // "wie ich auf die übergebene variable in meinem php script zugreifen kann"

                          Kommentar


                          • #14
                            vielen dank monolith und auch moma....
                            war gestern ein wenig gereizt, da ist mir der google spruch zu viel gewesen

                            Kommentar


                            • #15
                              so...habe jetzt die teile eingebaut

                              PHP-Code:
                              echo '<select class="dropdown_feld" id="auto" name="firmenwagen">'; 
                              while ($res = mysql_fetch_assoc($result))

                              $a = $res["fz_marke"]." ".$res["fz_modell"]; 
                              echo '<option onclick="read();" >'.$a.'</option>'; 

                              echo '</select>';
                              echo '</form>';
                              echo '</div>';
                                      
                              ?>

                              <script language="javascript">

                              var sel = document.getElementById('auto');
                              sel.onchange = function() {
                              var show = document.getElementById('show');
                              show.innerHTML = this.value;
                              }

                                function read(){
                              var fahrzeug_aus_dropdown = $('#auto').val(); 
                               $.GET('content/firmenwagen_lesen_an_kalender.php', {fahrzeugname: fahrzeug_aus_dropdown},
                                  function(data)
                                  {
                                      $('#message').val(data);
                                  }
                                  );
                                }
                                
                               
                              </script>
                              <p class="ueberschrift_2" id="show"></p>
                              <div id="message"></div>
                              <?php
                              include("content/firmenwagen_lesen_an_kalender.php");
                              ?>
                              firmenwagen_lesen_an_kalender.php :
                              PHP-Code:
                              <?php
                              if(isset($_GET['fahrzeugname']))
                              {
                                  echo 
                              'true';
                              }
                              else
                              {
                                  echo 
                              'false';
                              }
                              ?>
                              jedoch passiert nichts........ich vermute das es am pfad liegt!

                              Kommentar

                              Lädt...
                              X