2
我使用php和javascript为我的wordpress网站创建一个动态填充的自动完成搜索引擎。mysql查询只返回字符串的一个字
例如:用户想要搜索“Nike Shoes”,以便他们在搜索引擎中输入Nike Shoes,并且在键入前3个字母后应该看到Nike Shoes作为建议。
我遇到了一个问题,只有耐克这个词出现在我的建议中。这种情况发生在您输入搜索引擎的任何条款中。只有字符串的第一个字会出现。我相信这是与单词之间的空格有关,但不知道如何解决它。
这里是我的代码是动态填充的自动完成:
var availableTags = '<?php $result = mysql_query("select * from state");
$row = mysql_fetch_array($result);
echo $row['name']; ?>'.split(" ");
$("#title").autocomplete({
source: availableTags,
minLength: 3,
position: { my : "left top", at: "left top" },
appendTo: "#search-container"
});
});
我从这个网站创建此代码:http://www.tizag.com/mysqlTutorial/mysqlquery.php
如果有人能帮我,我会非常感激。
感谢,
史蒂夫
你只取结果的单行。使用['json_encode'](http://stackoverflow.com/questions/383631/)而不是手动引用结果。不要用古代的mysql_ *函数编写新的代码。他们不再保持和社区已经开始了[弃用过程(http://news.php.net/php.internals/53799)。相反,您应该了解准备好的语句并使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/mysqli)。如果你关心学习,[这里是一个很好的PDO相关教程](http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers)。 – DCoder
谢谢你的回应,我感谢你的时间。我肯定会把这些材料放在阅读清单上,但是对于这个例子,我正在编辑一个已经使用这个老方法的wordpress插件,如果可能的话,我宁愿保留它。只是一些额外的信息,耐克鞋的例子是在1排,如果有帮助,它不是一排耐克和另一排鞋。再次感谢 – binga30
如果你确实有一排有'耐克鞋',那么你应该只期待一个词,因为你正在分裂的空间。没有实际生成显示的代码很难说出发生了什么。 – SimaPro