Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zamiana " oraz ' na kod &quote
art
post
Post #1





Grupa: Zarejestrowani
Postów: 63
Pomógł: 0
Dołączył: 31.08.2003

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


Witam!

mam taki drobny problemik nie wiem jak zamienic znak cudzyslowia oraz apostrof na kod &quote w tekscie dodawanym do bazy danych przez formularz... wiem ze sluzy do tego polecenie np:

  1. <?php
  2.  
  3. str_replace("[co zamienic]", "[na co zamienic]", $text);
  4.  
  5. ?>


no ale wlasnie jak wpisac ten cudzyslów bądz apostrof w to miejsce [co zamienic] ?bo jesli wpisze poprostu " lub ' to oczywiscie nie dziala ...

  1. <?php
  2.  
  3. str_replace(" " ", "&quote", $text); // NIE DZIALA
  4. str_replace(" ' ", "&quote", $text); // NIE DZIALA
  5. str_replace(' " ', "&quote", $text); // NIE DZIALA
  6.  
  7. ?>


Wiec jak to powinno być?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Apo
post
Post #2





Grupa: Zarejestrowani
Postów: 426
Pomógł: 1
Dołączył: 2.10.2005

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


masz tu przykład:
  1. <?
  2. $format = str_replace(""", "co tam chcesz", $format);
  3. ?>

Zapomniałeś poprzedzić znak " tym \

Ten post edytował Apo 3.10.2005, 21:05:52
Go to the top of the page
+Quote Post
art
post
Post #3





Grupa: Zarejestrowani
Postów: 63
Pomógł: 0
Dołączył: 31.08.2003

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


Kurcze dawalem tez \ przed cudzyslowiem i rowniez nie dzialalo sad.gif ... moze jakies inne pomysly?
Go to the top of the page
+Quote Post
mike
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


A po co koniecznie chesz to zrobić to w ten sposób :?:
Przy zapisie do bazy daj addslashes() a po odczycie stripslashes().

Nie ma sensu zamieniać tego na encje.
Go to the top of the page
+Quote Post
s_w_ir
post
Post #5





Grupa: Zarejestrowani
Postów: 315
Pomógł: 1
Dołączył: 6.08.2003
Skąd: Kielce

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


  1. <?php
  2. $text=""'";
  3. $text=str_replace(""", "&quot;", $text);
  4. $text=str_replace("'", "&quot;", $text);
  5. echo $text;
  6. ?>
Skopiuj to dokładnie i sprawdź w źródle strony że działa to. Trzeba tylko użyć wyrażenia
  1. <?php
  2.  
  3. $zmienna = str_replace("cos", "cos2", $zmienna);
  4. ?>

I nie &quote tylko &quot;exclamation.gif

edit***
@mike_mech - racja, trzeba trzymać sie standardów, mój błąd. Juz poprawiłem kod.


Ten post edytował s_w_ir 3.10.2005, 22:37:51
Go to the top of the page
+Quote Post
mike
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Panowie, jeżeli juz mówicie o encjach, choć polecam rozwiązanie wspomniane przeze mnie wyżej, to piszcie te encje poprawnie.

Na końcu powinien być średnik:
&#34; (cudzysłów)
&#64; (małpa @)
i.t.d.
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 Aktualny czas: 22.08.2025 - 09:42