|
|
|
|
||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Hi!
I just realised a problem in a system I am doing. I pass data on in a hidden and a text input, of course with value="whatever" The problem happens with value="whatever is there are " one more?" How have people solved this? |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
On Wed, 23 Jan 2008 12:42:07 +0100, jodleren <sonnich@hot.ee> wrote:
> Hi! > > I just realised a problem in a system I am doing. > I pass data on in a hidden and a text input, of course with > value="whatever" > The problem happens with > value="whatever is there are " one more?" > > How have people solved this? htmlspecialchars($string, ENT_QUOTES); -- Rik Wasmus |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
On Wed, 23 Jan 2008 12:50:01 +0100, Rik Wasmus
<luiheidsgoeroe@hotmail.com> wrote: > On Wed, 23 Jan 2008 12:42:07 +0100, jodleren <sonnich@hot.ee> wrote: > >> Hi! >> >> I just realised a problem in a system I am doing. >> I pass data on in a hidden and a text input, of course with >> value="whatever" >> The problem happens with >> value="whatever is there are " one more?" >> >> How have people solved this? > > htmlspecialchars($string, ENT_QUOTES); BTW, if you're just learning this now: be sure you're not vulnerable to XSS attacks! -- Rik Wasmus |
|
|
|
#4 |
|
Messages: n/a
Hébergeur: |
"jodleren" <sonnich@hot.ee> schreef in bericht news:831a0847-15e7-40bf-b7bb-0fa6e8ba3f2b@d21g2000prf.googlegroups.com... > Hi! > > I just realised a problem in a system I am doing. > I pass data on in a hidden and a text input, of course with > value="whatever" > The problem happens with > value="whatever is there are " one more?" > > How have people solved this? http://nl2.php.net/manual/en/function.htmlentities.php |
|
|
|
#5 |
|
Messages: n/a
Hébergeur: |
Rik Wasmus wrote:
> On Wed, 23 Jan 2008 12:42:07 +0100, jodleren <sonnich@hot.ee> wrote: > >> Hi! >> >> I just realised a problem in a system I am doing. >> I pass data on in a hidden and a text input, of course with >> value="whatever" >> The problem happens with >> value="whatever is there are " one more?" >> >> How have people solved this? > > htmlspecialchars($string, ENT_QUOTES); Yes. Any strings embedded in forms and form variables that need to use and display quotes and the like, need expressing in 'proper' HTML. I am not quite sure how it happens, but these seem in my case to get magically removed when stuffing into the MySQL database. I've probably got some magic set up by default ;-) |
|
|
|
#6 |
|
Messages: n/a
Hébergeur: |
On Wed, 23 Jan 2008 13:02:45 +0100, The Natural Philosopher <a@b.c> wrote:
> Rik Wasmus wrote: >> On Wed, 23 Jan 2008 12:42:07 +0100, jodleren <sonnich@hot.ee> wrote: >> >>> Hi! >>> >>> I just realised a problem in a system I am doing. >>> I pass data on in a hidden and a text input, of course with >>> value="whatever" >>> The problem happens with >>> value="whatever is there are " one more?" >>> >>> How have people solved this? >> htmlspecialchars($string, ENT_QUOTES); > > Yes. Any strings embedded in forms and form variables that need to use > and display quotes and the like, need expressing in 'proper' HTML. > > I am not quite sure how it happens, but these seem in my case to get > magically removed when stuffing into the MySQL database. > > > I've probably got some magic set up by default ;-) Nope, just look at the raw POST or GET request. The magic is in the browser/UA (which is the agent who can actually do something with/use html entitities). -- Rik Wasmus |
|
|
|
#7 |
|
Messages: n/a
Hébergeur: |
On 23 Jan, 12:02, The Natural Philosopher <a...@b.c> wrote:
> Rik Wasmus wrote: > > On Wed, 23 Jan 2008 12:42:07 +0100, jodleren <sonn...@hot.ee> wrote: > > >> Hi! > > >> I just realised a problem in a system I am doing. > >> I pass data on in a hidden and a text input, of course with > >> value="whatever" > >> The problem happens with > >> value="whatever is there are " one more?" > > >> How have people solved this? > > > htmlspecialchars($string, ENT_QUOTES); > > Yes. Any strings embedded in forms and form variables that need to use > and display quotes and the like, need expressing in 'proper' HTML. > > I am not quite sure how it happens, but these seem in my case to get > magically removed when stuffing into the MySQL database. > > I've probably got some magic set up by default ;-) Note to OP: PHP historically tried to fix this with a 'magic_quotes_gpc' setting - which didn't work - so more settings got added, until everybody agreed the PHP should do its job and the programmer should do hers. The settings are still there in 5.2 but should all be switched OFF. If you're really interested have a google for the long sad story. Note 2: in HTML and Javascript, you can put double quotes inside single quotes (where they will be ignored) and vice-versa, but (AFAIK) you can't *escape* quotes - hence using htmlentities. HTH C. |
|
|
|
#8 |
|
Messages: n/a
Hébergeur: |
C. (http://symcbean.blogspot.com/) wrote:
> On 23 Jan, 12:02, The Natural Philosopher <a...@b.c> wrote: >> Rik Wasmus wrote: >>> On Wed, 23 Jan 2008 12:42:07 +0100, jodleren <sonn...@hot.ee> wrote: >>>> Hi! >>>> I just realised a problem in a system I am doing. >>>> I pass data on in a hidden and a text input, of course with >>>> value="whatever" >>>> The problem happens with >>>> value="whatever is there are " one more?" >>>> How have people solved this? >>> htmlspecialchars($string, ENT_QUOTES); >> Yes. Any strings embedded in forms and form variables that need to use >> and display quotes and the like, need expressing in 'proper' HTML. >> >> I am not quite sure how it happens, but these seem in my case to get >> magically removed when stuffing into the MySQL database. >> >> I've probably got some magic set up by default ;-) > > Note to OP: PHP historically tried to fix this with a > 'magic_quotes_gpc' setting - which didn't work - so more settings got > added, until everybody agreed the PHP should do its job and the > programmer should do hers. The settings are still there in 5.2 but > should all be switched OFF. If you're really interested have a google > for the long sad story. > I ought to check.. > Note 2: in HTML and Javascript, you can put double quotes inside > single quotes (where they will be ignored) and vice-versa, but (AFAIK) > you can't *escape* quotes - hence using htmlentities. > Found out the hard way here..;-) The other gotcha was trying to print % signs in a printf statement..finally remembered its '%%' in that syntax.... God I am so rusty... > HTH > > C. |
|
![]() |
| Outils de la discussion | |
|
|