Ankündigung

Einklappen
Keine Ankündigung bisher.

Text als "button" verwenden

Einklappen

Neue Werbung 2019

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

  • Text als "button" verwenden

    Hallo an alle!

    Ich habe folgendes Problem:
    Ich habe nach wochenlanger Arbeit eine eigene php Suchmaschine für meine Homepage erstellt. Die funktioniert auch sehr gut, aber die aufgelisteten Suchergebnisse sollen über einen Text-link mit der richtigen php-Datei verlinkt werden.
    Dies wäre ja kein Problem, aber dabei sollen auch noch Daten (Suchwort, usw.) von der Suchmaschine an die entsprechende Seite geliefert werden!

    Dies würde ich folgend von der php-Datei ausgeben lassen:

    <form action="search.php" method="post">
    <input type="submit" name="done" value="Link">
    <input type="hidden" name="suchwort" value="$suchwort">
    </form>

    Aber anstelle von <input type="submit" name="done" value="Link">, soll ein Text-link stehen!

    Dazu habe ich im Internet auch einiges gefunden, aber nur in Verbindung mit dem abschicken von Formularen!

    Für eure Hilfe im Voraus dankend
    <?php?>


  • #2
    Verstehe das Problem nicht!? Du kannst doch einfach deine Parameter hinter den Link hängen und mit GET auf der nachfolgenden Seite abfragen, oder verstehe ich was falsch?!?!

    Wolf29
    while (!asleep()) sheep++;

    Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.

    Kommentar


    • #3
      Entweder du übergibst die Variablen per GET (also direkt im Link), was die ordentliche Methode wäre oder aber du benutzt javascript um dein Formular von einem Link statt von einem Button absenden zu lassen.

      Kommentar


      • #4
        Wie würde das mit get aussehen?

        Kommentar


        • #5
          <a href="search.php?suchwort=$suchwort">Hallo</a>

          Kommentar


          • #6
            Und wie kann ich dies nun abrufen?

            mit echo $suchwort;?

            Kommentar


            • #7
              Bitte

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

              echo $_GET['suchwort'];

              Kommentar


              • #8
                Oder du besinnst dich darauf, dass für Aussehen einzig und allein CSS zuständig ist - und formatierst den Submit-Button einfach so, dass er wie ein Textlink aussieht.

                Kommentar


                • #9
                  Mit get funktionierts!
                  Das Kapitel habe ich wohl übersehen!

                  Ich habe es folgendermaßen gelöst:

                  echo '<a href="';
                  echo mysql_result($res, $rw, "link");
                  echo '?suchwort=';
                  echo $searchterm;
                  echo '">';
                  echo mysql_result($res, $rw, "name");
                  echo '</a>';

                  Vielen Dank!

                  Kommentar


                  • #10
                    Da meine Frage ziemlich gut hier reinpasst, packe ich die mal noch mit dazu:

                    Und zwar möchte ich sowas ähnliches machen, aber da ich meine ganze Seite auf POST-Befehlen aufgebaut habe, möchte ich ganz gerne bei POST bleiben; auch weil ich schon mehrfach gelesen habe, dass man GET und POST nicht vermischen sollte, was ich ebenfalls für keine so gute Idee halte.

                    Ich wollte mal fragen, ob es die gängige Lösung ist aus jedem simplen Textlink, der z.B. ne User-Seite lädt, bei dem ja die Userid mitgeschickt werden muss, immer gleich n komplettes Formular zu schreiben und per CSS zu formatieren?
                    Oder gibt's da auch andere Möglichkeiten.
                    '<a href="">' mit '?id=15' oder so ist halt irgendwie kürzer...

                    Oder benutzt ihr doch GET und POST gleichzeitig und dann getrennt nach Werten, die übermittelt werden (IDs immer als GET, Formulareinträge immer als POST oder so)?

                    Kommentar


                    • #11
                      Zitat von tigerbrezel Beitrag anzeigen
                      Und zwar möchte ich sowas ähnliches machen, aber da ich meine ganze Seite auf POST-Befehlen aufgebaut habe, möchte ich ganz gerne bei POST bleiben; auch weil ich schon mehrfach gelesen habe, dass man GET und POST nicht vermischen sollte, was ich ebenfalls für keine so gute Idee halte.
                      Hä?

                      GET für Links.

                      POST für Formulare.

                      Das ist auch unabhängig davon um was für Daten es sich handelt...

                      Die einzige Art von "vermischung" die dabei möglich wäre ist wenn im Action-Attribut vom Formular ebenfalls GET-Parameter stehen. Je nach Anwendungsfall kann aber auch das sinnvoll sein.

                      Btw. POST ist in keinster Weise sicherer oder weniger manipulierbarer als GET weswegen es keinen Grund gibt GET nicht zu nutzen.
                      "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

                      Kommentar


                      • #12
                        aber da ich meine ganze Seite auf POST-Befehlen aufgebaut habe,
                        Dann hast Du wohl nen Fehler gemacht.
                        Oder benutzt ihr
                        Das kann man nicht pauschal beantworten.
                        --

                        „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


                        • #13
                          Zitat von tigerbrezel Beitrag anzeigen
                          aber da ich meine ganze Seite auf POST-Befehlen aufgebaut habe
                          Warum machst du so einen Unfug?

                          Oder benutzt ihr doch GET und POST gleichzeitig und dann getrennt nach Werten, die übermittelt werden (IDs immer als GET, Formulareinträge immer als POST oder so)?
                          Die Faustregel lautet:
                          • GET für Requests, die Daten zur Anzeige abfragen
                          • POST für Requests, die Daten erzeugen (also Posten eines neuen Kommentars/Gästebucheintrags/...)

                          Kommentar


                          • #14
                            Vielen Dank für die Antworten.

                            Warum machst du so einen Unfug?
                            @ChrisB: Weil ich noch nicht lange mit PHP arbeite und ich bisher noch keine große Praxiserfahrung habe.
                            Da kommen solche Fragen eben ab und zu mal auf, und besser, man wird eines besseren belehrt, als dass man es ewig falsch macht.

                            Die Faustregel lautet:

                            * GET für Requests, die Daten zur Anzeige abfragen
                            * POST für Requests, die Daten erzeugen (also Posten eines neuen Kommentars/Gästebucheintrags/...)
                            Es ist also wirklich so, dass man GET und POST in verschiedenen Situationen verwendet, wie ich ja vermutet hatte.
                            Dann hast Du wohl nen Fehler gemacht.
                            @nikosch: Wie ChrisB mir geantwortet hat, hat mich weiter gebracht. Deine Antwort dagegen kein bisschen...

                            P.S. Ich habe gerade den Thread http://www.php.de/off-topic-diskussi...-normal-4.html gelesen.
                            Ich kann verstehen, dass man als Mod nach ner Zeit abstumpft, vor allem gegen Anfängerfragen, aber ich muss dazu sagen, dass es in so einem Fall, sprich, wenn man keine Lust hat, zu simple Fragen zu beantworten, besser wäre, wenn man es dann ganz bleiben lassen würde.
                            Ist jetzt wirklich ganz sachlich als konstruktive Kritik gemeint. Ihr seid sicherlich gute Moderatoren und das Forum kommt ansonsten auch sehr kompetent rüber. Macht weiter so!

                            Kommentar


                            • #15
                              P.S. Ich habe gerade den Thread Ist das hier normal? gelesen.
                              Ich kann verstehen, dass man als Mod nach ner Zeit abstumpft, vor allem gegen Anfängerfragen, aber ich muss dazu sagen, dass es in so einem Fall, sprich, wenn man keine Lust hat, zu simple Fragen zu beantworten, besser wäre, wenn man es dann ganz bleiben lassen würde.
                              Ist jetzt wirklich ganz sachlich als konstruktive Kritik gemeint. Ihr seid sicherlich gute Moderatoren und das Forum kommt ansonsten auch sehr kompetent rüber. Macht weiter so!
                              Das Problem sind nicht simple Fragen, sondern das hier einfach Grundlagen vorrausgesetzt werden. Dieses Forum soll kein Tutorial sein was auch noch Fragen beantwortet sondern eines bei dem Leuten geholfen wird die sich auch schon mit der Materie auseinander gesetzt werden. Glaub mir, wenn jemand eine simple Frage ala "ich versteh das mit den POST nicht richtig, was ich bis jetzt verstanden habe ist, das..." stellen würde, dann wird niemand ihn abweisen. Wovon Moderatoren allerdings genervt sind, sind Leute die sich (ohne sich damit auseinander gesetzt zu haben) nach einer Lösung verlangen, meistens verlangen diese dann auch noch Code.

                              Kommentar

                              Lädt...
                              X