Hallo zusammen.
Wenn ich dieses Suchscript verwende,
wir folgende (Fehler)Meldung ausgegeben:
Ergebnis:
Warning: Invalid argument supplied for foreach() in /var/www/web3/html/014-27-biblothek-04-05/pages/frames/inhalte/nach-personen/search.php on line 134
Es wurden 0 Seiten gefunden.
PHP-Suche
Powered by http://www.gaijin.at
Hier das Script:
Zeile "134" ist folgende:
foreach($DirArray as $d){
Was ist daran falsch?
Danke,
liebe Grüße,
Claudi
Wenn ich dieses Suchscript verwende,
wir folgende (Fehler)Meldung ausgegeben:
Ergebnis:
Warning: Invalid argument supplied for foreach() in /var/www/web3/html/014-27-biblothek-04-05/pages/frames/inhalte/nach-personen/search.php on line 134
Es wurden 0 Seiten gefunden.
PHP-Suche
Powered by http://www.gaijin.at
Hier das Script:
PHP:
<?php
$search=FormatSearchString(stripslashes($search));
?>
<?php
if(!$search) exit;
echo "<h4>Ergebnis:</h4>\n";
$files=ReadDirs($AllowedDirs,$AllowedExts);
$ResultCount=0;
if($files && $search){
foreach($files as $f){
if(SearchFile($f,$search)){
$fn=$f;
if(substr($f,0,strlen($RootDir))==$RootDir) $fn=$DomainName.substr($f,strlen($RootDir));
$ResultCount++;
if($Show_ResultNumber) echo $ResultCount.". ";
echo "<a href=\"".$fn."\"><b>".$Site_Title."</b></a><br>\n";
if($Meta_Description) echo $Meta_Description."<br>\n";
if($Site_Content) echo "<span id=small><span id=grey>".$Site_Content."</span></span><br>\n";
if($Show_Filename) echo "<span id=grey>Datei:</span> <span id=green>".$fn."</span>";
if($Show_Filesize){
if($Show_Filename) echo " - ";
echo "<span id=grey>Größe:</span> <span id=green>".round(filesize($f)/1024,2)." KB</span>";
}
if($Show_Filename || $Show_Filesize) echo "<br>";
echo "<br>\n";
}
}
clearstatcache();
}
echo "Es wurden <b>".$ResultCount."</b> Seiten gefunden.<br>\n";
echo "<p><small><b>PHP-Suche</b><br>Powered by <a href=\"http://www.gaijin.at/\">www.gaijin.at</a></small></p>\n";
function SearchFile($url,$search){
global $Show_Description;
global $Found_Piece_Len;
global $Site_Title;
global $Site_Content;
global $Meta_Description;
global $Meta_Robots;
$Site_Title="";
$Site_Content="";
$Meta_Description="";
$Meta_Robots="";
// *** Meta-Angaben ermitteln ***
$gmtarray=get_meta_tags($url);
while(list($key,$val)=each($gmtarray)){
switch(strtolower($key)){
case "title": $Meta_Title=$val; break;
case "keywords": $Meta_Keywords=$val; break;
case "description": $Meta_Description=$val; break;
case "robots": $Meta_Robots=strtolower($val); break;
case "revisit": $Meta_Revisit=strtolower($val); break;
case "revisit-after": $Meta_RevisitAfter=strtolower($val); break;
}
}
if(!$Show_Description) $Meta_Description="";
if(eregi("noindex",$Meta_Robots)) return false;
// *** Dateiinhalt einlesen (bzw. Ausgabe bei PHP) ***
$fp=@fopen($url,"r");
if(!$fp) return false;
while(!feof($fp)){
$content.=fgetss($fp,10240,"<title>");
}
fclose($fp);
$content=trim($content);
$content=$Site_Title." ".$Meta_Title." ".$Meta_Keywords." ".$Meta_Description." ".$content;
// *** Seitentitel ermitteln ***
$Site_Title=GetSiteTitle($content);
if(!$Site_Title) $Site_Title=$Meta_Title;
if(!$Site_Title) $Site_Title=basename($url);
if(substr($content,0,strlen($Site_Title))==$Site_Title) $content=substr($content,strlen($Site_Title));
$content=strip_tags($content);
$content=str_replace("\n"," ",$content);
$content=str_replace("\r","",$content);
$sc=" ".trim($content);
while(strpos($sc," ")){
$sc=str_replace(" "," ",$sc);
}
$content=$sc;
// *** Suchen ***
$found=false;
$a=explode(" ",strtolower($search));
$lowcontent=strtolower($content);
foreach($a as $arg){
$p0=strpos($lowcontent,$arg);
if($p0>0){
$p1=$Found_Piece_Len;
$p2=$Found_Piece_Len;
if(($p0-$p1)<0) $p1=$p0;
$result_text.="...".substr($content,$p0-$p1,$p1)."<b id=red>";
$result_text.=substr($content,$p0,strlen($arg))."</b>".substr($content,$p0+strlen($arg),$p2);
$found=true;
}else{
$found=false;
break;
}
}
if(!$found) return false;
if($result_text) $result_text.="...";
$Site_Content=$result_text;
return true;
}
function FormatSearchString($search){
$chars=".:-_,;!§$%&/()=#+*~'?\[|]{^°}²³µ@¬ äöüß1234567890abcdefghijklmnopqrstuvwxyz";
for($i=0;$i<strlen($search);$i++){
$a=substr($search,$i,1);
if(stristr($chars,$a)) $s.=$a;
}
while(strpos($s," ")){
$s=str_replace(" "," ",$s);
}
return trim($s);
}
function ReadDirs($DirArray,$ExtArray){
$fileArray=array();
foreach($DirArray as $d){ //diese Zeile ist das Problem
if($hDir = opendir($d)){
while($file=readdir($hDir)){
if(!is_dir($d."/".$file)){
// *** .*-Dateien (zB .htaccess) ignorieren ***
if(substr($file,0,1)!="."){
foreach($ExtArray as $ext){
if(substr(strtolower($file),strlen($file)-strlen($ext),strlen($ext))==strtolower($ext)){
array_push($fileArray,$d."/".$file);
continue;
}
}
}
}
}
closedir($hDir);
}
}
return $fileArray;
}
function GetSiteTitle($content)
{
$p1=strpos(strtolower($content),"<title>");
if(!$p1) return false;
$p2=strpos(strtolower($content),"</title>",$p1);
if(!$p2) return false;
return trim(substr($content,$p1+7,$p2-$p1-7));
}
?>
foreach($DirArray as $d){
Was ist daran falsch?
Danke,
liebe Grüße,
Claudi
Zuletzt bearbeitet: