Marcel: Double-Quotes

hi

ich würde gerne folgenden html code in einer php-echo ausgeben:

<span    onMouseOver="document.Abschlepp.src='images/aktiv_Abschlepp.jpg'"
    onMouseOut="document.Abschlepp.src='images/Abschlepp.jpg'">

jetzt
was nicht geht, ist:
echo "<span    onMouseOver='document.Abschlepp.src='images/aktiv_Abschlepp.jpg''
    onMouseOut='document.Abschlepp.src='images/Abschlepp.jpg''>";

kann mir jemand sagen, wie man das richtig ausgibt?

vielen Dank Marcel

  1. Hi ... du musst Escaped, also Maskieren.

    <?php
    echo "<span onMouseOver="document.Abschlepp.src='images/aktiv_Abschlepp.jpg'" onMouseOut="document.Abschlepp.src='images/Abschlepp.jpg'">";
    ?>

    Die " hinter dem echo und vor dem ; sind die "Eingrenzung" des Strings, der mit echo ausgegeben wird. Wird ein " mitten im String gesetzt, wie z.B. hinter onMouseOver=, denkt php, dass der String dort zuende ist und bringt dann Fehler, daher müssen " innerhalb eines Strings maskiert (escaped) werden, das macht man mit \

    mfg
    Knusperklumpen

  2. Hi,

    ich würde gerne folgenden html code in einer php-echo ausgeben:

    <span    onMouseOver="document.Abschlepp.src='images/aktiv_Abschlepp.jpg'"
        onMouseOut="document.Abschlepp.src='images/Abschlepp.jpg'">

    Ich weiss nicht ob es eleganter geht, aber so sollte es funktionieren:

      
    echo "<span    onMouseOver=\"document.Abschlepp.src='images/aktiv_Abschlepp.jpg'\"  
               onMouseOut=\"document.Abschlepp.src='images/Abschlepp.jpg'\">";  
    
    

    mfG,
    steckl