Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zamian znaków z otrzymanych z funkcji htmlspecial.
Forum PHP.pl > Forum > Przedszkole
kropla
witajcie -> może ktoś mi pomoże

w polu tekstowym w formularzu mam wpisany taki ciąg znaków (łącznie z cudzysłowami): "coś"
Kod
$wpis=htmlspecialchars("$pole",ENT_QUOTES);


ta funkcja przerobiła mi wpis na następujący:
Kod
"coś"
i tu pojawia mi się problem:
o ile jak "wyciągam" wartości z bazy danych to oczywiście przeglądarka wyświetla wpis poprawnie "coś" ale potrzebuję wypisać te "coś" (w takim właśnie zapisie z cudzysłowami) do pdf-a.
czy jest jakaś funkcja która spowrotem zamini np
Kod
"
na ". Konkretniej wyciągnę łańcuch z bazy danych z takimi znakami i zamieni mi spowrotem na znaki specjalne questionmark.gif?

wybrałem do użycia właśnie tą funkcję bo w polu będą wpisywane zarówno znaki /, \, ", '
pomóżcie mi proszę ;-(
Speedy
  1. <?php
  2. $zmienna = 'jakistam np. &quot;tytul&quot;';
  3. $zmienna = str_replace('&quot;','"',$zmienna);
  4. echo $zmienna;
  5. ?>
kropla
t o chyba się nie uda bo przecież ta funkcja nie zamienia tylko znak " ale ', < > ] { [ i inne
kszychu
  1. <?php
  2. $zmienna = str_replace(array('&quot;', '&lt;', '&gt;'),array('"', '<', '>'),$zmienna);
  3. ?>

I analogicznie dla wszystkich znaków, które chcesz zamienić.
bigZbig
  1. <?php
  2. function unhtmlentities ($sText) {
  3.  $aTrans = get_html_translation_table (HTML_ENTITIES);
  4.  $aTrans = array_flip ($aTrans);
  5.  return strtr ($sText, $aTrans);
  6. }
  7.  
  8. $text = 'Apresant &, quotes ", less than <, greater than >';
  9.  
  10. $text2 = htmlspecialchars($text);
  11. echo $text2."\n"; //Apresant &amp;, quotes &quot;, less than &lt;, greater than &gt;
  12.  
  13. $text3 = unhtmlentities($text2);
  14. echo $text3."\n"; //Apresant &, quotes ", less than <, greater than >
  15. ?>
kropla
ostatni skrypt jest poprawny ale nie traktuje mi znaku \ .
macie moze jakis pomysl ?
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.