我希望当有人投票获取文章信息时,它会被插入到两个表格中 (或运行任何两个查询,无关紧要,插入,更新或选择)。 我正在使用Joomla! 2.5.0稳定。
components/com_content/models/article.php
public function storeVote($pk = 0, $rate = 0)
执行此查询时:
$db->setQuery(
'INSERT INTO #__content_rating ( content_id, lastip, rating_sum, rating_count )' .
' VALUES ( '.(int) $pk.', '.$db->Quote($userIP).', '.(int) $rate.', 1 )'
我希望#__content
表中的信息也会插入。
我如何实现这一目标?
我试过跟随,但它不起作用:
$db->setQuery(
'INSERT INTO #__content_rating ( content_id, lastip, rating_sum, rating_count )' .
' VALUES ( '.(int) $pk.', '.$db->Quote($userIP).', '.(int) $rate.', 1 )'
// 'UPDATE #__content ' .
' SET testas2 = rating_sum + '.(int) $rate .
' WHERE content_id = '.(int) $pk
// 'INSERT INTO #__content ( testas2 )' .
' VALUES (7799)'
);
这是带有语法的图片: http://i49.tinypic.com/1ruux0.jpg
我读过MySQL事务,在这种情况下它会帮助我吗?如果是,那么语法应该是什么样子? 任何建议都非常感谢。
答案 0 :(得分:0)
尝试直接在DB中运行以下命令(使用phpmyAdmin):
UPDATE edqfi_content_rating , edqfi_content
SET edqfi_content_rating.rating_count = edqfi_content_rating.rating_count + 1,
edqfi_content_rating.rating_sum = edqfi_content_rating.rating_sum + 3,
edqfi_content_rating.lastip = '88.119.189.154',
edqfi_content.testas2=edqfi_content_rating.rating_sum + 3
WHERE edqfi_content_rating.content_id = 13
AND edqfi_content.id= 13
并查看是否有任何错误。