【发布时间】:2015-01-12 05:33:33
【问题描述】:
在下面给出的简单形式中,如果我们在浏览器中搜索它看起来像这样:
[1]: http://i.stack.imgur.com/8YEJz.png
带有表单代码:
<form name="newad" method="get" action="search.php">
<h1 align="center"> Type your query<input type="text" name="text">
<h1 align="center"><input name="Submit" type="submit" >
</form>
现在,不知何故我想改变原来的查询方式,如果我们像上面的例子那样搜索“合作伙伴食物”,它应该被转换为 md5 并在我们存储的时候获取数据,所以它应该看起来像http://localhost/robbin.php?text=B9B5A976F29A3C71EDAD9320A9AB0982&Submit=Submit+Query
.但它不是这样工作的。
我试过这样:
$submit=$_GET['text'];
$encrypted=md5($submit);
$sql = mysql_query("SELECT * FROM searchengine WHERE pagecontent LIKE '%$encrypted%'");
请说明我应该怎么做?
【问题讨论】:
-
您想在浏览器中显示加密的关键字还是只想在您的数据库中搜索?如果您只想在数据库中搜索,那么您的方法是正确的
-
我想在数据库中搜索加密词,基于查询,如果方法是正确的那么为什么它不搜索,意味着只搜索这个词。
-
顺便说一句,如果您在浏览器中将关键字显示为纯文本,为什么要在 DB 中将它们加密?我不认为它的正确方法。检查您的列大小。有时,如果您的列大小较小,加密字符串变得更长并且数据库存储了该加密字符串的几个字符。
-
不知何故,将它们以加密的形式存储在数据库中很重要,然后按照加密但不工作。请建议任何帮助或链接。
-
我想有人已经提出的另一个问题会对您有所帮助。 dba.stackexchange.com/questions/23908/…