【发布时间】:2020-10-30 00:25:21
【问题描述】:
目前我在 php 中运行脚本以允许在用户名是“有效”的情况下提交文件,即仅使用字符和数字。如果不是这种情况,用户将返回到该 url,并在该 url 中显示一条错误消息,显示“invalidusername”。
我试图在我的网站上使用一个功能来模仿这个脚本,只要“标题”有效,即允许人们将表单上传到网站,即只有数字和字符,就像用户名一样。但是,我在标题中意识到我实际上希望使所有字符都能够在标题中使用。我应该删除脚本吗?或者,有没有办法让preg_match() 启用所有字符。我在网上试过php脚本,但没有奏效。我的代码如下:
if (empty($author) || empty($title) || empty($year) || empty($url) || empty($keywords)) {
header("Location: ../upload.php?error=emptyfields");
exit();
} else if (!preg_match("/^[a-zA-Z0-9]*$/", $title) && !filter_var($url, FILTER_VALIDATE_URL)) {
header("Location: ../upload.php?error=invalidtitleurl");
exit();
} else if (!preg_match("/^[a-zA-Z0-9]*$/", $title)) {
header("Location: ../upload.php?error=invalidtitle");
exit();
}
【问题讨论】:
-
请务必将您的预期结果与您的输入一起添加。会有帮助的。
-
[\s\S]匹配所有个字符。
标签: php regex validation preg-match