escaping single quotes

Paul Scott pscott at UWC.AC.ZA
Mon May 2 07:50:15 EDT 2005


Two other things you could try:

use htmlspecialchars();

or str_replace the "'" with '

That will make it look like ' . $gemnaam;

which will echo to 'genmaan

--Paul

>>> Ace Suares <ace at SUARES.NL> 05/02/05 1:30 PM >>>
On Monday 02 May 2005 5:08, Paul Scott wrote:
> One word:
>
> addslashes();
>
> PHP does it for you with the function addslashes();
> '[GEMNAAM]'= addslashes('$gemnaam');

Tried that, didn't work. A \' is not recognized by mapserver.
Correct me if I am wrong.

I got the tip from some else (off-list) to us two single quotes in a
row,
like '[GEMNAAM]'=''s-Gravenhage'
Haven't tested it yet.

I would prefer that mapserver/mapscript would honour addslashes().

_Ace


>
>
> --Paul
>
> >>> Ace Suares <ace at SUARES.NL> 05/02/05 4:53 AM >>>
>
> dear list,
>
> I have the following situation:
>
> 1. a column in my shapefile (.dbf) that is called GEMNAAM
> 2. 482 gemeentes (counties), 3 of them starting with an ' (an
apostroph
> or
> single quote).
> 3. a filter that looks like '[GEMNAAM]'='$gemnaam'
> where $gemnaam iterates over (some of) the 482 gemeentes
>
> The problem seems to be that the single quote in the $gemnaam is not
> being
> escaped, and I have no idea how to escape it.
>
> Is there an escape mechanism for single quotes ?
>
> I tried double quotes i.e. '[GEMNAAM]'="$gemnaam" but apparently to no
> avail.
>
> Much obliged for any hint. (However, that won't bring back the past 4
> hours of my life).
>
> _ace

--
It's not possible to treat coherently that which is incoherent.
        - Date's Incoherence Principle

Ace Suares' Internet Consultancy
mail: PObox 2599, 4800 CN Breda, The Netherlands
phone: +31 6 244 33 608 (Jan Veuger, support Netherlands)
emergency: +599 786 23 73
voicemail & fax: +31 848 707 705
web: http://www.suares.nl email: support at suares.nl



More information about the mapserver-users mailing list