可能重复:
PHP URL编码保留无效URL字符
我在管理面板中使用了类似于下面的表格。管理员可以登录并发布状态(同时使用数据库和文件系统)。
<form method="post" action="post.php">
Title : <input type="text" name="title">
Content : <textarea name="status" rows="10" cols="60"></textarea>
</form>
在.php 中
$title = trim(strip_tags($_REQUEST['title']));
如果管理员发布状态。将使用输入的标题创建一个文件夹,标题名称存储在mysql数据库中。但是,当管理员使用像"?"这样的特殊字符时,url会被编码为类似于http://example.com/title?
的内容,并显示404未找到。那么如何将title元素的特殊字符替换为实体号呢。
如果答案在php
试试这个
$title=trim(strip_tags($_POST['title']));
然后是
urlencode($title);
应该做你需要做的事。
http://de3.php.net/manual/en/function.urlencode.php
尝试使用此代码$title = str_replace("?","",$title)