Php 使用搜索输出字符串打开本地网络文件
多年来,我一直在尝试使用各种类型的“文件、文件获取内容、fopen、opendir等”来完成我的日常工作,但我无能为力,这超出了我的理解,很遗憾。但我要在这里学习 我想做什么?我与LucidWorks合作,构建了一个内部网搜索,搜索给定的特定路径“C://example/example/…”,并对所有文件进行全文搜索。在我的intranet网站上搜索的结果很简单:Php 使用搜索输出字符串打开本地网络文件,php,search,lucidworks,Php,Search,Lucidworks,多年来,我一直在尝试使用各种类型的“文件、文件获取内容、fopen、opendir等”来完成我的日常工作,但我无能为力,这超出了我的理解,很遗憾。但我要在这里学习 我想做什么?我与LucidWorks合作,构建了一个内部网搜索,搜索给定的特定路径“C://example/example/…”,并对所有文件进行全文搜索。在我的intranet网站上搜索的结果很简单: 文件标题 带有突出显示的keyowrds的正文标题 文件的路径 现在,这还不够,我懒惰的同伴们希望能够单击文档标题(它后面确实有
- 文件标题
- 带有突出显示的keyowrds的正文标题
- 文件的路径
$searchParams = array(
'hl' => 'true',
'hl.fl' => 'body'
);
$response = $LWS->search($query, $offset, $limit, $searchParams);
if ($response->response->numFound > 0) {
foreach ($response->response->docs as $doc) {
?>
<div id="resultbox">
<span id="resulttitle"> <?php echo "<a href={$doc->id}'>{$doc->title}</a><br />"; ?> </span>
<?php
$content = (("{$doc->id}'>{$doc->title}"));
print_r( '<a href= ' . fopen(str_replace('%', ' ', $content), "r+") . '>Open File</a><br />');
?>
<SPAN ID="copytext" >
<?php echo substr($content, -100); ?>
<br></SPAN>
<div id="sbody">
<?php
echo "..." . $response->highlighting->{$doc->id}->body[0] . "...<br /><br />";
}
echo '<br />';
return;
} else {
echo "No results for \"" . $query . "\"";
return;
}
?>
$searchParams=array(
'hl'=>'true',
'hl.fl'=>'body'
);
$response=$LWS->search($query、$offset、$limit、$searchParams);
如果($response->response->numFound>0){
foreach($response->response->docs as$doc){
?>
看起来好像您正试图将文件的内容放入锚点/链接(
)的href
属性中;
输出结果看起来像
<a href="file:/C:/path/to/your/file.txt">Open File</a><br />
当你说你的解决方案不起作用时,你是什么意思?它是否输出任何错误?或者输出与预期的输出不同?我要么得到一个输出错误,如下所示:警告:fopen(文件:/C:/Users/dominikf/Desktop/TestUti/Test 20Sap 20Uti 20Test 20Sap 20Uti 20-20Kopie 20(10).txt'>)[function.fopen]:无法打开流:第55行的C:\wamp\www\Intranet\u Server\searcher.php中的参数无效
,或者指向文件的链接只是将我重定向到files.php(显示内容的位置)。第55行是代码的print\r('
');
):)部分。我也到过这里,这确实显示了“打开的文件”“尽管有正确的路径,但它仍然无法打开目录。我知道现代浏览器会阻止这种行为,但我不知道如何解决这一问题。”(如果您直接在浏览器url中键入路径,它是否会在浏览器中显示文件?是的。首先,这将是一个很好的解决方案,长期解决方案是在相应的程序中打开文件。acrobat中的PDF、.Microsoft word中的doc等…。这是另一个问题。您可能会发现,它完全没有显示。)ependant关于用户如何设置他们的浏览器,我很担心,所以我认为你不能强迫它在另一个应用程序中打开,而不是在浏览器中。那就足够了,但问题仍然是,它不能在浏览器中打开。如果我能做到这一点,我可能会添加一个文本编辑器,这对f来说就足够了系统中的irst集成。将来可以找到任何其他解决方案。但是,如果有人想出一个解决方案来实际在本地打开文件,那就太好了!
<a href="file:/C:/path/to/your/file.txt">Open File</a><br />