Re: [PHP-DB] Re: Stuck in apostrophe hell

[email protected] (Karl DeSaulniers)
Newsgroups php.db
Message-ID <[email protected]>
On Aug 3, 2010, at 8:08 AM, Peter Lind wrote:

> On 3 August 2010 15:04,  <[email protected]> wrote:
>> Yes, I may have mixed up the input and output from different  
>> iterations of
>> running it. Let me try posting this again although it may not be  
>> an issue.
>> Once again if I enter two sequential apostrophes in the name  
>> (O''Brien)
>> the INSERT passes right through to MySQL without an error.
>>
>> THE INPUT:
>>
>> $sql_insert_registration = sprintf("INSERT INTO
>>  Registrations (
>>    Class_ID,
>>    prid,
>>    Registrant,
>>    Company,
>>    Phone,
>>    Email
>>  )
>> VALUES (
>>    $_POST[Class_ID],
>>    $_POST[prid],
>>    '%s',".
>>    parseNull($_POST['Company']).",
>>    '$_POST[Phone]',
>>    '$_POST[Email]'
>> )", mysql_real_escape_string($_POST['Registrant']));
>>
>> echo "<pre>$_POST['Registrant".$_POST["Registrant"]."</pre>";
>> echo "<pre>".mysql_real_escape_string($_POST["Registrant"])."</pre>";
>> echo "<pre>".$sql_insert_registration."</pre>";
>>
>>
>> THE OUTPUT:
>>
>> Brian O'Brien
>> Brian O\'Brien
>> INSERT INTO
>>  Registrations (
>>    Class_ID,
>>    prid,
>>    Registrant,
>>    Company,
>>    Phone,
>>    Email
>>  )
>> VALUES (
>>    355,
>>    257,
>>    'Brian O\'Brien',NULL,
>>    '612-456-5678',
>>    '[email protected]'
>> )
>> Error: You have an error in your SQL syntax; check the manual that
>> corresponds to your MySQL server version for the right syntax to  
>> use near
>> 'Brien', 'Class registration confirmation', ' This email ' at line 16
>>
>
> Strangely, you have still failed to provide the input that is actually
> sent to mysql. Look at the error code: "... for the right syntax to
> use near 'Brien', 'Class registration confirmation', ' This email '" -
> "Class registration confirmation" does not appear anywhere in the
> output section you posted but it appears in the mysql error.
>  I'd do as Bret suggested and turn on query logging in mysql to see
> what is actually received.
>
> Regards
> Peter
>
> -- 
> <hype>
> WWW: http://plphp.dk / http://plind.dk
> LinkedIn: http://www.linkedin.com/in/plind
> BeWelcome/Couchsurfing: Fake51
> Twitter: http://twitter.com/kafe15
> </hype>
>
> --
> PHP Database Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
Can't you just..

VALUES = mysql_real_escape(VALUES);
before submitting
or something similar?

maybe urlencode

Karl DeSaulniers
Design Drumm
http://designdrumm.com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.