Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML]Problem z cudzysłowem w INPUT
Forum PHP.pl > Forum > Przedszkole
M@X
Mam w formularzu zapisującym do bazy pole INPUT
Problem jest w tym że jak edytuje sobie dany rekord i w tym polu input wpisze cudzysłów to do bazy zapisze prawidłowo, ale w samym polu input po kliknięciu zapisz już tego cudzysłowa nie widać, co za tym idzie jak ponownie otworze ten rekord to juz w inpucie nie widać tego cudzysłowa, pomimo że w bazie jest, więc jak tak zapisze to z bazy kasuje wszystko co jest po cudzysłowiu.

W kodzie mam wszystko prawidłowo, bo jak dam pole typu TEXTAREA to cudzysłowia prawidłowo się wpisują.

Moje pytanie w takim razie w jaki sposób sprawić aby INPUT przyjmował cudzysłowia ?

Pozdrawiam.




Problem rozwiązany. Znalazłem w końcu odpowiedź. Temat można wykasować.
wookieb
Kod
echo '<input type="text" value="'.str_replace('"', '&quot;').'">';

Przy wyswietlaniu w value zastepujesz go encja.
M@X
hmmm ja znalazłem aby poprzedzić to value="'.htmlspecialchars(...........
w takim razie jaka jest różnica między htmlspecialchars a str_replace ?
wookieb
Taka jaka znajdziesz w manualu na stronie
http://php.net/str_replace
a
http://php.net/htmlspecialchars
gox
robisz htmlspacialchars() wstawiajac do inputa, a potem htmlspecialchars_decode() przyjmujac z inputa.... tyle ze ta druga funkcja nie wystepuje w php4, ale mozna ja stworzyc wlasnodzielnie o tak:

  1. <?php
  2. function htmlspecialchars_decode($str) {
  3.    $translation = array_flip( get_html_translation_table(HTML_SPECIALCHARS, ENT_COMPAT));
  4.    return strtr($str,$translation);
  5. }
  6. ?>


heh, tylko ze kto poza mna upiera sie jeszcze przy tworzeniu skryptow zgodnych z php4 tongue.gif
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.