Autor | Zpráva | ||
---|---|---|---|
H4rm Profil |
#1 · Zasláno: 8. 7. 2008, 01:34:36
Ahoj, mám na webu výpis souborů, a vždy se mi z toho utvoří odkaz, ale odkazuje špatně. Mělo by me to odkazovat:
http:///file-hosting.hu.cz/files/soubor.txt a ono odkazuje http://www.file-hosting.hu.cz/soubor.txt V scriptu jsem zkoušel různé blbosti, ale nejde. Přikládám script, jestli mi to někdo můžete vyřešit tak díky: <? $nas_sou="soubory.php"; $handle=opendir('./files/'); $i=0; $j=0; while (false!==($file = readdir($handle))) { if ($file!="."&&$file!=".."&&!is_dir($file)&&$file!=$nas_sou) { $soubor[$i]="$file"; $i++; } if ($file != "." && is_dir($file)) { $adresar[$j]="$file"; $j++; } } closedir($handle); function vypis($s,$v,$z) { echo "<table>\n"; for($i=0;$i<count($s);$i++) { echo "<tr><td>"; echo '<a href="'.$s[$i].'" target="_blank">'.$s[$i].'</a>'; echo "</td><td>$v[$i]"; echo "</td><td>$z[$i]"; echo "</td></tr>\n"; } echo "</table>\n"; } echo "<hr>Soubory:<hr>\n"; vypis($soubor,$velikost,$zmena); ?> Předem díky ;) |
||
jrm Profil |
#2 · Zasláno: 8. 7. 2008, 08:43:20 · Upravil/a: jrm
U mne výše uvedené na locale funguje. Kdysi jsem odladil tento skript:
<html> <head> <meta http-equiv="Content-Language" content="cs"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2"> <title>stahuj</title> <style type="text/css"> * { font-family: verdana, "arial ce", "helvetica ce", arial, helvetica, sans-serif; font-size: 11px; } body { margin: 5px; padding: 0px; color: navy; background-color: #ffffff; } </style> </head> <body> <p>Výpis adresářů [DIR] s dalšími soubory ke stažení:<br> <? $path = "."; if ($handle=opendir($path)) { while ($file = readdir($handle)) { $polozky[count($polozky)] = $file; } closedir($handle); sort($polozky); } reset($polozky); while (list($key, $val) = each($polozky)) { if ($val != "." && $val != "..") { if (is_dir($val)) { echo "[DIR] ---> "; echo "<a href=\"$val\">$val</a><br>\n"; } } } ?> <br>Více adresářů tento adresář neobsahuje. <a href="../">O adresář výš</a> </p> <hr width="600" align="left"> <br> <table width="600" border="1" cellpadding="3" cellspacing="0"> <tr> <th width="400">Soubor ke stažení</th> <th width="100">délka</th> <th width="100">aktualizace</th> </tr> <? reset($polozky); while (list($key, $val) = each($polozky)) { if ($val != "." && $val != "..") { if (!is_dir($val) && !eregi("\.php|\.ico",$val)) { echo "<tr><td><a href=\"$val\">$val</a></td> <td align='right'>" . number_format(filesize($val), 0, "", " ") . " </td> <td align='center'>" . strftime("%d.%m.%Y",filemtime($val)) . "</td></tr>\n"; } } } ?> </table> <p>Více souborů ke stažení v tomto adresáři není.</p> </body> </html> Skript (index.php) pak nahrávám do každého adresáře, který chci tímto způsobem prohlížet. |
||
H4rm Profil |
#3 · Zasláno: 8. 7. 2008, 09:02:18
U mne výše uvedené na locale funguje. Vsak u me to taky bezi, jen kdyz mi to vypise nejake soubory napr.: z adresare 'FILES' tak to znich udela odkaz ve formatu: http://www.file-hosting.hu.cz/obrazek.jpg misto http://file-hosting.hu.cz/files/obrazek.jpg Kdysi jsem odladil tento skript: Mel jsem podobny, jenom ja nepotrebuji vypisovat i adresare, ja potrebuji jen soubory. Praktická ukázka mého problému: http://www.file-hosting.hu.cz/soubory.php |
||
Matty Profil |
#4 · Zasláno: 8. 7. 2008, 09:16:11
H4rm
Zkus trošku přemýšlet než se zeptáš na takovou trivialitu (základy HTML): ... echo '<a href="files/'.$s[$i].'" target="_blank">'.$s[$i].'</a>'; ... |
||
H4rm Profil |
#5 · Zasláno: 8. 7. 2008, 09:19:05
To me vubec nenapadlo :)
Moc diky |
||
jrm Profil |
#6 · Zasláno: 8. 7. 2008, 09:22:58 · Upravil/a: jrm
Na locale mi fungují samozřejmě správně i odkazy, protože jsem na řádku
$handle=opendir('./files/'); ponechal jen $handle=opendir('.'); abych adresář nemusel přidávat. Pak stačí, aby sis ho ty doplnil v definici odkazu na řádku: echo '<a href="'.$s[$i].'" target="_blank">'.$s[$i].'</a>'; Doufám, že ti to pomůže. Jinak mne pletly ve tvém příspěvku také ta tři lomítka za http, a to, že uvádíš rovněž rozdíl v adresách s www a bez www. Inu jsem pouze amatér :-D Dodatek: jak vidím, tak pozdě :-( |
||
H4rm Profil |
#7 · Zasláno: 8. 7. 2008, 11:01:05
Když už jsme u toho výpisu souborů, jde nějak udělat SCRIPT aby se mi zobrazovaly soubory z adresáře podle IP? Jako že by se zobrazil jen ten soubor co jsem nahrál ;)
|
||
Matty Profil |
#8 · Zasláno: 8. 7. 2008, 11:04:13
H4rm
Samozřejmě. Například tak, že zjistíš uživatelovu IP, odstraníš tečky a vytvoříš takto pojmenovaný adresář. Pak jen vypíšeš soubory podle toho adresáře. |
||
H4rm Profil |
#9 · Zasláno: 8. 7. 2008, 11:19:53
Tak teď jsem asi narazil :( páč vůbec netuším jak. Mám script na výpis počtu souborů, nejde to nějak z toho předělat? Jestli ano můžete mi někdo nějak udělat nebo pomoct? =) Díky
<?php $pocet_souboru=0; if ($slozka = opendir('./files/')) { while (false !== ($file = readdir($slozka))) { if ($file != "." && $file != "..") { $pocet_souboru++; } } closedir($slozka); } print $pocet_souboru; ?> |
||
souki Profil |
#10 · Zasláno: 8. 7. 2008, 11:51:00
Matty
To ale nebude fungovat na 100% :) Vezmi si třeba IP 77.20.11.1 a 72.20.1.11 :) |
||
Časová prodleva: 16 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0