php - 截断不正确的 DOUBLE 值:| 尝试更新数据库中的数据时出错
问题描述
我正在尝试进行民意调查,其中用户通过 PHP 页面进行投票,将数据发送到存储民意调查结果值的数据库。
我还试图让同一个帐户不能多次投票。在这方面,我遇到了障碍。当我将ID
代码中的$userid
which 从查询中收集然后传递给vote.php
in a$_SESSION
时,它会说
截断不正确的 DOUBLE 值:3。
它正在调用我的变量 DOUBLE 值?
Login.php 代码:
$sqlID = "SELECT ID FROM Users WHERE Konto = '$user'";
$checkID = $connection->query($sqlID);
while ($row = $checkID->fetch_assoc()) {
$setID = $row['ID']."<br>";
}
$_SESSION['sess_id'] = $setID;
$_SESSION['inloggning'] = TRUE; // Ger inloggning en boolean som används senare.
Vote.php 代码:
$userid = $_SESSION['sess_id'];
$voteValidate = "SELECT has_voted FROM Users WHERE ID = '$userid'";
$voteValidationResult = $connection->query($voteValidate);
while ($row = $voteValidationResult->fetch_assoc()) {
$checkVoted = $row['has_voted']."<br>";
}
if ($_SESSION['inloggning'] != TRUE || $checkVoted != 0) { // Tar variabler från login.php och kontrollerar dem, om de inte är sanna så skickas man tillbaka.
echo "<script type='text/javascript'>alert('Du är antingen inte inloggad eller så har du redan röstat.');</script>";
// header("Location: skyddad_sida.php"); // Skickar tillbaka en användare om de har kommit till skyddad_sida.php utan att gå igenom login.php.
exit;
}
if (isset($_POST["voteOriginal"])) {
$voteQuery = "UPDATE polls_choices SET poll_vote_amount = poll_vote_amount + 1 WHERE poll_choice_name = 'Original'";
$voteExecute = $connection->query($voteQuery); // Utför förfrågan i databas.
$preventVote = "UPDATE users SET has_voted = 1 WHERE ID = '$userid'";
if ($connection->query($preventVote) === TRUE) { // Queryar databasen och kontrollerar att det fungerade.
echo "<strong><font color ='green'>Bra.</font></strong>";
} else { // Annars blir det en error.
echo "Error: " . $preventVote . "<br>" . $connection->error . "$userid";
}
解决方案
推荐阅读
- python - How do i find variable length Huffman codes in a string for a best fit?
- javascript - 有没有办法通过 NodeJS Azure 函数延迟将消息放入 Azure 存储队列?
- javascript - 未捕获(承诺中)错误:返回的值无效,它是否耗尽了 Gas?(在本地工作,但不在 Ropsten 上)
- c# - 需要帮助在多个项目上存储信息并检索这些项目并将它们显示在另一个屏幕上
- java - Selenium - 错误:元素不可交互
- javascript - 部署时 Razzle 反应未加载正确的包
- git - 如何在压缩和合并后重新整合主题分支?
- ios - 在起始位置显示 CollectionViewCell
- javascript - Angular Universal 在本地主机上工作,但不在 Nginx 服务器上
- javascript - 寻找一种更好的方法来更改具有多个图像的图像 onclick