验证选择标签HTML php


validate select tag html php

我试图验证我的选择标记,以便如果用户没有选择会话,则在按下提交按钮时出现警报。我有我的html和php代码下面,谢谢

<select name="ses">
                <option> Select a Session </option>
                <?php
                $get_sess = "select * from sessions where course_id='1'";
                $run_sess = mysqli_query($con, $get_sess);
                while ($sess_row=mysqli_fetch_array($run_sess)){
                $ses_id=$sess_row['session_id'];
                $ses_title=$sess_row['session_title'];
                echo "<option value='$ses_id'>$ses_title</option>";
                } ?>
</select>

我的PHP代码是:

<?php
//if submit button is set i.e 'publish exercise now' pressed then:
if(isset($_POST['submit1'])){
    $exercises_ses = $_POST['ses'];
    $exercise_text = $_POST['exercise_text'];
        if($_POST['ses'] == 'NULL'){
            echo "<script>alert('Please select a session for the exercise')</script>";
        }
    }

您应该只使用空函数。这将检查值是否为"空",检查手册中所有符合"空"的内容,每个评论我认为这符合您的标准。

if(isset($_POST['submit1'])){
    $exercises_ses = $_POST['ses'];
    $exercise_text = $_POST['exercise_text'];
    if(empty($_POST['ses'])){
        echo "<script>alert('Please select a session for the exercise')</script>";
    } else {
        // execute functions form value is correct
    }
}

'NULL'是一个字符串,如果您想与空值进行比较-使用NULL。我不认为你的db中的$ses_id'NULL'的价值。检查是否设置了值可以用isset来完成,用empty来检查是否为空:

if (isset($_POST['ses']) && !empty($_POST['ses'])) {