Ankündigung

Einklappen
Keine Ankündigung bisher.

<select>box und <input> in Abhängigkeit

Einklappen

Neue Werbung 2019

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

  • <select>box und <input> in Abhängigkeit

    Hey Leute,

    ich bin im Bereich PHP noch Anfänger und hab mir etwas vorgenommen (was glaub ich gar nicht mal so schwer ist), wofür mein Knowhow aber leider nicht reicht:

    Datenbanktabelle: id | name | alter

    Ich möchte aus einer MYSQL-Datenbank Daten (name) in eine <select>-Box laden und wenn man einen Punkt aus der <select>-Box auswählt, soll ein dazugehöriger Wert (alter) in <imput readonly> ausgegeben werden.

    den <select>-Bereich hab ich soweit schon fertig (funktioniert):

    PHP-Code:

    $quer
    =mysql_query("SELECT name, alter 
                  FROM tabelle1"
    );

    echo 
    "<select name='name1'><option value='Bitte Auswählen'>Bitte Auswählen</option>";
    while(
    $row mysql_fetch_array($quer)) 
    {echo 
    "<option selected value='$row[name]'>$row[name]</option>";};
    echo 
    "</select>"
    Nur wie bring ich jetzt einen <input>-Bereich (alter) in Abhängigkeit daneben?

    Ich hoffe ich habs einigermaßen gut erklärt und ihr könnt mir einen Denkanstoß geben!

    Danke im voraus!
    Gruß,
    Max


  • #2
    Um das Rüberzuschaufeln in ein input wirst du dich wohl mit javascript bemühen müssen...

    SELFHTML: JavaScript / Sprachelemente / Event-Handler

    Das da:
    PHP-Code:
    echo "<option selected value='$row[name]'>$row[name]</option>"
    Lieber so machen:
    PHP-Code:
    echo "<option selected value='".$row['name']."'>".$row['name']."</option>"
    Signatur:
    PHP-Code:
    $s '0048656c6c6f20576f726c64';
    while(
    $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

    Kommentar


    • #3
      danke für die schnelle Antwort!
      also ich komme echt nicht um javascript rum? ^^

      hmm.. danke für den verbesserungsvorschlag! Werde es gleich mal probieren einzubauen!

      Kommentar


      • #4
        Zitat von Spacy Beitrag anzeigen
        also ich komme echt nicht um javascript rum? ^^
        Doch, natürlich kommst du - dann musst du aber das Formular mit der Namensauswahl erst an den Server abschicken.
        Dann kann dieser das Alter in der DB nachschlagen, und in seiner Antwort ausgeben.

        Kommentar


        • #5
          Doch, natürlich kommst du - dann musst du aber das Formular mit der Namensauswahl erst an den Server abschicken.
          Dann kann dieser das Alter in der DB nachschlagen, und in seiner Antwort ausgeben.
          Muss man dadurch die Seite aktualisieren? Mir fällt grad auf, dass ich das oben nicht dazu geschrieben habe, aber ich möchte dieses PHP-script danach (mit verschiedenen variablen und werten) duplizieren!

          Hab schonmal etwas in die Richtung mit PHP und Javascript zusammen bekommen, aber die page wurde halt immer wieder aktualisiert!

          Kann es sein, dass ich dann AJAX brauche?

          Kommentar


          • #6
            Zitat von Spacy Beitrag anzeigen
            Muss man dadurch die Seite aktualisieren?
            Ja muss man, da du eine ganz neue Anfrage an den Server schickst
            Hab schonmal etwas in die Richtung mit PHP und Javascript zusammen bekommen, aber die page wurde halt immer wieder aktualisiert!
            Kann es sein, dass ich dann AJAX brauche?
            Naja also es gibt eigentlich 3 Grundideen dein Problem zu realisieren:
            1. Formular abschicken -> Seite nue laden -> PHP läd das Alter aus der Tabelle
            2. Alter von den ganzen Daten (die ganze Tabelle) auslesen und dann mit JavaScript verarbeiten (würde ich nciht machen, da die Serverabfrage dann lange dauert, da jeder Wert aus der DB gelesen werden muss)
            3. EIne AJAX Abfrage machen (Meiner Meinung nach die Beste Lösung), die dann wenn man einen Wert Ausgewählt hat sie das dazugehörige alter vom Server hol .D

            Also entweder musst du dich mit Idee 1 befridigt geben oder du läst dir die Sache von jemanden machen ....

            Kommentar


            • #7
              1. Formular abschicken -> Seite nue laden -> PHP läd das Alter aus der Tabelle
              2. Alter von den ganzen Daten (die ganze Tabelle) auslesen und dann mit JavaScript verarbeiten (würde ich nciht machen, da die Serverabfrage dann lange dauert, da jeder Wert aus der DB gelesen werden muss)
              3. EIne AJAX Abfrage machen (Meiner Meinung nach die Beste Lösung), die dann wenn man einen Wert Ausgewählt hat sie das dazugehörige alter vom Server hol .D
              Da sich das selektierte wieder auflöst, wenn ich die seite neu laden lasse, funktioniert Idee 1 leider nicht...(!?)
              Wenn es nur die 3 möglichkeiten gibt, dann ist punkt 3 wohl echt die Lösung.. ^^

              ...oder du läst dir die Sache von jemanden machen ....
              oder ich muss wohl gleich nachdem ich nun auf den PHP-Zug gesprungen bin, umsteigen auf AJAX und mich damit erstmal ein wenig beschäftigen.. :/
              (Oder ist AJAX sau schwer? Weiß bisher nur, dass es irgendwie mit Javascript zusammen hängt..)

              Auf jeden Fall danke nochmal!

              Kommentar


              • #8
                Zitat von Spacy Beitrag anzeigen
                Da sich das selektierte wieder auflöst, wenn ich die seite neu laden lasse
                Was auch immer du mit dieser seltsamen Formulierung ausdrücken willst - es ist nicht wahr.

                Wenn die Daten, die aktuell angezeigt werden, nach irgendwelchen Kriterien gefiltert wurden - dann musst du diese Kriterien nur auch mit an die Folgeseite übergeben, dann können sie dort genauso wieder angewandt werden.
                Stichwort: Affenformular

                oder ich muss wohl gleich nachdem ich nun auf den PHP-Zug gesprungen bin, umsteigen auf AJAX
                Das ist kein „Umstieg“, weil du PHP nachwie vor brauchen wirst.
                Es ist lediglich eine Erweiterung - der Art, wie der Client die Daten vom Server holt und auswertet.

                Kommentar


                • #9
                  Stichwort: Affenformular
                  Dankeschön für das Stichwort!

                  Also soweit ich das mit dem Affenformular verstanden habe, hab ich damit genau den Vorteil wie bei AJAX mit "Kein Neuladen aufgebauter Seiten" (Als Vorteil bei Wikipedia -> Ajax ausgeschrieben)

                  Damit könnte ich doch sogar mehrere <select>-boxen mit daten aus einer mysql datenbank verknüpfen und duplizieren? Oder?
                  Bzw. Mein Problem lösen, welches ich ganz oben gepostet habe?

                  Das ist kein „Umstieg“, weil du PHP nachwie vor brauchen wirst.
                  Es ist lediglich eine Erweiterung - der Art, wie der Client die Daten vom Server holt und auswertet.
                  hmmm... hast recht! ^^ Es wird nur alles mehr..

                  Kommentar


                  • #10
                    hab ich damit genau den Vorteil wie bei AJAX mit "Kein Neuladen aufgebauter Seiten"
                    Nein. Wie im Artikel (Affenformular (Standardverfahren) - PHP.de Wiki) zu lesen, arbeitet das Affenform mit Requests (dafür aber unabhängig von Javascript).
                    --

                    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                    --

                    Kommentar


                    • #11
                      Nein. Wie im Artikel (Affenformular (Standardverfahren) - PHP.de Wiki) zu lesen, arbeitet das Affenform mit Requests (dafür aber unabhängig von Javascript).
                      Heißt: Ich brauch zusätzlich AJAX... x)

                      Kann mir vielleicht jemand eine gute Lektüre empfehlen? (evtl mit 'AJAX und PHP'?)

                      Danke nochmal an euch alle!

                      Kommentar


                      • #12
                        Heißt: Ich brauch zusätzlich AJAX... x)
                        Nein, siehe #6 und #8.


                        http://www.php.de/php-einsteiger/489...nsammlung.html
                        --

                        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                        --

                        Kommentar

                        Lädt...
                        X