Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z funkcja ECHO
kolumb84
post 16.01.2007, 10:22:18
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 11.11.2005

Ostrzeżenie: (0%)
-----


Witam!
moj problem polega na tym, ze mam zmienna tekstowa np. $zmienna i w niej znajduje sie lancuch

jakis tekst "sss" tekst

i jesli ja ta zmienna wyswietlam w

echo" cos $zmienna";

to jest ok, ale jesli ja chce np w formularzu w polu type=\"text\" wyswietlic jako domyslny tekst i wpisze

value=\"$zmienna\"

to zostaje wstawiony do tego pola tekst tylko: jakis tekst
bez "sss" tekst. Wychodzi na to, ze ten cudzyslow w lancuchu zamyka moje ECHO

Jak temu poradzic
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
My4tic
post 16.01.2007, 11:21:21
Post #2





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 4.08.2005

Ostrzeżenie: (0%)
-----


  1. <?php
  2. echo '<input type="text" value=" '. $zmienna .' " />';
  3. ?>


Pamiętaj o odpowiednim filtrowaniu $zmienna jeśli pobierasz ją od userów.


--------------------
Załóż konto na dropbox.
Go to the top of the page
+Quote Post
kolumb84
post 16.01.2007, 11:40:17
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 11.11.2005

Ostrzeżenie: (0%)
-----


nie dziala ten sposob. nadal obcina lancuch jak napotka "

ja pobieram ta zmienna z MySQL. Przed zapisaniem jej jest ona traktowana funkcja
ADDSLASHES i funkcja to bialych znakow a przy odczytywaniu jesy STRIPSLASHES i powinno byc ok a nie jest. buuuuuu

wpisalem tak:

echo ' value=" '.$nazwaDruzyny.'"></td>';

i nic dalej to samo.
Go to the top of the page
+Quote Post
Cienki1980
post 16.01.2007, 11:57:48
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

Ostrzeżenie: (0%)
-----


Wystarczy użyć funkcji htmlspecialchars();
  1. <?php
  2. $kolory="jakiś tam "tekst"";
  3.  
  4. echo $kolory;echo "<BR>";
  5. echo "<input type="text" value="".htmlspecialchars($kolory)."">";
  6. ?>


--------------------
404
Go to the top of the page
+Quote Post
kolumb84
post 16.01.2007, 13:12:55
Post #5





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 11.11.2005

Ostrzeżenie: (0%)
-----


Cytat(Cienki1980 @ 16.01.2007, 10:57:48 ) *
Wystarczy użyć funkcji htmlspecialchars();
  1. <?php
  2. $kolory="jakiś tam "tekst"";
  3.  
  4. echo $kolory;echo "<BR>";
  5. echo "<input type="text" value="".htmlspecialchars($kolory)."">";
  6. ?>


dziala ok. dzieki za wypowiedzi. pozdrawiam
Go to the top of the page
+Quote Post
My4tic
post 16.01.2007, 22:23:36
Post #6





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 4.08.2005

Ostrzeżenie: (0%)
-----


Cytat(kolumb84 @ 16.01.2007, 11:40:17 ) *
nie dziala ten sposob. nadal obcina lancuch jak napotka "


Niczego nie obcina a problem tkwi w tym, że jeśli zmienna wygląda w ten sposób jaki podałeś to po wstawieniu tego do input value="" wszystko wygląda tak:

  1. <input type="text" value=" " $zmienna " " />



  1. <input type="text" value=" "
...tutaj value jest zamykane dlatego niczego nie widziałeś w okienku i dlatego napisałem abyś pamiętał o filtrowaniu. Takie błędy są dość częste i narażają stronę na ataki CSS.


--------------------
Załóż konto na dropbox.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 21:48