Re: My function returns true but my code does not execute
Available news archives: comp.lang.tcl - comp.lang.python - comp.security.firewalls - sci.crypt - comp.lang.php - comp.lang.javascript
Google
 
Web news.hping.org


comp.lang.php archive

Re: My function returns true but my code does not execute

From: John Moore <nobody@nomail.com>
Date: Mon Oct 31 2005 - 13:40:03 CET

On Mon, 31 Oct 2005 09:54:48 +0100, in comp.lang.php Ewoud Dronkert
<firstname@lastname.net.invalid> wrote:

>John Moore wrote:
>> $query = "UPDATE
>> about
>> SET
>> category_id = $category_id_new
>> WHERE
>> about_id = $_SESSION[about_id]";
>
>You can't use multi-line strings like that in PHP. I presume in your code
>it is actually written:
>
>> $query = "UPDATE about SET category_id = $category_id_new WHERE about_id = $_SESSION[about_id]";
>
>Then you can't use array values like that in strings. Zeldor was partly
>right that it needs quotes around the key (because that is a string, not a
>constant), but it also needs curly braces around the whole name if you are
>going to use it inside the string:
>
> $query = "... about_id = {$_SESSION['about_id']}";
>
>For goodness sake, see
>http://php.net/manual/en/language.types.string.php#language.types.string.parsing

Thanks,

I changed the query to read like this:

$query = "UPDATE about SET category_id = $category_id_new WHERE
about_id = {$_SESSION['about_id']}";

All on one single line.

But no dice- no update occurs! I've echoed out the query itself, and
the variables are showing up as they should:

UPDATE about SET category_id = 31 WHERE about_id = 5

I wrote this function to execute 2 more functions IF this query
evaluates true. Both these functions are executing, but the
category_id field is not updating.

I dont mind rewriting my code, but I wish I could understand why when
it doesn't work as expected.

Thanks to all of you for trying to help.

J Moore
Received on Mon Nov 21 02:53:30 2005