Skip to main content
Participant
October 14, 2007
Question

UUID-based confirmation works locally, not online

  • October 14, 2007
  • 3 replies
  • 410 views
Hi everyone,

So here's the deal. I've created the standard 'confirm my email address' deal using UUIDs. When I try the code using my local CF install, it works like a charm. The email is generated, I click on the link, and the email address is confirmed in my database. When I upload the code to my webserver, the fun begins:

[Macromedia][SequeLink JDBC Driver][ODBC Socket][Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'emaillist_uuid = 9C2926C9-EAD5-25FB-0BE4A223D324F9BD'.

The error occurred in E:\user\mydomain.ca\email.confirm.cfm: line 38

36 : <cfquery name="confirm" datasource="wcg">
37 : SELECT * FROM emailReg
38 : WHERE emaillist_uuid = #URL.UUID#
39 : </cfquery>

I have no idea why it's giving me a syntax error. I'm a newbie coder, but the whole 'now I work, now I don't' thing is driving me crazy.

The link in the email looks like this:

<a href=" http://www.mydomain.ca/email.confirm.cfm?UUID=#URLEncodedFormat(emaillist_uuid)#">http://www.mydomain.ca/email.confirm.cfm?UUID=#URLEncodedFormat(emaillist_uuid)#</a>

and my confirm query like this:

<!--- UUID query to confirm and update email records --->
<cfquery name="confirm" datasource="wcg">
SELECT * FROM emailReg
WHERE emaillist_uuid = #URL.UUID#
</cfquery>

Why would it give this error? Let me know if you need more details. I've tried dropping the URLencoded deal, I've added single (') and double (") quotes around the #URL.UUID# in my where statement, all with similar results. If I wrap the #URL.UUID# in single quotes, it can't even find the UUID in my table (though it's there - I check). Blargh!

Thanks a pile, everyone. Looking forward to figuring this out.



Text
    This topic has been closed for replies.

    3 replies

    Inspiring
    October 15, 2007
    Droopers wrote:
    > Thanks for the response. Like I said above, I've added single (') and double
    > (") quotes around the #URL.UUID# in my where statement, all with similar
    > results (namely, no success).

    not sure about access but should be single quotes in most db if the UUID is
    defined a varchar or whatever in the db. how is this column defined?

    if you're pulling that url from urlEncodedFormat it would look like this
    "9C2926C9%2DEAD5%2D25FB%2D0BE4A223D324F9BD" & the "%" might be throwing access
    off. try decoding the url UUID w/urlDecode() in your WHERE clause.

    DingosAuthor
    Participant
    October 15, 2007
    Hi Paul,

    Thanks for the response. Like I said above, I've added single (') and double (") quotes around the #URL.UUID# in my where statement, all with similar results (namely, no success).

    If I approach my hosting provider, how do I describe the problem? Could this be a database issue or something? Can anyone else give me a sense of what else to try trouble-shooting?

    Thanks again.
    Inspiring
    October 14, 2007
    Droopers wrote:
    > 38 : WHERE emaillist_uuid = #URL.UUID#

    perhaps should be WHERE emaillist_uuid = '#URL.UUID#'