Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MYSQL] Kodowanie bazy danych
Forum PHP.pl > Forum > Przedszkole
krzychu0808
Mam pytanie jakie dać kodowanie dla bazy danych gdzie będą przechowywane dane w języku angielskim i będą zawierać znaczniki html.. bo ustawione mam utf8_bin i mam zamiast < mam lt; (usunąłem & z przodu bo by wyświetliło <). Oczywiście w bazie są tylko te znaczniki ale po wyświetleniu jest ok... a jest kodowanie bazie żeby nie było tych znaczników tylko normalnie > bo to by ułatwiło przeglądanie bazy..
Crozin
To to masz pewnie dlatego, że przed dodaniem danych do bazy filtrujesz je htmlspecialchars" title="Zobacz w manualu PHP" target="_manual czy czymś podobnym w działaniu. Kodowanie nie ma tu nic do rzeczy.
erix
Cytat
przechowywane dane w języku angielskim

To czemu nie korzystasz po prostu z latin1...?

Cytat
Oczywiście w bazie są tylko te znaczniki ale po wyświetleniu jest ok... a jest kodowanie bazie żeby nie było tych znaczników tylko normalnie > bo to by ułatwiło przeglądanie bazy..

Czym wyświetlasz?
krzychu0808
Na wyświetlaniu mam kodowanie UTF-8
gladiror
Ale po co chcesz to przemieniać? TO jest bardzo bezpieczne przechowywanie informacji. Bo jak będziesz wpisywać informacje z < > to będą mogli Ci głupoty powrzucać do bazy.
krzychu0808
dobra spoko bo chce usunąć cześć tych znaczników html bo tam jest br z parametrami i img... i łątwiej by się usuwało ale zaraz coś wymyśle
krzychu0808
Mam taką linijkę do usunięcia :


próbowałem to zrobić ale coś mi nie poszło.
  1. <?php
  2. $wiadomosci[tresc] = str_replace("lt;br[^<]+gt;", "", $wiadomosci[tresc]);
  3. ?>

wyrzuciłem ten znaczek & bo forum od razu zamienia
wie ktoś gdzie jest to ładnie opisane z tym [^<]+ bo nie wiem nawet pod jakim hasłem tego szukać...
Wicepsik
  1. <?php
  2. $wiadomosci[tresc] = str_replace("lt;br(.*)gt;", "", $wiadomosci[tresc]);
  3. ?>
krzychu0808
Cytat(Wicepsik @ 15.07.2009, 21:00:47 ) *
  1. <?php
  2. $wiadomosci[tresc] = str_replace("lt;br(.*)gt;", "", $wiadomosci[tresc]);
  3. ?>


niestety nie działa...
dodałem & żeby nie było że zapomniałem smile.gif
erix
A robiłeś, jak pisałem? tongue.gif
krzychu0808
Nie ale zaraz zobaczę na razie zrobiłem coś takiego i nie działa
  1. <?php
  2. $wiadomosci[tresc]= str_replace (array ( '&amp;' , '&quot;', '&apos;' , '&lt;' , '&gt;', '&apos;' ), array ( '&', '"', "'", '<', '>', '�' ), $wiadomosci[tresc] );
  3.                $wiadomosci[tresc] = str_replace("<br(.*)>", "", $wiadomosci[tresc]);
  4. ?>


  1. <?php
  2. $wiadomosci[tresc]= html_entity_decode($wiadomosci[tresc]);
  3.                $wiadomosci[tresc] = str_replace("<br(.*)>", "", $wiadomosci[tresc]);
  4. ?>

też nie działa ;p
erix
  1. sprawdź, czy &, to na pewno początek encji
    1. <?php
    2. ?>
gladiror
krzychu - za bardzo kombinujesz. Skorzystaj z rady kolegi erix.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.