Re: Having Trouble With Session Variable in Query Statement
| From: | Micah Gersten | Date: | Mon, 23 Feb 2009 20:51:19 +0000 |
| Subject: | Re: Having Trouble With Session Variable in Query Statement | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-288709@lists.php.net to get a copy of this message | ||
Paul M Foster wrote:
> On Mon, Feb 23, 2009 at 12:34:58PM -0800, revDAVE wrote:
>
>
>> Hi folks,
>>
>> I'm trying to make an update query with a session variable...
>>
>> It creates this error:
>>
>> Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting
>> T_STRING or T_VARIABLE or T_NUM_STRING in ...
>>
>> Q: the session var shows ok on the page :
>> ID <?php echo $_SESSION['now_poid']; ?>
>> - so how do I fix the error?
>>
>> ==========================================
>>
>> <?php require_once('../Connections/dblink.php');
>> if(!session_id()) session_start();
>> $amt = 18;
>> $id1 = 8;
>> $_SESSION['thisid']=8;
>> $id2 = $_SESSION['thisid'] ;
>>
>>
>> //these 3 work
>> $updateSQL ="UPDATE
mytable SET thetotal=$amt WHERE
>> id=8";
>> $updateSQL ="UPDATE mytable SET thetotal=$amt WHERE
>> id=$id1";
>> $updateSQL ="UPDATE mytable SET thetotal=$amt WHERE
>> id=$id2"; // uses
>> $_SESSION['thisid']
>>
>> //but this does not..
>> $updateSQL ="UPDATE mytable SET thetotal=$amt WHERE
>> id=$_SESSION['thisid']";
>>
>
> Don't single quote values inside array brackets when the whole
> expression is in double quotes. You've got:
>
> "... $_SESSION['thisid']";
>
> Do this instead:
>
> "... $_SESSION[thisid]";
>
> Paul
>
Better off doing this so you don't get into the habit of not using
quotes around array params:
"... {$_SESSION['thisid']}";
See this:
http://us2.php.net/manual/en/language.types.string.php#language.types.string.parsing
Thank you,
Micah Gersten
onShore Networks
Internal Developer
http://www.onshore.com