链接后选择类别删除特殊字符?

时间:2016-08-21 07:36:16

标签: php mysql

我有一个显示某些人姓名的页面,因此用户可以点击并查看相关帖子。

问题在于名称中包含'.的人或任何其他特殊字符。

要创建网址,我需要删除此字符:

Marie E.A 
Josh O'Reilly

php创建链接:

$categorialink = strtolower($categoria);
$categorialink = str_replace(' ', '_', $categorialink);
$categorialink = preg_replace('/[^A-Za-z0-9\_-]/', '', $categorialink);

将成为:

www.mypage.com/person/marie_ea
www.mypage.com/person/josh_oreilly

问题是从mysql获取这个值,Mysql记录名称(Marie E.A)并且我不能回到原始人的名字。 mysql LIKE可以提供帮助,但可以通过选择类似的东西打开另一个人页面,例如:Marie E.B而不是Marie E.A。

$categoryp = $_GET['categoria'];
$category = str_replace("_", " ", $categoryp);
SELECT id, categoria FROM categoria where categoria = 'marie ea' limit 1 //$category value - return nothing

如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

只需使用urlencode ()即可。这将仅通过替换字母而不是删除字母来翻译字符串。稍后,如果您需要获取以前的名称,请使用rawurldecode()