Wie verhindern, dass "&"zu "&" wird?

  • Hallo,

    ich haben das Problem, dass wann immer ich ein "&" eingebe, es zu einem "&" wird. Ich benötige aber ein "&", weil das ein Parametertrenner in einer URL ist.
    So

    Code
    <img src="http://../../irgendeinbild.jpg?parameter1=dies&parameter2=jenes">

    Im Browser wird aus dem "&" jedoch immer ein "&amp;", was dazu führt, dass mein Bildchen nicht angezeigt wird :(

    Ich habe schon alles probiert:
    1. DeanFCK-Editor (FCK-Editor-Plugin) an und aus
    2. Standard Wysiwyg-Editor an und aus
    3. Plugin Text Control um Formatierung auszuschalten
    4. den Code mit dem "&" über include (via php-exec) in die Seite geladen

    Aber egal, was ich auch tue, aus dem "&" wird immer ein "&amp" im Browser, :,-(

    Da muss es doch Abhilfe geben, oder?

    Danke für jede Hilfe!
    Bela

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Das &amp; an der Stelle (d.h. in der URL im HTML-Code) ist so vollkommen korrekt. Allerdings sieht mir das hier ziemlich falsch aus:

    Code
    <img src="[COLOR="Red"][B]http://../..[/B][/COLOR]/irgendeinbild.jpg?parameter1=dies&parameter2=jenes">


    PS: Falsch wäre natürlich auch &amp;amp; - falls du das mit der "Darstellung im Browser" meinst. Ein Link wäre sicher hilfreich.

  • Hi,

    erstmal danke für die Antwort.
    Also, das Problem ist nur, wenn ich beim Schreiben einer Seite oder eines Beitrages in den Quellcode ein "&" schreibe, dann den Beitrag speichere und mir den Beitrag ganz normal im Browser ansehe (Quellcode-Ansicht) dann ist aus dem "&" ein "&amp;" geworden.
    In dem Fall heist das, dass eben ein Bild nicht angezeigt wird, weil der zweite Parameter nicht mit "&parameter2=X" übergeben wird sondern anstelle dessen "&amp;parameter2=X" steht, womit natürlich das Bilderzeugungs-Skript nichts anfangen kann :(

    Schöne Grüße,
    Bela

  • Nochmal:

    HTML
    <img src="irgendeinbild.jpg?parameter1=dies&amp;parameter2=jenes">


    ist vollkommen korrektes HTML.

    HTML
    <img src="irgendeinbild.jpg?parameter1=dies&parameter2=jenes">


    ist es nicht. Das meldet dir dann auch der HTML-Validator als Fehler.
    Siehe auch: SELFHTML: HTML/XHTML / Allgemeine Regeln für HTML / Zeichenvorrat, Sonderzeichen und HTML-eigene Zeichen

    Der Fehler muss also woanders liegen.

  • Das Problem liegt daran, dass das "&" in ein "&amp;" umgewandelt wird, und ich einen Weg suche, das zu verhindern.
    Und leider funktionieren damit eben keine Skripte (bei der Bild-URL hatte ich einen Fehler drin, das JPG wird von einem Skript erzeugt, also "image.php?parameter..."

    Wenn man z.B. in der funktionierenden Google-Suche:
    "http://www.google.de/search?hl=de&q=irgendwas"
    aus dem & ein "&amp;" macht
    "http://www.google.de/search?hl=de&amp;q=irgendwas"
    dann funktioniert sie auch nicht mehr.

    Kurz gesagt: wie kann ich verhindern, dass Wordpress das Umwandeln unterlässt -gültiges HTML hin oder her...

    Schöne Grüße,
    Bela

  • Wenn man z.B. in der funktionierenden Google-Suche:
    "http://www.google.de/search?hl=de&q=irgendwas"
    aus dem & ein "&amp;" macht
    "http://www.google.de/search?hl=de&amp;q=irgendwas"
    dann funktioniert sie auch nicht mehr.


    Darum gehts doch nicht, dass das nicht geht ist klar. Das ist aber auch kein HTML! In HTML sind alleinstehende & nunmal als &amp; zu maskieren. Der Browser erkennt das dann und gibt es korrekt als einfaches & wieder. Lies dir bitte den oben verlinkten SELFHTML-Artikel zu HTML-eigenen Zeichen durch:

    Zitat von SELFHTML

    Wenn in Ihrem Text Zeichen vorkommen, die in HTML eine bestimmte Bedeutung haben, müssen Sie diese Zeichen maskieren. Die folgenden Zeichen müssen Sie wie folgt maskieren:
    Ersetzen Sie das Zeichen & durch die Zeichenfolge &amp; ("Ampersand")


    Für dein Beispiel: In einem HTML-Dokument wäre

    HTML
    <a href="http://www.google.de/search?hl=de&amp;q=irgendwas">Google Suche</a>


    vollkommen korrekt und funktioniert auch. Probiers aus!

    Zitat

    Kurz gesagt: wie kann ich verhindern, dass Wordpress das Umwandeln unterlässt -gültiges HTML hin oder her...


    Das willst du nicht, glaub mir. WordPress verhält sich hier vollkommen korrekt.
    Zur Problemlösung: Überprüfe zunächst einmal die URL. Funktioniert die URL wenn du sie direkt in die Adresszeile eingibst (natürlich nur mit einfachem &, die Adresszeile kennt kein HTML). Wenn das klappt, dann hat wahrscheinlich die image.php einen Fehler.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!