Absende-Buttons für den Aufruf einer PHP-Funktion.

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

  • Absende-Buttons für den Aufruf einer PHP-Funktion.

    Hallo,

    folgendes Problem plagt mich seit ein paar Tagen. Ein junger Programmierer hat mir ein PHP-Baummenü gebastelt (Beispiel hier: Bibliothek), er hat allerdings wenig Ahnung von HTML. Trotzdem funktioniert alles wie ich es mir gewünscht habe. Dieses Menü besitzt zwei Styles, die mittels zwei Links umgeschaltet werden, ich hätte aber gern statt Links zwei Buttons. Normalerweise wäre für mich kein Problem das selbst einzubauen. Ich habe aber bis jetzt noch nicht mit einem Absende-Button eine PHP-Funktion aufgerufen.

    Also, hier ist der PHP-Code für beide Links und es funktioniert einwandfrei:
    PHP-Code:
    function output_style_selection ($style$name) {
                    echo 
    '<a class="Stil3" href="?select_library_style='.$style.'" '.$name[1].'>'.$name[0].'</a>&nbsp;'."\n";
            } 
    Die Ausgabe in der Adresszeile sieht so aus, wenn man den ersten Link anklickt:
    Code:
    https://hns.selfip.com/ftp/?select_library_style=default
    und so, wenn man den zweiten anklickt:
    Code:
    https://hns.selfip.com/ftp/?select_library_style=ASCII
    Wenn man statt Links zwei Buttons einbaut, sollten beide Ausgaben auch genauso, wie im obigen Beispiel aussehen.

    Ich habe vieles versucht, aber bis jetzt ohne Erfolg. Wenn ich folgendes einbaue:

    PHP-Code:
            function output_style_selection ($style$name) {
                    echo 
    '<form action="">'."\n";
                    echo 
    '<input type="submit" name="?select_library_style='.$style.'" value="'.$name[0].'"; '.$name[1].'>&nbsp;'."\n";
                    echo 
    '</form>'."\n";
            } 
    Bekomme ich zwar beide gewünschte Buttons, beim Anklicken aber werden folgende Ausgaben in der Adresszeile gezeigt und die sind anders als die oberen Ausgaben:
    Code:
    https://hns.selfip.com/ftp/?%3Fselect_library_style%3Ddefault=%5BMENU+STANDARDOWE%5D
    Code:
    https://hns.selfip.com/ftp/?%3Fselect_library_style%3DASCII=%5BMENU+KLASYCZNE%5D
    Kann mir bitte jemand sagen, was ich falsch mache ?

    Viele Grüsse.
    rybog

  • #2
    Kann mir bitte jemand sagen, was ich falsch mache ?
    Ja, du hast keine Grundlagen gelernt und willst, dass andere die Arbeit für dich machen.

    Außerdem: Code umbrechen!
    Nur wenige wissen, wieviel man wissen muss, um zu wissen, wie wenig man weiß.

    Kommentar


    • #3
      Hallo ArSeN,

      ich gebe zu, dass ich nur gelegentlich mit HTML zu tun habe, allerdings, wenn du dir dieses Baummenü anschaust, stellst du fest, dass ich und mein Programmierer eigentlich alles richtig gemacht haben und ohne jede Hilfe. Nur diese kleine Verschönerung (beide Buttons) wäre noch zu erledigen. Wenn mir aber niemand hier, auf Grund meiner fehlenden "Grundlagen", helfen will, werde ich nicht böse. Danke für die Antwort.

      Übrigens, Dieses PHP-Menü stellt wie ein Windows Explorer dynamisch alles dar, was auf unserm FTP-Server passiert.

      Viele Grüsse.
      rybog

      P.S. Was meinst du mit dem Code umbrechen?

      Kommentar


      • #4
        Hallo ArSeN,

        vielen Dank für deine "Hilfe". Ich habe mein Problem selbst soeben teilweise gelöst. Hier der HTML-Code für andere, die ein ähnliches Problem haben:

        PHP-Code:
                function output_style_selection ($style$name) {
                        echo 
        '<form action="?select_library_style='.$style.'" method="POST">'."\n";
                        echo 
        '<input type="submit" name="library_style" value="'.$name[0].'"; '.$name[1].'>&nbsp;'."\n";
                        echo 
        '</form>'."\n";
                } 
        Probieren geht manchmal über Studieren.
        Das einzige, was ich noch nicht weiss. Wie ich die beide Buttons nebeneinander statt übereinander ausrichte?

        Gruss.

        Kommentar


        • #5
          Code umbrechen damit der Monitor nicht nach rechts erweitert werden muss.

          2 Button vielleicht mit div ausrichten?
          Und ist man alt wie ein Kuh, lernt man immer noch dazu.
          THX, LOL, ROFL & Co. -> Netzjargon auf Wikipedia

          Kommentar


          • #6
            echo '<input type="submit" name="library_style" value="'.$name[0].'"; '.$name[1].'>&nbsp;'."\n";
            Also, was immer das ausgibt, richtig ist das nicht...

            Du kannst z.b. auch nur ein formular machen, und da mehrere submitbuttons reintun, die du dann in der auswertung unterscheidest...
            ich glaube

            Kommentar


            • #7
              Hallo an alle,

              ich hab' auch das mit den beiden nebeneiander liegenden Buttons mittels einer Tabelle hingekriegt. Hier der PHP-Code:
              PHP-Code:
                      function output_style_selection_begin() {
                      echo 
              '<table cellspacing="5"><tr>'."\n";
                      }
                  
              function 
              output_style_selection ($style$name) {
                              echo 
              '<td><form action="?select_library_style='.$style.'" method="POST">'."\n";
                              echo 
              '<input type="submit" name="library_style" value="'.$name[0].'"; '.$name[1].'>'."\n";
                              echo 
              '</form></td>'."\n";
                      }

              function 
              output_style_selection_end() {
                      echo 
              '</tr></table>'."\n";
                              echo 
              "<hr /><br />\n";
                      } 
              @ ministry,
              ob es richtig ist oder nicht, es funktioniert aber verdammt gut und du kannst es dir anschauen, wenn du den Link "Bibliothek" in meinem ersten Beitrag anklickst.

              @Husti,
              danke für den Tipp, ich werde es ausprobieren.

              Viele Grüsse.
              rybog

              P.S. Wie soll ich bitte meinen Beitrag umbrechen ? Auf meinem Forum von SMF muss sich niemand um sowas kümmern. Die Forum-Software macht es automatisch.
              Zuletzt geändert von rybog; 05.06.2007, 00:18.

              Kommentar


              • #8
                Ich habe aber bis jetzt noch nicht mit einem Absende-Button eine PHP-Funktion aufgerufen.
                Passiert von ganz allein, wenn die Seiter serverseitig erstellt wird, wenn die Funktion einen Aufruf erhält. Schaust evtl. noch mal ins Handbuch zum Aufruf von Fkt.

                Wenn du per Form einen Parameter übergibst, der Style A aufruft oder ein anderer Parameter ruft Style B auf, wozu brauchst du zig Funktionen? Machs dir nicht unnötig schwer.
                Schreibt jeweils einen Style in eine Variable, die dann komplett ausgegeben wird.

                Wenn dein code 25000 Zeichen in einer Zeile enthält, kannst du gern dein Enter klicken oder so nachhelfen.

                PHP-Code:
                <?
                    echo "voll der lange text voll der lange text voll der lange text" . 
                    "voll der lange text voll der lange text voll der lange text" .
                    "voll der lange text";
                ?>
                Und ist man alt wie ein Kuh, lernt man immer noch dazu.
                THX, LOL, ROFL & Co. -> Netzjargon auf Wikipedia

                Kommentar


                • #9
                  Hallo Husti,

                  vielen Dank für deine Ratschläge, ich versuche sie in die Tat umzusetzen. Wenn ich noch dazu Fragen habe, melde ich mich natürlich.

                  Viele Grüsse.
                  rybog

                  Kommentar

                  Lädt...
                  X