Помощ с няколко урока

kanadeca

Registered
Трябва ми помощ относно тези два урока:

http://web-tourist.net/login/login/view.php?st=1206
http://web-tourist.net/login/login/view.php?st=650

Значи искам като качваш или търсиш да има опция за директория,т.е. като дадеш "Картинки" да търси/качва в папка kartinki ;като дадеш "Музика" да търси/качва в папка muzika. Пробвах и сам не можах да го измисля,хелп моля!

П.С. Това с индексирането на файлове при ъплоад не ми трябва може да го махнете (мога и сам:))
 
Значи ето ти за търсачката
Код:
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> 
<title>Search</title> 
</head> 

<body> 
<center> 
<form action="search.php" method="post"> 
<input type="text" name="searched"> 
  <select name="dir" id="dir"> 
    <option value="movies/">Филми
    <option value="clips/">Клипове 
    <option value="games/">Игри 
    <option value="pics/">Картинки 
    <option value="softwares/">Програми 
    <option value="flash/">Флаш 
    <option value="docs/">Документи 
    <option value="pages/">Страници 
    <option value="subs/">Суптитри 
    <option value="downloads/audio">Музика 
    <option value="other/">Друго</option> 
    </select> 
<input type="submit" value="search"> 
</form> 

<?php 
$flag=0; 
$dir="upload/"; 
if(isset($_POST['searched'])) { 
foreach(glob($dir."*") as $file) { 
if(@eregi($_POST['searched'], str_replace($dir, "", $file))) { 
echo("<a href='".$file."' target=_blank>".str_replace($dir, "", $file)."</a><br />\n"); 
$flag+=1; 
} 
} 
if($flag==false) { 
echo("Няма намерени файлове."); 
} 
} 
?> 
</center> 
</body> 

</html>
Там където пише value="other/" това е името на директорията.
Ето сега за качването
Код:
<?php 
// Максимална големина на файла за качване (сега е 2 ГБ) 
$MAX_SIZE = 268435456; 


$FILE_EXTS = array('.zip','.jpg','.png','.gif','.doc','.avi','.sub'); 


// Възможност за триене на качени файлове. При TRUE - може да се трият, при FALSE - не. 
$DELETABLE = false; 



$site_name = $_SERVER['HTTP_HOST']; 
$url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']); 
$url_this = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; 

$upload_dir = "$dir"; 
$upload_url = $url_dir."/$dir"; 
$message =""; 


if (!is_dir("files")) { 
if (!mkdir($upload_dir)) 
die ("upload_files директорията не съществува и създаването и е невъзможно."); 
if (!chmod($upload_dir,0755)) 
die ("change permission to 755 failed."); 
} 


if ($_REQUEST[del] && $DELETABLE) { 
$resource = fopen("log.txt","a"); 
fwrite($resource,date("Ymd h:i:s")."DELETE - $_SERVER[REMOTE_ADDR]"."$_REQUEST[del]\n"); 
fclose($resource); 

if (strpos($_REQUEST[del],"/.")>0); 
else if (strpos($_REQUEST[del],$upload_dir) === false); 
else if (substr($_REQUEST[del],0,6)==$upload_dir) { 
unlink($_REQUEST[del]); 
print "<script>window.location.href='$url_this?message=deleted successfully'</script>"; 
} 
} 
else if ($_FILES['userfile']) { 
$resource = fopen("log.txt","a"); 
fwrite($resource,date("Ymd h:i:s")."UPLOAD - $_SERVER[REMOTE_ADDR]" 
.$_FILES['userfile']['name']." " 
.$_FILES['userfile']['type']."\n"); 
fclose($resource); 

$file_type = $_FILES['userfile']['type']; 
$file_name = $_FILES['userfile']['name']; 
$file_ext = strtolower(substr($file_name,strrpos($file_name,"."))); 

// Ако променята макс. големина на качващия се файл променети и по-долното съобщение. 
if ( $_FILES['userfile']['size'] > $MAX_SIZE) 
$message = "Този файл е над 2 GB."; 

else if (!in_array($file_ext, $FILE_EXTS)) 
$message = "Извинете, $file_name($file_type) не може да се качи(файла не е поддържан)."; 
else 
$message = do_upload($upload_dir, $upload_url); 

print "<script>window.location.href='$url_this?message=$message'</script>"; 
} 
else if (!$_FILES['userfile']); 
else 
$message = "Невалиден формат."; 


$handle=opendir($upload_dir); 
$filelist = ""; 
while ($file = readdir($handle)) { 
if(!is_dir($file) && !is_link($file)) { 
$filelist .= "<a href='$upload_dir$file'>".$file."</a> - URL: <b>$upload_url$file</b>"; 
if ($DELETABLE) 

$filelist .= " Качен на ".date("d-m H:i", filemtime($upload_dir.$file)) 
.""; 
$filelist .= " <a style='text-decoration:none; font-weight:bold' href='?del=$upload_dir".urlencode($file)."' title='delete'>x</a>"; 
$filelist .="<br>"; 
} 
} 

function do_upload($upload_dir, $upload_url) { 

$temp_name = $_FILES['userfile']['tmp_name']; 
$file_name = $_FILES['userfile']['name']; 
$file_name = str_replace("\\","",$file_name); 
$file_name = str_replace("'","",$file_name); 
$file_path = $upload_dir.$file_name; 


if ( $file_name =="") { 
$message = "Грешно име"; 
return $message; 
} 

$result = move_uploaded_file($temp_name, $file_path); 
if (!chmod($file_path,0777)) 
$message = "change permission to 777 failed."; 
else 
$message = ($result)?"$file_name е качен успешно." : 
"Има грешка с избрания файл."; 
return $message; 
} 

?> 


<html> 
<head> 
<title>Форма за качване</title> 
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> 
<link rel=stylesheet href=style.css> 
</head> 
<body> 
<br><br> 
<center> 
<font color=red><?=$_REQUEST[message]?></font> 
<br> 
<form name="upload" id="upload" ENCTYPE="multipart/form-data" method="post"> 
  <select name="dir" id="dir"> 
    <option value="movies/">Филми
    <option value="clips/">Клипове 
    <option value="games/">Игри 
    <option value="pics/">Картинки 
    <option value="softwares/">Програми 
    <option value="flash/">Флаш 
    <option value="docs/">Документи 
    <option value="pages/">Страници 
    <option value="subs/">Суптитри 
    <option value="downloads/audio">Музика 
    <option value="other/">Друго</option> 
    </select> 
Качи файл <input type="file" id="userfile" name="userfile"> 
<input type="submit" name="upload" value="Upload"> 
</form> 
<br><b><u>Качени файлове:</b></u><br><br> 
По-долу е индексирането на файлове: 
<?=$filelist?><br>Този скрипт е направен от 
<a style="text-decoration:none" href="http://deam0n.hit.bg">deam0n</a> 
</sup></small> 
</center>

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

Back
Горе