php - 从我的 $_POST 获取同一行中的另一个值

标签 php mysql

因此,在我的数据库中,我得到了表 perso (= characters) ,其中填充了不同字符的行。有一列 perso_nameperso_fullname

这是表格:

<form method="post">
<select name="selectperso" onchange="showUser(this.value)">
    <option value="op1">Option1</option>
    <option value="op2">Option2</option>
</select>
<input type="submit" name="validperso" value="Confirm">
</form>

我写了一个脚本说 OP1 和 OP2 是“perso_name”值。但问题是我想将用户使用的字符的全名插入到我的另一个 mysql 数据库中。

$erreur = 0;
$whitelist = array('op1');    
// Errors variables
$erreurpersowhitelist = NULL;

if (isset($_POST['validperso'])) {
    $personnage = $_POST['selectperso'];     
    if(!in_array($_POST['selectperso'], $whitelist))
    {
        $erreur++;
        $erreurpersowhitelist = "Personnage non disponible (gros malin ;) )";
    }  
    if ($erreur !== 0) {            
        echo "<br><br> ". $erreur . " erreur(s) trouvée(s) lors du choix du personnage :";
        echo "<br><br> ". $erreurpersowhitelist." "; 
    }
    else {    
        $query=$db->prepare('UPDATE users SET personnage = "'. $personnage .'" WHERE username = "'. $username .'"');
        $query->execute();    
        $_SESSION['personnage'] = $personnage;    
        header('Location: index.php');    
    } 
}

(P.S: echo 是法语的,但这对问题来说无关紧要,如果用户做了坏事,它们只是错误)

如何将我的 $personnage 更改为 $_POST['personnage'] 的 full_name 版本? (Personnage = Character if you want to know)

如果存在一些安全漏洞,请告诉我。

最佳答案

您可以使用数据库字段(ID 或任何其他唯一字段)填充您的值,然后您将能够从数据库中获取所需的数据。

带有 ID 的示例:TABLE perso (id, perso_name, perso_fullname)

在您的 html 表单中,用 ID 填写您的选项

<select name="selectperso" onchange="showUser(this.value)">
    <option value="1">Option1</option>
    <option value="2">Option2</option>
</select>

然后在您的验证表单中,从您的数据库中检索角色名称:

$query=$db->query('SELECT full_name FROM perso WHERE id='.$db->escape($_POST['selectperso'])); //get the full_name from the perso's id

如果您不想使用 id,您可以使用您的 perso_name,只要它是唯一的即可。

关于php - 从我的 $_POST 获取同一行中的另一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45206535/

相关文章:

php - 如何在codeigniter中使用JOIN显示两个表的结果?

javascript - 从 restify 获取正确的 json 输出

php - 使用 Yii 根据 ID 指定要显示的数据

MySQL 更新 AUTO_INCRMENT pk 以保留行排序

mysql - 如何在 SQL Server 导入和导出向导中选择 MySQL 目标表?

php cronjob自动提醒电子邮件

javascript - 图片上传——未正确访问 PHP 文件

python - Django同名多个输入插入到数据库

php - 如何从 Symfony2 中的包覆盖全局 Monolog 配置

php - 检测字符串是否包含任何数字