09.01.2009 16:18
Kdo je On-line
· Hosté On-line: 3

· Členové On-line: 0

· Registrovaní členové: 142
· Nejnovější člen: LukePuke
Kdo je/byl ON-LINE
admin00:52:24
Lubkokr03:48:41
mafra06:11:04
Toura07:15:52
Olser. 1 den.
Kvetos. 2 dny.
Zitek. 2 dny.
LukePuke. 4 dny.
Pexa. 4 dny.
fifa. 4 dny.
©
Toplist
TOPlist
TOP
Náhodné foto
Reklama
Newsletter
Přihlášení
Jméno

Heslo



Nejste členem?
Klikněte sem
a zaregistrujte se.

Zapoměli jste heslo?
Pro zaslání nového
Klikněte sem.
Hyde Park - přehled
Invex 2008
V pondělí 6.10.2008 začíná v Brně veletrh INVEX 2008. Potrvá do 9.10.2008. Zde je malá pozvánka do některých expozic.
Kategorie: Počítače
Reklama
Změň vzhled!
Výběr:
Link - výměna
Počasí v Česku
Anketa
TOP TV moderátoři?





















Aby jste mohli hlasovat, musíte být přihlášený.
BAN čtenářům
Musíte se přihlásit pokud chcete hlasovat.
Hlasování
Hodnoť tento web
PHP: Webhosting ořezal funkci "copy" - řešení
PHP

Často se můžeme setkat s tím, že webhostingoví poskytovatelé omezují funkci "copy", aby tak zabezpečili svůj server pro jednotlivé uživatelé. Jenže, co když potřebuje uživatel kopírovat/nahrávat své soubory pomocí PHP? Článek přináší řešení.

Ano, bezpečnost nade vše, říkají poskytovatelé webhostingových stránek. Řada z nich proto ostřihává funkci copy, a to tak, že ji omezuje na konkrétní adresář uživatele. V tom případě může uživatel kopírovat soubory díky funkci move_uploaded_file. K tomuto účelu nám poslouží soubor upload.php

#zkouska.php

if ($save) {
$uploadpath = $_SERVER['DOCUMENT_ROOT'];

$uploaddir='zkouska/tmp/';
$uploaddir2='zkouska/soubory/';

$uploadfile = $uploadpath.$uploaddir.$_FILES['userfile']['name'];

if (move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile)) { echo "Soubor byl presunut z ".$_FILES['userfile']['tmp_name']." do $uploadfile
";

Copy($uploadpath.$uploaddir.$_FILES['userfile']['name'],
$uploadpath.$uploaddir2.$_FILES['userfile']['name']);
echo "Soubor byl zkopirovan do adresare $uploaddir2
";
@unlink($uploadpath.$uploaddir.$_FILES['userfile']['name']);
echo "Docasny soubor odstranen z $uploaddir
";

echo "
Informace o souboru:
";
print_r($_FILES);
echo "";
}
}
?>
<form name="image_edit" method="post" enctype="multipart/form-data">
<input name="userfile" type="file">
<input name="save" type="submit" value="Nahrat soubor">
</form>

  1. Tento skript si nyní pojmenujeme zkouska.php.
  2. Poté vytvoříme pomocí FTP klienta na webhostingu adresář, třeba takový: váš_webhosting/zkouska.
  3. Dále do tohoto adresáře opět prostřednictvím prostřednuctvím klienta FTP (případně přes interní webhostingové rozhraní) nakopírujeme soubor "zkouska.php".
  4. Nyní vyrobíme podadresáře tmp a soubory, u nichž nezapomeneme nastavit práva tzv. CHMOD 777. Jde o změnu atributů, kterou provedeme ve FTP klientovi.
  5. Na konec vše ověříme otevřením scriptu PHP - zkouska.php - v internetovém prohlížeči.

Resumé

Ještě na doplnění. Všechny soubory, které přeneseme na vzdálený webhosting se automaticky dostanou do adresáře, který řídí direktiva upload_tmp_dir konfiguračního souboru "php.ini" na zmíněném serveru. Takový adresář je pochopitelně umístěn na jiné adresářové větvi, takže abychom mohli se soubory pracovat, museli jsme proto předem vytvořit potřebné adresáře "temp". Vidíte také, že je použit vedle atributu "method" také atribut "enctype". Skriptík funguje skvěle. Takže vám umožní kvalitní upload obrázků a souborů na webhostingový server.

Komentáře
Zatím nikdo nekomentoval. Buďte proto první a vložte svůj komentář.
Přidat komentář
Aby jste mohli přidávat komentáře, musíte být přihlášený.
Hodnocení
Musíte být registrovaný, aby jste mohli hodnotit.

Prosím přihlašte se, a nebo se zaregistrujte.

Zatím nikdo nehodnotil.