Sybase NNTP forums - End Of Life (EOL)

The NNTP forums from Sybase - forums.sybase.com - are now closed.

All new questions should be directed to the appropriate forum at the SAP Community Network (SCN).

Individual products have links to the respective forums on SCN, or you can go to SCN and search for your product in the search box (upper right corner) to find your specific developer center.

Expected lexical element not found

2 posts in PHP Last posting was on 2007-06-11 19:41:11.0Z
Brian Posted on 2007-06-11 18:16:11.0Z
From: "Brian" <brian_cowan@gentek.ca>
Newsgroups: advantage.PHP
Subject: Expected lexical element not found
Date: Mon, 11 Jun 2007 14:16:11 -0400
Lines: 40
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.3028
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3028
X-RFC2646: Format=Flowed; Original
NNTP-Posting-Host: 206.47.136.42
Message-ID: <466d901d@solutions.advantagedatabase.com>
X-Trace: 11 Jun 2007 12:10:37 -0700, 206.47.136.42
Path: solutions.advantagedatabase.com!solutions.advantagedatabase.com!206.47.136.42
Xref: solutions.advantagedatabase.com Advantage.PHP:785
Article PK: 1135269

Hi,

I am having trouble with one of my forms. The form has a memo area and when
the update takes place I get the lexical error....

Here is the SQL statement.

UPDATE tbl_notesins SET ni_id = '07-008', ni_subject = 'Miscoat pour
38x567', ni_par = 'Gabriel Robillard', ni_date = '20070611', ni_memo =
'Proc?dure concernant le 38 x 567, 2 c?t?s peints (mieux connu sous le nom
\" d''accessoires \"). D?sormais, afin de satisfaire aux sp?cifications
d''?paisseur de film, nous utiliserons un \" miscoat \" de la couleur
demand?e pour peindre le dessous de la feuille d''aluminium. Vous devrez
toujours consid?rer les informations suivantes lorsque vous peindrez ce
produit: . Vous devrez toujours chercher ? maintenir le film de ? miscoat ?
? 0.30 mils. . Les ? miscoats ? seront cr?er ici, ? partir de la couleur
indiqu?e et d'Alcan 17. . ? l'aide de la touche F5, vous serez en mesure de
cr?er un nouveau num?ro de baril pour la peinture modifi?e. La nouvelle
carte sera gard?e dans le ? cardex ?, sous la section miscoat gentek apr?s
avoir ?t? convenablement identifi?e. (Le # de baril utilis? pour la cr?ation
du ? miscoat ? sera mis ? 0 litres par l'op?rateur de peinture ? l'aide de
la touche F4). . Les barils contenants du ? miscoat ? devront eux aussi ?tre
clairement identifi?s et rang?s dans l'espace identifi? (chambre de
reliance) afin d'?viter toutes confusions avec la peinture originale. . Les
barils de ? miscoat ? devront ?tre mis ? jour comme les barils de peinture
apr?s utilisation. (Touche F4) . Vous aurez acc?s ? l'inventaire des ?
miscoats ? avec la touche F9. . ( ?) Pour toutes questions si rapportant,
veuillez communiquer avec moi.' WHERE ni_id = '07-008'
Warning: SQL error: [Extended Systems][Advantage SQL][ASA] Error 7200: AQE
Error: State = 42000; NativeError = 2115; [Extended Systems][Advantage SQL
Engine]Expected lexical element not found: identifier or expression There
were problems parsing the SET list in the UPDATE statement. -- Location of
error in the SQL statement is: 160 (line: 6 column: 13), SQL state HY000 in
SQLExecDirect in c:\inetpub\wwwroot\dev\fpgq-423-b.php on line 129

Thanks

Brian


Lance Schmidt Posted on 2007-06-11 19:41:11.0Z
From: "Lance Schmidt" <LanceSc@ExtendSys.com>
Newsgroups: advantage.PHP
References: <466d901d@solutions.advantagedatabase.com>
Subject: Re: Expected lexical element not found
Date: Mon, 11 Jun 2007 13:41:11 -0600
Lines: 63
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.3028
X-RFC2646: Format=Flowed; Response
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3028
NNTP-Posting-Host: 10.24.38.197
Message-ID: <466da439@solutions.advantagedatabase.com>
X-Trace: 11 Jun 2007 13:36:25 -0700, 10.24.38.197
Path: solutions.advantagedatabase.com!solutions.advantagedatabase.com!10.24.38.197
Xref: solutions.advantagedatabase.com Advantage.PHP:786
Article PK: 1135270

Hi Brian,

It looks like part of the memo text you are trying to set has an undelimited
string delimiter in it. You can either delimit all the string delimiters by
doubling them up or a better idea would be to use parameters. Not using
parameters is a major security problem because it opens you up to the
possibility of SQL injection attacks. Consider the case where someone
enters in your memo form.

''; DROP TABLE tbl_notesins; --

This will most likely create two valid SQL statements. One is an update
statement and the second is a drop statement.

Best Regards,

Lance Schmidt
Advantage R&D

"Brian" <brian_cowan@gentek.ca> wrote in message
news:466d901d@solutions.advantagedatabase.com...
> Hi,
>
> I am having trouble with one of my forms. The form has a memo area and
> when the update takes place I get the lexical error....
>
> Here is the SQL statement.
>
> UPDATE tbl_notesins SET ni_id = '07-008', ni_subject = 'Miscoat pour
> 38x567', ni_par = 'Gabriel Robillard', ni_date = '20070611', ni_memo =
> 'Proc?dure concernant le 38 x 567, 2 c?t?s peints (mieux connu sous le nom
> \" d''accessoires \"). D?sormais, afin de satisfaire aux sp?cifications
> d''?paisseur de film, nous utiliserons un \" miscoat \" de la couleur
> demand?e pour peindre le dessous de la feuille d''aluminium. Vous devrez
> toujours consid?rer les informations suivantes lorsque vous peindrez ce
> produit: . Vous devrez toujours chercher ? maintenir le film de ?
> miscoat ? ? 0.30 mils. . Les ? miscoats ? seront cr?er ici, ? partir de la
> couleur indiqu?e et d'Alcan 17. . ? l'aide de la touche F5, vous serez en
> mesure de cr?er un nouveau num?ro de baril pour la peinture modifi?e. La
> nouvelle carte sera gard?e dans le ? cardex ?, sous la section miscoat
> gentek apr?s avoir ?t? convenablement identifi?e. (Le # de baril utilis?
> pour la cr?ation du ? miscoat ? sera mis ? 0 litres par l'op?rateur de
> peinture ? l'aide de la touche F4). . Les barils contenants du ? miscoat ?
> devront eux aussi ?tre clairement identifi?s et rang?s dans l'espace
> identifi? (chambre de reliance) afin d'?viter toutes confusions avec la
> peinture originale. . Les barils de ? miscoat ? devront ?tre mis ? jour
> comme les barils de peinture apr?s utilisation. (Touche F4) . Vous aurez
> acc?s ? l'inventaire des ? miscoats ? avec la touche F9. . ( ?) Pour
> toutes questions si rapportant, veuillez communiquer avec moi.' WHERE
> ni_id = '07-008'
> Warning: SQL error: [Extended Systems][Advantage SQL][ASA] Error 7200: AQE
> Error: State = 42000; NativeError = 2115; [Extended Systems][Advantage SQL
> Engine]Expected lexical element not found: identifier or expression There
> were problems parsing the SET list in the UPDATE statement. -- Location of
> error in the SQL statement is: 160 (line: 6 column: 13), SQL state HY000
> in SQLExecDirect in c:\inetpub\wwwroot\dev\fpgq-423-b.php on line 129
>
> Thanks
>
> Brian
>