[PHP-DB] UPDATE instead of INSERT INTO

2009-09-05 Thread Ron Piggott
I made an application which lets users rate web site content. At the heart of 
the application is this mySQL query: 

INSERT INTO `ratings` ( `reference` , `content_type` , `content_reference` , 
`language` , `ip_address` , `rating_timestamp` , `rating` ) VALUES ( NULL , 
'$content_type','$content_reference' , '$language', '$ip_address', NOW( ) , 
'$user_rating' ); 

I am wondering if there is a way to check if the user has already voted (IE If 
there is already a matching record with the same content_type, 
content_reference, language, ip_address values) so all that happens is an 
UPDATE to the rating field?

Ron


Re: [PHP-DB] UPDATE instead of INSERT INTO

2009-09-05 Thread Waynn Lue
INSERT INTO ON DUPLICATE KEY UPDATE is what you're looking for.

On 9/5/09, Ron Piggott ron@actsministries.org wrote:
 I made an application which lets users rate web site content. At the heart
 of the application is this mySQL query:

 INSERT INTO `ratings` ( `reference` , `content_type` , `content_reference` ,
 `language` , `ip_address` , `rating_timestamp` , `rating` ) VALUES ( NULL ,
 '$content_type','$content_reference' , '$language', '$ip_address', NOW( ) ,
 '$user_rating' );

 I am wondering if there is a way to check if the user has already voted (IE
 If there is already a matching record with the same content_type,
 content_reference, language, ip_address values) so all that happens is an
 UPDATE to the rating field?

 Ron


-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DB] UPDATE instead of INSERT INTO

2009-09-05 Thread Ron Piggott

Thanks

- Original Message - 
From: Waynn Lue waynn...@gmail.com

To: Ron Piggott ron@actsministries.org; php-db@lists.php.net
Sent: Saturday, September 05, 2009 4:45 PM
Subject: Re: [PHP-DB] UPDATE instead of INSERT INTO



INSERT INTO ON DUPLICATE KEY UPDATE is what you're looking for.

On 9/5/09, Ron Piggott ron@actsministries.org wrote:
I made an application which lets users rate web site content. At the 
heart

of the application is this mySQL query:

INSERT INTO `ratings` ( `reference` , `content_type` , 
`content_reference` ,
`language` , `ip_address` , `rating_timestamp` , `rating` ) VALUES ( NULL 
,
'$content_type','$content_reference' , '$language', '$ip_address', NOW( ) 
,

'$user_rating' );

I am wondering if there is a way to check if the user has already voted 
(IE

If there is already a matching record with the same content_type,
content_reference, language, ip_address values) so all that happens is an
UPDATE to the rating field?

Ron








No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.409 / Virus Database: 270.13.78/2347 - Release Date: 09/05/09 
05:51:00



--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php