Session variables and sql...

Ask a Question related to Coldfusion Database Access, Design and Development.

  1. #1

    Default Session variables and sql...

    hi guys, right made big progress since i was last here but now I'm getting a
    "syntax error in INSERT INTO statement" message....when trying to insert the
    Session variables into the database...i've checked and double checked and can't
    see anything wrong...used cfdump and all the variables are there ready to
    go....any clues?

    here's the error...

    Error Executing Database Query.
    Syntax error in INSERT INTO statement.

    The error occurred in C:\CFusionMX7\wwwroot\ukdoorstaff\activateprocess. cfm:
    line 40

    38 : #Session.regPhoneNumber#,
    39 : '#Session.regHearAboutUs#',
    40 : '#Session.regSuggestions#'
    41 : )
    42 : </cfquery>



    --------------------------------------------------------------------------------

    SQL INSERT INTO dRegDetails (dUserName, dPassword, dFirstName, dSurName,
    dEmail, dDOB, dGender, dSIA, dAddress1, dAddress2, dTownCity, dCounty,
    dPostCode, dPhoneNumber, dHearAboutUs, dSuggestions) VALUES ( 'tf', 'tf', 'tf',
    'tf', 'tf@tf.com', '10/03/1982', 'Male', 'No', '', '', 'jh', 'kjh', '', ,
    '...please select...', '' )
    DATASOURCE cfukdoorstaff
    VENDORERRORCODE 3092
    SQLSTATE &nbsp;

    and the code....

    <cflock scope="Session" timeout="60" throwOnTimeout="yes" type="readOnly">
    <cfquery datasource="cfukdoorstaff" name="insertRegDetails">
    INSERT INTO dRegDetails (dUserName, dPassword, dFirstName, dSurName,
    dEmail, dDOB, dGender, dSIA, dAddress1, dAddress2, dTownCity, dCounty,
    dPostCode, dPhoneNumber, dHearAboutUs, dSuggestions)
    VALUES (
    '#Session.regUserName#',
    '#Session.regPassword#',
    '#Session.regFirstName#',
    '#Session.regSurName#',
    '#Session.regEmail#',
    '#Session.regDOB#',
    '#Session.regGender#',
    '#Session.regSIA#',
    '#Session.regAddress1#',
    '#Session.regAddress2#',
    '#Session.regTownCity#',
    '#Session.regCounty#',
    '#Session.regPostCode#',
    #Session.regPhoneNumber#,
    '#Session.regHearAboutUs#',
    '#Session.regSuggestions#'
    )
    </cfquery>
    <cfquery datasource="cfukdoorstaff" name="insertSubDetails">
    INSERT INTO dSubscriptionDetails (dID, dEmail, dInitialDateReg,
    dCurrentSubStart, dCurrentSubExpiry, dAccountActive)
    VALUES (
    SELECT dID, dEmail, '#Session.regCurrentDate#',
    '#Session.regCurrentDate#', '#Session.regSubExpiryDate#', 'Yes'
    FROM dRegDetails
    WHERE dEmail = '#Session.regEmail#' )
    </cfquery>
    </cflock>

    any ideas?

    P_Roberts Guest

  2. Similar Questions and Discussions

    1. #39833 [NEW]: Session variables overwritten by local variables (register_globals=off)
      From: sup1382 at accedo dot es Operating system: OpenBSD 3.9 PHP version: 5.2.0 PHP Bug Type: Session related Bug...
    2. #39447 [NEW]: Want to optionally handle apc_upload_progress variables using session variables
      From: krudtaa at yahoo dot com Operating system: All PHP version: 5.2.0 PHP Bug Type: Feature/Change Request Bug...
    3. Session Variables in .NET
      Hi, I am starting to develop an ASP.Net application. I will have a logon page which will take a UserName and Password. A Stored Procedure will...
    4. Session problem when setting session variables in files that are in different directories
      I am running PHP 4.3.0 on a WinXPpro machine and I recently got problem with sessions. What I am building is a loginsystem and I need to save...
    5. variables that change session variables
      Hi, I'm currently writing a mulit-page form app that uses a session to retain data from each form element in order for the user to jump between...
  3. #2

    Default Re: Session variables and sql...

    >... any ideas?
    Yes, three.

    1) With no single quotes around #Session.regPhoneNumber# , Coldfusion
    expected you to insert, for example, a numeric value or date. You inserted
    nothing.

    2) The value inserted for dHearAboutUs, "...please select..." , suggests to me
    that
    a no option was selected in a form's select-field. I would make sure that one
    option is
    always selected by default, e.g. by using the Selected attribute.

    3) It is recommended coding practice to keep queries out of Coldfusion locks
    and locks
    out of queries. As database servers usually enforce their own locks, the
    combination
    might cause a bottleneck. However, locking session code as you have done is
    also
    good coding practice. A way around the apparent dilemma is to temporarily
    transfer
    the session variables to the request scope.





    <cflock scope="Request" timeout="60" throwOnTimeout="yes" type="readOnly">
    <cfset Request.regUserName="#Session.regUserName#">
    <cfset Request.regPassword="#Session.regPassword#">
    <cfset Request.regFirstName="#Session.regFirstName#">
    <cfset Request.regSurName="#Session.regSurName#">
    <cfset Request.regEmail="#Session.regEmail#">
    <cfset Request.regDOB="#Session.regDOB#">
    <cfset Request.regGender="#Session.regGender#">
    <cfset Request.regSIA="#Session.regSIA#">
    <cfset Request.regAddress1="#Session.regAddress1#">
    <cfset Request.regAddress2="#Session.regAddress2#">
    <cfset Request.regTownCity="#Session.regTownCity#">
    <cfset Request.regCounty="#Session.regCounty#">
    <cfset Request.regPostCode="#Session.regPostCode#">
    <cfset Request.regPhoneNumber="#Session.regPhoneNumber#">
    <cfset Request.regHearAboutUs="#Session.regHearAboutUs#">
    <cfset Request.regSuggestions="#Session.regSuggestions#">
    <cfset Request.regCurrentDate="#Session.regCurrentDate#">
    <cfset Request.regSubExpiryDate="#Session.regSubExpiryDat e#">
    <cfquery datasource="cfukdoorstaff" name="insertRegDetails">
    </cflock>
    <cfquery datasource="cfukdoorstaff" name="insertRegDetails">
    INSERT INTO dRegDetails (dUserName, dPassword, dFirstName, dSurName, dEmail,
    dDOB, dGender, dSIA, dAddress1, dAddress2, dTownCity, dCounty, dPostCode,
    dPhoneNumber, dHearAboutUs, dSuggestions)
    VALUES (
    '#Request.regUserName#',
    '#Request.regPassword#',
    '#Request.regFirstName#',
    '#Request.regSurName#',
    '#Request.regEmail#',
    '#Request.regDOB#',
    '#Request.regGender#',
    '#Request.regSIA#',
    '#Request.regAddress1#',
    '#Request.regAddress2#',
    '#Request.regTownCity#',
    '#Request.regCounty#',
    '#Request.regPostCode#',
    #Request.regPhoneNumber#,
    '#Request.regHearAboutUs#',
    '#Request.regSuggestions#')
    </cfquery>
    <cfquery datasource="cfukdoorstaff" name="insertSubDetails">
    INSERT INTO dSubscriptionDetails (dID, dEmail, dInitialDateReg,
    dCurrentSubStart, dCurrentSubExpiry, dAccountActive)
    VALUES
    SELECT dID, dEmail, '#Session.regCurrentDate#', '#Request.regCurrentDate#',
    '#Request.regSubExpiryDate#', 'Yes'
    FROM dRegDetails
    WHERE dEmail = '#Request.regEmail#'
    </cfquery>

    BKBK Guest

  4. #3

    Default Re: Session variables and sql...

    excellent thankyou...idea no.1 worked in correcting that problem...idea no. 2
    the "...please select..." is the first value in the list so thats cool, and
    number 3, well I used your code and thats sorted that issue.

    however coming up with another error now, probably something i'm overlooking
    again, but can't figure it out...

    Error Executing Database Query.
    Syntax error in INSERT INTO statement.

    The error occurred in C:\CFusionMX7\wwwroot\ukdoorstaff\activateprocess. cfm:
    line 66

    64 : SELECT dID, dEmail, #Request.regCurrentDate#, #Request.regCurrentDate#,
    #Request.regSubExpiryDate#, 'Yes'
    65 : FROM dRegDetails
    66 : WHERE dEmail = '#Request.regEmail#'
    67 : </cfquery>
    68 : <cfoutput>



    --------------------------------------------------------------------------------

    SQL INSERT INTO dSubscriptionDetails (dID, dEmail, dInitialDateReg,
    dCurrentSubStart, dCurrentSubExpiry, dAccountActive) VALUES SELECT dID, dEmail,
    05/12/2005, 05/12/2005, 05/12/2006, 'Yes' FROM dRegDetails WHERE dEmail =
    'asd@fd.co.uk'
    DATASOURCE cfukdoorstaff
    VENDORERRORCODE 3092
    SQLSTATE &nbsp;



    <cfquery datasource="cfukdoorstaff" name="insertSubDetails">
    INSERT INTO dSubscriptionDetails (dID, dEmail, dInitialDateReg,
    dCurrentSubStart, dCurrentSubExpiry, dAccountActive)
    VALUES
    SELECT dID, dEmail, #Request.regCurrentDate#, #Request.regCurrentDate#,
    #Request.regSubExpiryDate#, 'Yes'
    FROM dRegDetails
    WHERE dEmail = '#Request.regEmail#'
    </cfquery>

    P_Roberts Guest

  5. #4

    Default Re: Session variables and sql...

    Drop the VALUES from your insert, since you are doing a SELECT

    Phil


    <cfquery datasource="cfukdoorstaff" name="insertSubDetails">
    INSERT INTO dSubscriptionDetails (dID, dEmail, dInitialDateReg,
    dCurrentSubStart, dCurrentSubExpiry, dAccountActive)
    SELECT dID, dEmail, #Request.regCurrentDate#, #Request.regCurrentDate#,
    #Request.regSubExpiryDate#, 'Yes'
    FROM dRegDetails
    WHERE dEmail = '#Request.regEmail#'
    </cfquery

    paross1 Guest

  6. #5

    Default Re: Session variables and sql...

    excellent thanks - knew t would be something simple!
    P_Roberts Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139