| Autor | Zpráva | ||
|---|---|---|---|
| Shader Profil |
#1 · Zasláno: 8. 1. 2009, 17:56:09 · Upravil/a: Shader
Zdravím, mám upload script, jenze kdyz nahraju soubor.rar a chci zase nahrát soubor.rar, tak se mi ten původní přepíše... a já bych chtěl přejmenovávat všechny soubory třeba na 175857574.rar , ale pokaždé jiní kombinace :) přikládám svůj UPLOAD.PHP
<?
if ($akce == "Nahrát!") {
if ($soubor_type == "text/plain" or $soubor_type="text/html") {
if (move_uploaded_file ($soubor, "$server/$soubor_name")) {
print "Soubor<b> $soubor_name </b>o velikosti<b> $soubor_size </b>bajtů
byl úspěšně uploadnut na server<BR>";
echo "<br><b>Pro sdílení s kamarády:</b><br>";
echo "<textarea readonly name='code2' style='width:550px;height:20px;font-size:11px;color:#999999;' onClick=\'javascript:copyit('codeform.code2');\'>http://www.web.cz/php/$server/$soubor_name</textarea><br><br>";
echo "<b>Smazat soubor:</b><br>";
echo "<textarea readonly name='code2' style='width:550px;height:20px;font-size:11px;color:#999999;' onClick=\'javascript:copyit('codeform.code2');\'>http://www.web.cz/php/smazat.php?d=$soubor_name</textarea><br><br>";
echo "<table style='text-align: left; width: 234px; height: 190px;'
border='0' cellpadding='2' cellspacing='2'>
<tbody>
<tr>
<td><span style='font-weight: bold;'>Náhled:</span></td>
<td><span style='font-weight: bold;'>Popis:</span></td>
</tr>
<tr>
<td><a href='http://www.web.cz/php/$server/$soubor_name' target='_blank'><img
style='border: 0px solid ; width: 150px; height: 150px;'
alt='Váš soubor'
src='http://www.web.cz/php/$server/$soubor_name'></a>
</td>
<td><textarea readonly='readonly' style='width: 240px; height: 20px;' name='popis'>$popis</textarea></td>
</tr>
</tbody>
</table>
";
echo "<br><b>Odkazy na email:</b> <form enctype='multipart/form-data' method='post'
action='index.php?stranka=mail' name='om'><input name='email'
value='@'> <input name='odeslat'
value='Odeslat' type='submit'></form>
";
mail ("vas@email.cz", "Nahrán nový soubor! [$soubor_name]",
"Na server byl nahrán nový soubor\nJméno: $soubor_name\nPopis: $popis\nServer: $server\nIP: $REMOTE_ADDR\n",
"From: uploadsystem@vasemail.cz\nX-web: http://www.web.cz/php/index.php");
}
else {
print "Při nahrávání souboru došlo k chybě!<BR>";
}
}
else {
print "Soubor není požadového MIME typu!<BR>";
}
}
?>
Předem děkuuji Shader |
||
| Taps Profil |
#2 · Zasláno: 8. 1. 2009, 18:49:30
Shader
zkus využít funkce time |
||
| Shader Profil |
Taps
Aha ale to newím jak... |
||
| David14 Profil * |
#4 · Zasláno: 8. 1. 2009, 20:56:36
pocet sekund od 1.1.1970 vyhadzuje funkcia mktime() takze tak mozes dosta stale ine cislo
|
||
| Medvídek Profil |
#5 · Zasláno: 8. 1. 2009, 21:04:20
pouzij aktualni datum a cas a nazev souboru :)
|
||
| Anonymní Profil * |
#6 · Zasláno: 8. 1. 2009, 22:44:30
premenuj to na rand(1000000,9999999) a mas
|
||
| Shader Profil |
#7 · Zasláno: 9. 1. 2009, 00:37:32 · Upravil/a: Shader
Anonymní
Já právě newím vůbec "jak" na to rename, kam to ve scriptu vložit ( no asi někam před move_uploaded_file), natož jak ho napsat... :( |
||
| David14 Profil * |
#8 · Zasláno: 9. 1. 2009, 10:33:10
if (move_uploaded_file ($soubor, "$server/$soubor_name")) {
v tomto riadku sa subor premenuvava, v premennej $soubor je jeho povodne umiestnenie (napr. "www/soubory/archiv.rar"), v premennej $server je adresa do priecinka ("www/soubory) a v premennej $soubor_name je nazov noveho suboru ($novyarchiv.rar) www je v priklade nazov domovskeho adresara. No tak co ty potrebujes je dat do $soubor_name nejaky unikatny nazov, aby ti to nekolidovalo s subormi co uz tam su nahrate. Okrem toho ze sa da skontrolovat ci dany nazov suboru uz v priecinku existuje (napr. cez triedu class), mozes mu dat proste zarucene unikatny nazov a to pomocou funkcie mktime()(ako som uz pisal)(rand moze s velkym stastim vyhodit uz existujucu hodnotu :)) Takze si proste pred horeuvedeny riadok napis toto: $arr = explode (".rar", $soubor_name); $arr[0] = mktime(); $soubor_name = implode (".rar", $arr); teraz sa novy subor vola 1231493243.rar aby sa ti zachoval povodny nazov suboru, mozes si napisat radsej toto: $arr = explode (".rar", $soubor_name); $pom = $arr[0]; $arr[0] = (mktime() - 1231493543); $soubor_name = implode (".rar", $arr); $soubor_name = $pom.$soubor_name; echo $soubor_name; |
||
| David14 Profil * |
#9 · Zasláno: 9. 1. 2009, 10:34:51
echo vyhodi teraz nieco ako archiv433.rar
|
||
| Shader Profil |
#10 · Zasláno: 9. 1. 2009, 13:39:22 · Upravil/a: Shader
David14
Je to dobrý, akorát potřebuji aby to přejmenovávalo všechny formáty. a n ejenom .rar |
||
| David14 Profil * |
#11 · Zasláno: 10. 1. 2009, 18:19:11
tak si to uprav, co vobec nevies robit s PHP? ...
|
||
| Shader Profil |
#12 · Zasláno: 10. 1. 2009, 22:00:36
zkoušl jsem to upravit a hází to podivnou chybu... :), ještě na to mrknu a uvidím.... :)
|
||
|
Časová prodleva: 17 let
|
|||
0