Ankündigung

Einklappen
Keine Ankündigung bisher.

Bei Aktion zu Container zurückkehren statt ReturnURL

Einklappen

Neue Werbung 2019

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

  • Bei Aktion zu Container zurückkehren statt ReturnURL

    Hey Leute,

    kurzes Problem. Mein Warenkorb besteht aus mehreren Container (DIVs), welche horizontal nebeneinander liegen und unterschiedliche Produktkategorien zeigen. Man sieht allerdings stets nur eine Kategorie; beim Wechsel wird die nächste via Jquery reingeslidet.

    Bis dato springt die Seite einfach zurück -natürlich über den Umweg der "hinzufuegen.php" auf die selbige .php Datei und somit auch zum ersten Container (DIV) wie folgt:

    PHP-Code:
    ...
    $current_url base64_encode("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
    ...
    echo 
    '<form method="post" action="hinzufuegen.php">';
    ...
    echo 
    '<input type="hidden" name="return_url" value="'.$current_url.'" />'
    Nun würde ich allerdings ganz gerne zurück auf den Container springen, bzw. einfach direkt an dieser Position bleiben, so dass sich gar nichts bewegt.

    #div, .php#div, variable $current_url = richtiger Link habe ich alles schon probiert und nichts davon funktioniert.

    Kann mir da jemand weiterhelfen?

    Merci


  • #2
    wenn ich das richtig verstehe machst du das ohne ajax,also ohne,dass inhalte dynamisch von deiner "hinzufuegen.php" geladen werden,sondern dass diese direkt so aufgerufen wird und dann wieder auf deine "selbige.php" leitet?
    wenn das so ist solltest du entweder mit ajax arbeiten(was ich zumindest aus meiner sicht empfehlen würde) oder du musst deiner "selbigen.php"
    die position mitteilen,auf welcher sie sich nun befinden soll.dies könntest du zum beispiel über ein cookie erreichen,welches die position speichert,welche du dann in deinen jquery code einsetzen müsstest.
    ist aber nur meine anfaenger sicht!!!

    Kommentar


    • #3
      Zitat von tobtob Beitrag anzeigen
      Hey Leute,

      kurzes Problem. Mein Warenkorb besteht aus mehreren Container (DIVs), welche horizontal nebeneinander liegen und unterschiedliche Produktkategorien zeigen. Man sieht allerdings stets nur eine Kategorie; beim Wechsel wird die nächste via Jquery reingeslidet.

      Bis dato springt die Seite einfach zurück -natürlich über den Umweg der "hinzufuegen.php" auf die selbige .php Datei und somit auch zum ersten Container (DIV) wie folgt:

      PHP-Code:
      ...
      $current_url base64_encode("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
      ...
      echo 
      '<form method="post" action="hinzufuegen.php">';
      ...
      echo 
      '<input type="hidden" name="return_url" value="'.$current_url.'" />'
      Nun würde ich allerdings ganz gerne zurück auf den Container springen, bzw. einfach direkt an dieser Position bleiben, so dass sich gar nichts bewegt.

      #div, .php#div, variable $current_url = richtiger Link habe ich alles schon probiert und nichts davon funktioniert.

      Kann mir da jemand weiterhelfen?

      Merci
      Wenn ich da srichtig verstanden habe, bewirkt die Datei
      Code:
      hinzufuegen.php
      nichts, als das diese die Anfrage wieder zurück gibt?
      Ist das korrekt?

      Wenn dann kannst du folgendes machen
      PHP-Code:
      echo '<form method="post" action=" ' $_SERVER[\' SCRIPT_NAME\'] . ' ">'; 

      Kommentar


      • #4
        Natürlich. In der Hinzufügen.php sind sämtliche Schleifen und die Verarbeitung der Session mit der ich arbeite drin. Füge ich also ein Produkt hinzu, läuft das über die Hinzufügen.php. Im Anschluss wird redirected zu der selben Seite. Wie gesagt, das alles funktioniert wunderbar. Aber ich möchte nicht nur zu der eigentichen Warenkorb.php zurück, sondern auch zu genau dem DIV...

        Kommentar


        • #5
          Zitat von tobtob Beitrag anzeigen
          Natürlich. In der Hinzufügen.php sind sämtliche Schleifen und die Verarbeitung der Session mit der ich arbeite drin. Füge ich also ein Produkt hinzu, läuft das über die Hinzufügen.php. Im Anschluss wird redirected zu der selben Seite. Wie gesagt, das alles funktioniert wunderbar. Aber ich möchte nicht nur zu der eigentichen Warenkorb.php zurück, sondern auch zu genau dem DIV...
          Ok, siehste. Missverstanden.

          Spontan fällt mir ein:
          http://de.wikipedia.org/wiki/Anker_%28HTML%29

          So würde ich das lösen.

          Kommentar


          • #6
            Ja das habe ich leider schon probiert in allen Variationen.

            Wenn ich folgende Zeile
            PHP-Code:
            echo '<input type="hidden" name="return_url" value="'.$current_url.'" />'
            mit
            PHP-Code:
            echo '<input type="hidden" name="return_url" value="'warenkorb#whatever'" />'; 
            ersetze, dann komme ich nicht einmal mehr auf meine Warenkob.php zurück sondern es wird ein Fehler angezeigt, dass das Objekt nicht gefunden werden kann. Ihr kennt die Fehlerseite wahrscheinlich...

            Kommentar


            • #7
              Zitat von tobtob Beitrag anzeigen
              Ja das habe ich leider schon probiert in allen Variationen.

              Wenn ich folgende Zeile
              PHP-Code:
              echo '<input type="hidden" name="return_url" value="'.$current_url.'" />'
              mit
              PHP-Code:
              echo '<input type="hidden" name="return_url" value="'warenkorb#whatever'" />'; 
              ersetze, dann komme ich nicht einmal mehr auf meine Warenkob.php zurück sondern es wird ein Fehler angezeigt, dass das Objekt nicht gefunden werden kann. Ihr kennt die Fehlerseite wahrscheinlich...
              müsste das dann nicht
              PHP-Code:
              echo '<input type="hidden" name="return_url" value="'.$current_url ' #whatever'" />'; 
              lauten?
              WENN $current_url mit PHP endet
              Wenn nicht, kannst du die Sprungmarke mit $_GET erfragen und mit GOTO setzen
              https://php.net/manual/de/control-structures.goto.php

              Kommentar


              • #8
                Ach bitte, nicht zurück in die 80er. Goto zeigt nur, dass das Software-Design unbrauchbar ist. Goto ist absolutes nogo.
                GitHub.com - ChrisAndChris - RowMapper und QueryBuilder für MySQL-Datenbanken

                Kommentar


                • #9
                  Zitat von ChristianK Beitrag anzeigen
                  Ach bitte, nicht zurück in die 80er. Goto zeigt nur, dass das Software-Design unbrauchbar ist. Goto ist absolutes nogo.
                  Mein Gott; suchst du nach Bestätigung?

                  Oder warum negierst du alle Beiträge ohne Aussage zum Problem vom TE?

                  Kommentar


                  • #10
                    Bei Aktion zu Container zurückkehren statt ReturnURL

                    Tut mir leid, es liegt in der Natur dieses Forums. Und leider kann ich nicht zusehen, wenn jemand solch unnütze Antworten schreibt. Genau so bin ich froh, wenn mich jemand korrigiert, wenn ich etwas suboptimales poste.
                    GitHub.com - ChrisAndChris - RowMapper und QueryBuilder für MySQL-Datenbanken

                    Kommentar


                    • #11
                      Leider ist die $current_url welche ja durch
                      PHP-Code:
                      $current_url base64_encode("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']); 
                      abgerufen wird keine URL in Form einer http://...,.php etc. Das ist ein endloser lange Zahlencode und deswegen kann ich den Container nicht einfach mit #whatever anhängen. Gibt es eine andere Möglichkeit, wie ich meine aktuelle URL abrufen und in einer Variable speichern kann? Danke

                      Kommentar


                      • #12
                        Ich glaube fast, dass da etwas broken by design ist. Ich kann deinem Post noch nicht ganz entnehmen, was genau du möchtest. Du hast 3 Divs, wobei du jeweils immer nur eine anzeigst.

                        Wenn du einen div ausblenden willst (mittels jquery), nimm hide(), zum anzeigen show().

                        Wenn du neuen Inhalt nachladen willst, nimm ajax().

                        Wieso du deine URL durch base64 jagst, kann ich mir nicht erklären.
                        GitHub.com - ChrisAndChris - RowMapper und QueryBuilder für MySQL-Datenbanken

                        Kommentar


                        • #13
                          Das ist ein endloser lange Zahlencode und deswegen kann ich den Container nicht einfach mit #whatever anhängen.
                          Dann fügs halt vor dem Encoding an, herrjeh. Warum wollt Ihr nur alle Programmieren, wenn Euch die grundlegendsten Denkmuster schon fehlen?
                          --

                          „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