Hochkomma in "window.open()"-Funktion

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

  • Hochkomma in "window.open()"-Funktion

    Hi,

    ich möchte mit folgender JS-Funktion den Titel des zu öffnenden Fensters als php-Variable übergeben. Leider bekomme ich Probleme, wenn der Titel der Seite ein Hochkomma enthält.

    Was kann man da machen?
    Hier der Code:
    PHP-Code:
    $title "Mark's neue Seite";
    echo 
    "onClick=\"window.open('show_pics.php?title=$title', 'NewWindow', 'toolbar=no')\">"

    Danke,

    _Sietsch_

  • #2
    Hat imho nichts mit HTML, noch mit Javascript, geschweige denn mit CSS zu tun, aber naja:

    PHP-Code:
    $title "Mark's neue Seite";
    echo 
    'onClick="window.open(\'show_pics.php?title=' $title '\', 'NewWindow', 'toolbar=no')\">"; 
    PHP-Code:
    $title "Mark's neue Seite";
    echo 
    "onClick=\"window.open('show_pics.php?title=" $title "', 'NewWindow', 'toolbar=no')\">"
    such dir eins aus, sollten beide funkionieren...
    [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

    Kommentar


    • #3
      Hi,

      werder das Eine, noch das Andere funktioniert.... :-(

      Noch ne Idee??

      Danke,

      _Sietsch_

      Kommentar


      • #4
        Re: Hochkomma in &quot;window.open()&quot;-Funktion

        Original geschrieben von _Sietsch_
        Leider bekomme ich Probleme, wenn der Titel der Seite ein Hochkomma enthält.
        ist dir wenigstens klar, warum?

        Was kann man da machen?
        was man sonst auch immer und überall macht, wenn ein sonderzeichen seiner funktion beraubt werden soll - maskieren natürlich.

        urlencode()
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Danke wahsaga!

          Ja, mir ist bewusst warum es da zu Problemen kommt.
          Aber folgender Versuch schlug auch fehl... :-(

          PHP-Code:
          $title "Mark's neue Seute";
           echo 
          "onClick=\"window.open('show_pics.php?title=urlencode($title)') 

          Gruß,

          _Sietsch_

          Kommentar


          • #6
            Original geschrieben von _Sietsch_
            Aber folgender Versuch schlug auch fehl... :-(
            PHP-Code:
            echo "onClick=\"window.open('show_pics.php?title=urlencode($title)') 
            [ ] du weißt, wie man funktionen in PHP aufruft
            [X] du möchtest PHP-grundlagen lernen
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Schau dir nochmal meinen Post oben an, und sag mir, wodurch er sich (abgesehen von dem urlencode() ) unterscheidet....

              Ich kann Leute nicht leiden, die aus Faulheit zwischen String und Variablen nicht unterscheiden und dann so einen Schaß wie
              PHP-Code:
              $name 'thomas';
              echo 
              "Meine Name ist $name"
              hinschreiben
              [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

              Kommentar


              • #8
                Hi!

                Ja, ich habe mit PHP bis her nichts am Hut gehabt!
                Ja, auch solche Leute soll es geben! Ich komme von PERL und C/C++, und da klappt das mit den Funktionsaufrufen in dieser Art und Weise.
                Ich wäre euch echt dankbar, wenn ihr eure kindische "Erzieherei" á la "Was ist hier anders?" unterlasst und mir wirklich helfen würdet, da ich nicht weiterkomme!

                Gruß,
                _Sietsch_

                PS: Wir ruft man denn nun Funktionen in PHP im Gegensatz zu PERL auf???

                Kommentar


                • #9
                  PHP-Code:
                  $title "Mark's neue Seute";
                   echo 
                  "onClick=\"window.open('show_pics.php?title=" urlencode($title) . "')\""
                  so einfach wärs gwesen...

                  Und ich hoffe, dass dein Befehl nicht so:
                  PHP-Code:
                  <a href="#" onclick="xxx"
                  weil sonst wirst du gleich nochmal ausgebessert
                  [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

                  Kommentar


                  • #10
                    Danke für die Hilfe!
                    So klappt es!

                    Nein,
                    mein Aufruf sieht wie folgt aus:
                    PHP-Code:
                    echo "   <a href=\"javascript:void(0)\"";
                        
                    $title "Mark's neue Seute";
                    echo 
                    "    onClick=\"window.open('show_pics.php?title=" .urlencode($title). " u.s.w. 
                    Aber nochwas...
                    Bevor ich die Funktion urlencode() verwendet habe, habe ich etwas anderes probiert. Ich habe das Hochkomma einfach escapet:
                    PHP-Code:
                        $title "Mark/\'s neue Seute"; ( / = Backslash
                    Dann kam zwar kein Fehler, jedoch sah dann auch der Titel des aufpoppenden Fensters so aus. Also mit Backslash.
                    Jetzt mit der Funktion sieht das Fenster auch so aus. Ist es richtig, dass die Funktion nichts anderes macht, als diese Zeichen zu escapen?
                    Was kann man dagegen tun, das diese dann im Titel des neuen Fensters angezeit werden?
                    Gibt es eine Funktion, die man im neuen Fenster aufrufen kann, die dann aus \' wieder macht?
                    Fragen über Fragen, ich weiß...

                    Hoffe auf eure Hilfe,

                    _Sietsch_
                    Zuletzt geändert von _Sietsch_; 31.07.2005, 14:19.

                    Kommentar


                    • #11
                      Ja, gibt es

                      Original geschrieben von _Sietsch_
                      PHP-Code:
                      echo "   <a href=\"java script:void(0)\">"

                      Siehe das Zitat von Rektal in meiner Sig....
                      [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

                      Kommentar


                      • #12
                        ...verstehe nicht ganz, was du mir damit sagen willst

                        Kommentar


                        • #13
                          es müßte 'Marks neue Seite' heißen.
                          Die Zeit hat ihre Kinder längst gefressen

                          Kommentar


                          • #14
                            Reden wir jetzt alle aneinander vorbei, oder raff ich's grad net. Hier nochmal das kleine Problemchen:

                            Gewollter Titel der Seite: Mark's neue Seite (mit Hochkomma)
                            Mit der Funktion urlencode() kann ich das auch so an die gewollte Seite übergeben.
                            ABER:
                            Der Titel wird dann so angezeigt: Mark/'s neue Seite

                            Jetzt die Frage: Wie bekomme ich das Escapezeichen raus. Klar kann man es mit Stringoperationen machen. Aber gibt es auch einen eleganteren Weg?

                            Danke,
                            _Sietsch_

                            Kommentar


                            • #15
                              Original geschrieben von derHund
                              es müßte 'Marks neue Seite' heißen.
                              Da gabs doch mal so ne lustige Seite... na wie hieß sie nochmal.... achja:
                              http://www.idiotenapostroph.de.vu

                              Kommentar

                              Lädt...
                              X