Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[JavaScript] + [PHP] - Kolizja apostrofów - jak rozwiązać

adam220 20 Mar 2015 12:20 597 1
  • #1 20 Mar 2015 12:20
    adam220
    Poziom 14  

    Witam.
    Mam na stronie przycisk z odsyłaczem który działa bez zarzutu.

    Code:
    <INPUT type=button name=przycisk1 VALUE="24 godz"         onClick="window.location.href='http://strona.pl/skrypt.php?a=1&b=2'">



    Planuję zmieniać wartości a i b, więc obudowuję to w <?echo "xxxxx";?>
    Code:
    <?echo "<INPUT type=button name=przycisk2 VALUE="Tydzień"         onClick="window.location.href='http://strona.pl/skrypt.php?a=1&b=2'">"; ?>


    i jest błąd parsowania:
    Code:
    Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in x.php on line 107


    więc domyslając się że drugi " ten za OnClickiem traktowany jest jako zamykający argument echo, zmieniam wewnętrzne " na ' tak aby " służyły tylko dla echo.

    Mam więc
    Code:
    <?echo "<TD><INPUT type=button name=przycisk1 VALUE='24 godz'         onClick='window.location.href='http://strona.pl/skrypt.php?a=1&b=2'  '></TD>"; ?>


    ale niestety: przycisk jest widoczny ale nie działa. Badanie elementu w przeglądarce wskazuje na zamieszanie z apostrofami i nierozpoznanie url-a.

    Co mam zrobić? Użyć " nie mogę ze względu na echo, ale podobno jest sposób ze slashem.

    Przy okazji proszę o ludzkie wytłumaczenie kiedy trzeba używać ", kiedy ', a kiedy to jest obojętne.

    0 1
  • Pomocny post
    #2 20 Mar 2015 14:16
    anonim206
    Poziom 13  

    Aby wstawić znak " do stringa należy użyć \".

    Code:

    <?echo "<INPUT type=button name=przycisk2 VALUE=\"Tydzień\"         onClick=\"window.location.href='http://strona.pl/skrypt.php?a=1&b=2'\">"; ?>

    0