(PHP - MYSQL)我想计算“喜欢”。当他们点击一个按钮时,它会添加 1 like
Posted
技术标签:
【中文标题】(PHP - MYSQL)我想计算“喜欢”。当他们点击一个按钮时,它会添加 1 like【英文标题】:(PHP - MYSQL) I want to count "likes". When they click on a button it adds 1 like 【发布时间】:2018-09-07 13:29:51 【问题描述】:这是我的 dao 文件
<?php
require_once( __DIR__ . '/DAO.php');
class insertVoteDAO extends DAO
public function insertVote1()
$sql = "UPDATE `ic_items` SET `flames`+1 WHERE id=1";
$stmt = $this->pdo->prepare($sql);
$stmt->execute();
return $stmt->fetch(PDO::FETCH_ASSOC);
?>
在我的 index.php 中我这样做:
<?php
require_once( __DIR__ . '/dao/insertVoteDAO.php');
$voteDAO = new insertVoteDAO();
if (!empty($_POST))
$insertVote = $voteDAO->insertVote1();
?>
这是我得到的错误:
致命错误:未捕获的 PDOException:SQLSTATE[42000]:语法错误或 访问冲突:1064 您的 SQL 语法有错误;检查 与您的 mysql 服务器版本相对应的手册 在第 1 行的“+1 WHERE id=1”附近使用的语法 /Applications/MAMP/htdocs/backend/major-IC/dao/insertVoteDAO.php:9 堆栈跟踪:#0 /Applications/MAMP/htdocs/backend/major-IC/dao/insertVoteDAO.php(9): PDO->prepare('更新 `ic_item...') #1 /Applications/MAMP/htdocs/backend/major-IC/collection.php(72): insertVoteDAO->insertVote1() #2 main 投入 /Applications/MAMP/htdocs/backend/major-IC/dao/insertVoteDAO.php 第 9 行
它说我在查询中的语法有问题。
我希望有人可以帮助我。
【问题讨论】:
检查错误,然后更新您的帖子以包含它们的内容(如果有的话)并使用适当的错误处理方法。 “它不起作用”不是问题描述。 您的错误消息说:您的 SQL 语法中有语法错误。 +1 似乎是错误的。 How to add plus one (+1) to a SQL Server column in a SQL Query的可能重复 【参考方案1】:这行在flames
+1 有错误:
$sql = "UPDATE ic_items
SET flames
+1 WHERE id=1";
应该是
$sql = "UPDATE ic_items
SET flames
= flames
+1 WHERE id=1";
【讨论】:
【参考方案2】:同意 BanNsS1, 您可以查看以下链接以供进一步参考:Increment a database field by 1
【讨论】:
以上是关于(PHP - MYSQL)我想计算“喜欢”。当他们点击一个按钮时,它会添加 1 like的主要内容,如果未能解决你的问题,请参考以下文章