gpt4 book ai didi

php - 计数器无法记录计数次数

转载 作者:行者123 更新时间:2023-11-29 06:04:57 25 4
gpt4 key购买 nike

当有人单击我的网页上的按钮时,此 JavaScript 代码将运行:

function count() {
var xmlHttp = getXMLHttp(); // XMLHttpRequest object
xmlHttp.open("GET", "count.php", true);
xmlHttp.send(null);
}

然后,这个 PHP 脚本被执行:(常见)

<?php

mysql_connect("host","username","password");
mysql_select_db('database');
mysql_query('UPDATE table SET field = field + 1');

?>

问题可能有所不同。假设我点击了十次,它只记录了 8 次左右。有时有效,有时则无效。

最佳答案

您想要禁用按钮的单击功能,直到 Ajax 请求完成并返回成功消息。例如,查看 StackOverflow 上的评论机制。您不能按两次,因为第一次后它会被禁用。

try {
$pdo = new PDO("mysql:host=localhost;dbname=tests", "user", "pass");
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
//Have PDO throw exceptions on errors. That way you don't miss 'em.
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$sql = "UPDATE `table` SET `field` = `field`+1";

$stmt = $pdo->prepare($sql);
$stmt->execute();
}
catch (PDOException $e) {
//In case an error has occurred, it will be caught and handled here.
die("There was an error with the database! " . $e->getMessage());
}

这就是我在 PDO 中的做法。

关于php - 计数器无法记录计数次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11909096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com