Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要帮助使用php和mysql创建搜索函数吗_Php_Mysql - Fatal编程技术网

需要帮助使用php和mysql创建搜索函数吗

需要帮助使用php和mysql创建搜索函数吗,php,mysql,Php,Mysql,我使用php和mysql创建了一个搜索函数。 我在用这个 $raw_results = mysql_query("SELECT * FROM entries WHERE (`title` LIKE '%".$query."%') OR (`contents` LIKE '%".$query."%')") or die(mysql_error()); 然后我就这样回应 while($results = mysql_fetch_array($raw_results)){ e

我使用php和mysql创建了一个搜索函数。 我在用这个

$raw_results = mysql_query("SELECT * FROM entries
            WHERE (`title` LIKE '%".$query."%') OR (`contents` LIKE '%".$query."%')") or die(mysql_error());
然后我就这样回应

while($results = mysql_fetch_array($raw_results)){
echo "<p><a href=index.php?id=".$results['id']."> <h3>".$results['title']."</h3></a>".$results['contents']."</p>";
}
while($results=mysql\u fetch\u数组($raw\u results)){
echo“”$results['contents']。“

”; }
这将显示标题和内容。但我只想重复包含查询词的“content”中的两行,而不是重复整个段落。
有人能帮我吗

借助substr php函数可以轻松实现。 语法:substr(字符串、开始、长度)

下面的示例将打印内容列中字符串的一半

参考您的代码:

    while($results = mysql_fetch_array($raw_results)){
   echo "<p><a href=index.php?id=".$results['id']."> <h3>".$results['title']."</h3></a>".substr($results['contents'], strpos($results['contents'], $query), 20)."</p>";
    }
while($results=mysql\u fetch\u数组($raw\u results)){
echo“”.substr($results['contents',strpos($results['contents',$query),20)。“

”; }
请参阅下面的链接


链接没有回答我的问题。它不包含如何显示@VinayagamI列中字符串的一半的信息,但显示的内容不包括查询词@SaloniOkay如果你想在其中显示查询词,那么你可以使用以下代码:John,你能用strpos()尝试上面的代码吗函数?我使用strpos查找stringIt中第一个出现的子字符串的位置。但它直接从被查询的单词开始。我怎样才能在考试前多读2-3个单词?