php - 选择后禁用选项并使用 mysql 跟踪以前的选项

标签 php mysql

所以我有一个选择选项列表,下面是用于将您选择的选项插入数据库的 php 代码,我有一个事件 session ,我需要它不允许您再次选择相同的选项如果您已经选择了它,则即使您注销 session 并重新登录,也不应该允许再次选择它。

这就是我感到困惑的地方,非常确定需要进行一些数据库工作来保存之前的选择,但不知道如何去做。

<?php    
if(isset($_POST['submitbtn'])) {
    $selection = $mysqli->real_escape_string($_POST['selection']); 
    $mysqli->query("INSERT IGNORE INTO users selection VALUE $selection WHERE `id` = '$my_id'");
    $pick = $mysqli->query("UPDATE `users` SET `selection` = '$selection' WHERE `id` = '$my_id'");
    echo '<p>You have made a selection!</p>';
}
?>

最佳答案

很确定解决了我自己的问题,这似乎工作得很好。

<?php
// Inserts pick selection into DB in row of session user
if(isset($_POST['submitbtn'])) {
    $selection = $mysqli->real_escape_string($_POST['selection']); 
    $dup = $mysqli->query("SELECT selection FROM users WHERE `id` = '$my_id'");
        if(mysqli_num_rows($dup) > 0){
        echo '<p style="color:red;"><b>**You have already selected this team.** <br>Choose another!</b></p>';
    } else {
    $pick = $mysqli->query("UPDATE `users` SET `selection` = '$selection' WHERE `id` = '$my_id'");
    echo '<p>You have made a selection!</p>';
}   
}
?>

关于php - 选择后禁用选项并使用 mysql 跟踪以前的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31494298/

相关文章:

php - 如何在基于 MySQL 的 session 中使用 PHP 中的多维数组?

php - 使用 Laravel Eloquent 更新具有复合键的表

php - 如果不使用 mysqli_multi_query,SQL 注入(inject)将无法工作

mysql - Laravel 5.4 - 无法更新 mysql 表列

php - 需要 php 多维数组和 json 响应的帮助

在计算机上的任何地方都找不到 MySQL

php - 如何编写函数来合并两条记录

php - mysqli_fetch_assoc()需要参数/调用成员函数bind_param()错误。如何获取并修复实际的mysql错误?

php - mysql 错误,但在 mysql workbench 上工作正常

php - MySQL选择一行中的多行