<select>不够安全

时间:2019-09-25 08:05:52

标签: php html

我的<select>不够安全。    我可以更改“值”槽元素检查。     因此,如果我要将select插入数据库中,我的select不够安全,我可以更改该值。我希望我的选择足够安全,以便您不能更改我的值。

<?php 
        // Include de database configuratie bestand
        include_once 'dbConfig.php'; 

        // Haal de auto's op.
        $query = "SELECT * FROM autos ORDER BY autonaam ASC"; 
        $result = $db->query($query); 
    ?>
    <div class="center1">

        <form method="POST" action="insert.php">
    <!-- Auto dropdown -->
    <select class="select-css"  onchange="myAuto(this)" name="auto" id="auto">
        <option value="">Selecteer auto</option>
        <?php 
        if($result->num_rows > 0){ 
            while($row = $result->fetch_assoc()){  
                echo '<option value="'.$row['autoid'].'">'.$row['autonaam'].'</option>'; 
            } 
        }else{ 
            echo '<option value="">Auto is niet beschikbaar!</option>'; 
        } 
        ?>

    </select> </br> 
    <p id="autovar"></p>
    </br>

<!-- Kleur dropdown -->
    <select id="kleur" name="kleur" onchange="myKleur(this)" style="display: none;"> 
        <option value="">Selecteer kleur</option>
    </select>
    </br>
        <p id="kleurvar"></p></br>
        <button style="display: none;" type="submit" id="test" name="submit" >Save</button>

    </form>

    </div>

1 个答案:

答案 0 :(得分:0)

如上面的评论所述,服务器端验证是唯一的解决方案。

您也无法阻止某人

a)像您自己一样通过元素检查干扰值,或

b)通过另一个非浏览器方法(例如,使用PostMan或自定义HTTP客户端)向您的PHP脚本发出HTTP请求,从而完全绕过浏览器逻辑。

如果有某些您根本不希望允许的值,或者在某些情况下(例如,由于用户权限或与将其与其他字段中的值匹配的逻辑所致)无效的值,则必须检查当您收到提交的数据时,将使用PHP。