Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Търсене на файлове

Featured Replies

Добър ден използвам следната търсачка тя ми показва името на файла и колко е голям:

дотук добре,

но въпроса ми е следния:

 

Може ли да се преправи да показва по следния начин:

пример:

име на файла:Winrar файла се намира в директория:ftp1

тоест идеята ми е да показва освен името на файла в коя директория се намира без линк към файла или директорията просто да показва имената на файла и директорията:

примерно да показва следното:

 

файл:winrar се намира в директория:ftp1

Тоест идята ми е според името на файла да показва директорията в която се намира.

 

ето това е търсачката:

 

формата:

search.php

<?phpecho "<html>\n"; 
echo "<head>\n"; 
echo "<title>Search</title>\n"; 
echo "<script src=\"ajax.js\"></script>\n"; 
echo "<style type=\"text/css\">\n"; 
echo "body{\n"; 
echo "\n"; 
echo "}\n"; 
echo "a:link {\n"; 
echo "   color: #0078cc;\n"; 
echo "   text-decoration: none;\n"; 
echo "}\n"; 
echo "a:visited {\n"; 
echo "   text-decoration: none;\n"; 
echo "   color: #0078cc;\n"; 
echo "}\n"; 
echo "a:hover {\n"; 
echo "   text-decoration: none;\n"; 
echo "   color: #eb7c02;\n"; 
echo "}\n"; 
echo "\n"; 
echo "a:active {\n"; 
echo "   text-decoration: none;\n"; 
echo "   color: #0072cc;\n"; 
echo "}\n"; 
echo ".button {\n"; 
echo "border-color:#666699; \n"; 
echo "background: #F2F2F2; \n"; 
echo "color:#666699; \n"; 
echo "font:11px Verdana,Arial,Helvetica,sans-serif;\n"; 
echo "border-width: 1px 1px 1px 1px;\n"; 
echo "padding:2px;\n"; 
echo "margin:0px;\n"; 
echo "}\n"; 
echo ".field {\n"; 
echo "border-color:#666699; \n"; 
echo "background: #F2F2F2; \n"; 
echo "color:#666699; \n"; 
echo "font:11px Verdana,Arial,Helvetica,sans-serif;\n"; 
echo "border-width: 1px 1px 1px 1px;\n"; 
echo "padding:3px;\n"; 
echo "font-weight: bold;\n"; 
echo "margin:0px;\n"; 
echo "}\n"; 
echo "img{\n"; 
echo "   border:0px;\n"; 
echo "}\n"; 
echo "</style>\n"; 
echo "</head>\n"; 
echo "\n"; 
echo "<body>\n"; 
echo "<b>Търсене:</b> <input type=\"text\" name=\"s\" class=\"field\" size=\"65\" onChange=\"show(this.value)\">\n"; 
echo "<div id=\"txtHint\"></div>\n"; 
echo "</div>\n"; 
echo "</body>\n"; 
echo "\n"; 
echo "</html>\n"; 
echo "\n"; 
?>

show.php

<?php
header ('Content-Type: text/plain; charset=UTF-8');



function size($path){
   $size = filesize($path);
   if($size >= 1073741824)
{
$size = round($size / 1073741824 * 100) / 100;
$size=substr($size,0 , 4);
$size = $size . " GB";
}
elseif($size >= 1048576)
{
$size = round($size / 1048576 * 100) / 100 ;
$size=substr($size,0 , 4);
$size = $size . " MB";
}
elseif($size >= 1024)
{
$size = round($size / 1024 * 100) / 100;
$size=substr($size,0 , 4);
$size = $size . " KB";
}
else
{
$size=substr($size,0 , 4);
$size = $size . " B";
}
echo $size;
}




 function show($dir){
global $i;
global $file;
global $dir_path;
global $full_path;
global $s;
$s = htmlspecialchars($_GET['q'], ENT_QUOTES);
$directory = opendir($dir);
while ($files = readdir($directory))
{
if (($files != "..") AND ($files != ".")){
   $path = $dir.'/'.$files;
   if (!is_dir($path)){
      if (eregi($s, $files)) {
      $i++;
      $file[]=$files;
      $dir_path[]=$dir;
      $full_path[]=$path;
       }
   }
   if(is_dir($path)) {
   show($path);
   }
}
}
}


show ("/ftp/ftp1/");
echo "<table>
   <tr>
   <td>
   
   <table width=\"580px\" align=\"left\" style=\"font-size:12px;font-family: Tahoma;\">
   <tr>
   <td style=\"border:1px solid #DBDBDB;\" colspan=\"3\">
   <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap\">Резултати за: ".$s."</div>
   </td>
   </tr>
   <tr>
   <td style=\"border:1px solid #DBDBDB;\" colspan=\"3\">
   <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap\">Намерени файлове: ".$i."</div>
   </td>
   </tr>
   </table>
   </td>
   </tr>
   <tr>
   <td>
   <table width=\"580px\" align=\"left\" style=\"font-size:12px;font-family: Tahoma;\">";


$num = count($file);
for ($i=0;$i<$num;$i++){
    if (strlen($file[$i])>"100"){
    $totchki='...';
    } else {
    $totchki='';
    }
     $file[$i]=substr($file[$i],0 , "100"); 


              echo "<tr>
          <td style=\"border:1px solid #DBDBDB;\" width=\"20px\" align=\"center\">
          <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap;height:15px;\">
          <a href=\"".$dir_path[$i]."\" onClick=\"this.target='_blank'\">
          <img src=\"folder.png\" height=\"15px\" width=\"15px\"></a>
          </div>
          </td>
          <td style=\"border:1px solid #DBDBDB;\" width=\"510px\" align=\"left\">
          <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap;height:15px;\" onmouseover=\"this.style.backgroundColor='#F9F9F9'\" onmouseout=\"this.style.backgroundColor='#F2F2F2'\">
          <a href=\"".$full_path[$i]."\">".$file[$i].$totchki."</a>
          </div>
          </td>
          <td style=\"border:1px solid #DBDBDB;\" width=\"50px\" align=\"center\">
          <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap; color: #0078cc;height:15px;\">";
          size($full_path[$i]);
          echo "</div></td></tr>"."\n";
   
}
echo "</table></td></tr></table>";


?> 

ето и ajax.js

 

var xmlHttp


function show(str)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return
}
var url="show.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}


function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText
}
}


function GetXmlHttpObject()
{
var objXMLHttp=null
if (window.XMLHttpRequest)
{
objXMLHttp=new XMLHttpRequest()
}
else if (window.ActiveXObject)
{
objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
}
return objXMLHttp
} 

Редактирано от qvor16 (преглед на промените)

  • Автор

с $path нестана но с $full_path стана сега ми показва следния резултат.

/ftp/ftp1/winrar- 192 B

въпроса ми е може ли да се преправи да го показва така:

Намерени файлове:winrar файла се намира в директория:ftp1

а не да показва така:

/ftp/ftp1/winrar- 192 B

възможно ли е и ако е възможно как ще стане?

Редактирано от qvor16 (преглед на промените)

тоест идеята ми е да показва освен името на файла в коя директория се намира без линк към файла или директорията просто да показва имената на файла и директорията:

примерно да показва следното:

 

файл:winrar се намира в директория:ftp1

 

Това е много глупава идея, защото така показваш структурата на файловата ти система, а това е много лошо откъм сигурност на приложението.  :nono:

с $path нестана но с $full_path стана сега ми показва следния резултат.

/ftp/ftp1/winrar- 192 B

въпроса ми е може ли да се преправи да го показва така:

Намерени файлове:winrar файла се намира в директория:ftp1

а не да показва така:

/ftp/ftp1/winrar- 192 B

възможно ли е и ако е възможно как ще стане?

 

Може. Просто раздели стринга (explode) с пътя до файла на отделните елементи и вземи само последните два.

  • Автор

А може ли някакъв пример как ще стане с explode тъй като досега никога несъм ползвал тази функция

а като гледам тук:http://php.net/manual/en/function.explode.php немога да схвана как се работи с нея.

А може ли някакъв пример как ще стане с explode тъй като досега никога несъм ползвал тази функция

а като гледам тук:http://php.net/manual/en/function.explode.php немога да схвана как се работи с нея.

 

Просто е:

$full_path  = "/ftp/ftp1/winrar";
$pieces = explode("/", $$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);

echo $pieces[1]; // ftp
echo $pieces[2]; // ftp1
echo $pieces[3]; // winrar
  • Автор

Нещо немога да схвана къде греша сега скрипта спря да работи като добавих кода:

ето изглежда че някъде аз греша но не ми е ясно къде:

<?phpheader ('Content-Type: text/plain; charset=UTF-8');




function size($path){
   $size = filesize($path);
   if($size >= 1073741824)
{
$size = round($size / 1073741824 * 100) / 100;
$size=substr($size,0 , 4);
$size = $size . " GB";
}
elseif($size >= 1048576)
{
$size = round($size / 1048576 * 100) / 100 ;
$size=substr($size,0 , 4);
$size = $size . " MB";
}
elseif($size >= 1024)
{
$size = round($size / 1024 * 100) / 100;
$size=substr($size,0 , 4);
$size = $size . " KB";
}
else
{
$size=substr($size,0 , 4);
$size = $size . " B";
}
echo $size;
}




 function show($dir){
global $i;
global $file;
global $dir_path;
global $full_path;
global $s;
$s = htmlspecialchars($_GET['q'], ENT_QUOTES);
$directory = opendir($dir);
while ($files = readdir($directory))
{
if (($files != "..") AND ($files != ".")){
   $path = $dir.'/'.$files;
   if (!is_dir($path)){
      if (eregi($s, $files)) {
      $i++;
      $file[]=$files;
      $dir_path[]=$dir;
      $full_path[]=$path;
       }
   }
   if(is_dir($path)) {
   show($path);
   }
}
}
}


show ("/usr/local/pvpgn/var/charinfo");
$pieces = explode("/", $$pizza  = "piece1 piece2 piece3 piece4 piece5";
$pieces = explode(" ", $pizza);


echo $pieces[1]; // ftp
echo $pieces[2]; // ftp1
echo $pieces[3]; // winrar
echo $pieces[4]; // winrar
echo $pieces[5]; // winrar
echo "<table>
   <tr>
   <td>
   
   <table width=\"580px\" align=\"left\" style=\"font-size:12px;font-family: Tahoma;\">
   <tr>
   <td style=\"border:1px solid #DBDBDB;\" colspan=\"3\">
   <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap\">Резултати за: ".$s."</div>
   </td>
   </tr>
   <tr>
   <td style=\"border:1px solid #DBDBDB;\" colspan=\"3\">
   <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap\">Намерени файлове: ".$i."</div>
   </td>
   </tr>
   </table>
   </td>
   </tr>
   <tr>
   <td>
   <table width=\"580px\" align=\"left\" style=\"font-size:12px;font-family: Tahoma;\">";




$num = count($full_path);
for ($i=0;$i<$num;$i++){
    if (strlen($full_path[$i])>"100"){
    $totchki='...';
    } else {
    $totchki='';
    }
     $path[$i]=substr($path[$i],0 , "100"); 


              echo "<tr>
          <td style=\"border:1px solid #DBDBDB;\" width=\"20px\" align=\"center\">
          <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap;height:15px;\">
          <a href=\"".$full_path[$i]."\" onClick=\"this.target='_blank'\">
          <img src=\"folder.png\" height=\"15px\" width=\"15px\"></a>
          </div>
          </td>
          <td style=\"border:1px solid #DBDBDB;\" width=\"510px\" align=\"left\">
          <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap;height:15px;\" onmouseover=\"this.style.backgroundColor='#F9F9F9'\" onmouseout=\"this.style.backgroundColor='#F2F2F2'\">
          <a href=\"".$file[$i]."\">".$full_path[$i].$totchki."</a>
          </div>
          </td>
          <td style=\"border:1px solid #DBDBDB;\" width=\"50px\" align=\"center\">
          <div style=\"padding:1px; background-color: #F2F2F2; white-space:nowrap; color: #0078cc;height:15px;\">";
          size($full_path[$i]);
          echo "</div></td></tr>"."\n";
   
}
echo "</table></td></tr></table>";


?> 
<?
	$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
	$pieces = explode(" ", $pizza);

	foreach ($pieces as $key => $value) {
	 	echo $value , '<br>';
	 } 

	$full_path  = "/ftp/ftp1/winrar";
	$pieces = explode("/", $full_path);
	
	echo $pieces[1],'<br>'; 
	echo $pieces[2],'<br>';
	echo $pieces[3];

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    32%
    Дарени 315 € от нужните 1 000 €

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.