我必须使用文件up-loader将图像上传到DB中。我已使用下面给出的代码,但它不起作用。如果我上传任何也插入数据库的pdf或doc文件,也会显示错误消息。如果文件不是图像格式,我想停止插入。帮我找一个合适的解决方案。谢谢。
ASPX:
<asp:FileUpload ID="PhotoUpload1" runat="server" ForeColor="#999999" />
<asp:RegularExpressionValidator ID="RegularExpressionValidator6" runat="server" ErrorMessage="*jpeg,gif,png" ControlToValidate="PhotoUpload1" ForeColor="Red"
ValidationExpression=".*\.([gG][iI][fF]|[jJ][pP][gG]|[jJ][pP][eE][gG]|[bB][mM][pP])$">
</asp:RegularExpressionValidator>
<asp:Button ID="btnSubmit" runat="server" OnClick="btnSubmit_Click" Text="Submit" />
答案 0 :(得分:3)
答案 1 :(得分:1)
尝试alternation&#34; |&#34;符号。并且只列出允许的文件扩展名(白名单),如jpg,png。
<asp:FileUpload ID="PhotoUpload1" runat="server" ForeColor="#999999" />
<asp:RegularExpressionValidator ID="RegularExpressionValidator6" runat="server" ErrorMessage="*jpeg,gif,png" ControlToValidate="PhotoUpload1" ForeColor="Red"
ValidationExpression="(.*png$)|(.*jpg$)|(.*jpeg$)">
</asp:RegularExpressionValidator>
Asp.Net验证也需要validated on server side。
protected void btnSubmit_Click(object sender, EventArgs e)
{
//Note that there might be ServerSideValidation which evaluated to false.
if (!Page.IsValid)
return;
// Insert DB code here.
}