Jump to content

Archived

This topic is now archived and is closed to further replies.

pezkingrich2

trying $foo++ from SQL result

Recommended Posts

I\'m trying to add one to the \'comment count\' when someone submits a comment! The sql error i get is:

You have an error in your SQL syntax near \'INSET INTO users (comments) VALUES (\'7\') WHERE username=\'Rich\'\' at line 1

 

Code:

$get_comment = mysql_query(\"SELECT comments FROM users WHERE username=\'$username\'\") or die(mysql_error());

$new_comment = $get_comment++;

 

mysql_query(\"INSET INTO users (comments) VALUES (\'\".$new_comment.\"\') WHERE username=\'$username\'\") or die(mysql_error());

echo \"Comment entered. Thanks!<BR>n\";

 

 

 

The comment value is stored in the databse as an INTEGER. I tried echoing the values, for $new_comment i get \'7\' and for $get_comment i get \'Resource id #6\' . Ahh wht am i doing wrong?! (i manually entered the value 5 for comments).

Share this post


Link to post
Share on other sites

Thats was more of spelling mistake not \"INSET\" its \"INSERT\"

 

Try this

 

mysql_query("INSERT INTO users (comments) VALUES (\'$new_comment\') WHERE username=\'$username\'") or die(mysql_error()); 

echo "Comment entered. Thanks!<BR>n"; 

Share this post


Link to post
Share on other sites

ahh, i knew that.. thanks, but still not solved, now the error is:

 

You have an error in your SQL syntax near \'WHERE username=Rich\' at line 1[/b]

Share this post


Link to post
Share on other sites

How can a insert have a where clause???

 

Try to use a update if you wnat to update!!!!! :roll:

Share this post


Link to post
Share on other sites

problem solved!

 

UPDATE users SET comments=comments+1 WHERE username=\'$username\'

 

I couldn\'t get it to add 1 in php, but this works in mysql. Thanks for your help mod.

Share this post


Link to post
Share on other sites

I know that problem is solved but I just noticed the line

 

[php:1:970cc41601]<?php

$new_comment = $get_comment++;

?>[/php:1:970cc41601]

 

As you are using \'post-increment\', thisis saying:

 

Assign value in $get_comment to $new_comment then increment $get_comment

 

What you wanted was a pre-increment :

[php:1:970cc41601]<?php

$new_comment = ++$get_comment;

?>[/php:1:970cc41601]

 

which increments $get_comment then assigns the new value to $new_comment

 

hth

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.