PHP MYSQL输入表单需要输入特定的单词

PHP MYSQL输入表单需要输入特定的单词,php,html,mysql,Php,Html,Mysql,我有一个输入框,我在其中键入文件名。我希望输入框要求我或其他用户输入文件类型 例如,当我只需在输入框中键入此\u是\u文件的\u name\u,并将其提交。它应该返回false 是否有一种方法可以让它仅在我将其键入为name\u of_file.pdf或name\u of_file.docx时接受,其中我键入了文件名及其文件扩展名 这是我的表单中的输入标记: <label>File Name: </label> <input class="input2" type

我有一个
输入框
,我在其中键入文件名。我希望
输入框
要求我或其他用户输入文件类型

例如,当我只需在
输入框中键入
此\u是\u文件的\u name\u
,并将其提交。它应该返回
false

是否有一种方法可以让它仅在我将其键入为
name\u of_file.pdf
name\u of_file.docx
时接受,其中我键入了文件名及其
文件扩展名

这是我的表单中的输入标记:

<label>File Name: </label> 
<input class="input2" type="text" name="filename" 
       placeholder="file.pdf/xlsx/xls/docx" required autofocus><br>

没有多少选择,但我会选择:

$path_parts = pathinfo($_POST['filename']);//spits the variable in to parts to chewck

if(empty($path_parts['extension'])){ //check for extension
    echo 'filename error';
}else{
    $FName = $_POST['filename'];
    $pdoQuery = "INSERT INTO `report`(`filename`) VALUES (:FName)";
    $pdoResult = $pdoConnect->prepare($pdoQuery);
    $pdoExec = $pdoResult->execute(array(":FName"=>$FName));
}

如果您对浏览器验证感到满意(比如如何进行
所需的
),则始终可以使用模式,例如


试试看

@Justins因为可以绕过此验证,所以您也应该始终验证服务器端。不客气。请记住,任何客户端都可以绕过,因此最好使用服务器端验证来支持这一点。此外,如果需要不区分大小写的检查,请参阅
$path_parts = pathinfo($_POST['filename']);//spits the variable in to parts to chewck

if(empty($path_parts['extension'])){ //check for extension
    echo 'filename error';
}else{
    $FName = $_POST['filename'];
    $pdoQuery = "INSERT INTO `report`(`filename`) VALUES (:FName)";
    $pdoResult = $pdoConnect->prepare($pdoQuery);
    $pdoExec = $pdoResult->execute(array(":FName"=>$FName));
}