takze mam takto skript a neviem nahravat velke subory neskusal som presne ake velke mozem nahravat ale chcel by som aby sa dali aspom 20mb ale nevim kede mam aku funkciu nastavit:
<form action="#" method="post" enctype="multipart/form-data">
<input type="file" name="fupload">
<input type="submit" value="Nahrát">
</form>
<?php
if (isset($_FILES['fupload']))
{
if($_FILES['fupload']['type']=="application/octet-stream"){ // Pokud soubor bude mít kocovku .php, upload se neprovede a vypíše hlášku
echo "Soubory s příponou PHP jsou zakázány!"; // Která je zde
}else{ // Pokud soubor není PHP, script se provede
$slozka = "upload"; // Zde si napište svojí složku, do které se budou soubory ukládat (bez lomítka)
$cil = $slozka . "/" .$_FILES['fupload']['name']; // Toto je proměnná $cil, která obsahuje adresář, kde se má soubor uploadovat a taky název souboru.
$nazev_souboru = $_FILES['fupload']['tmp_name']; // Zjistí dočastné umístění souboru
$copy = move_uploaded_file($nazev_souboru, $cil); // A tady zkopíruje soubor z dočastného umístění do cílového souboru a složky
chmod ($cil, 0644); // Ještě na soubor vyhodíme funkci chmod, která změní jeho práva na maximum, pokud by soubor psal chybu změňte 0644 na 0777
if($copy == true){ // Pokud se kopírování provede úspěšně
echo "Soubor " .$_FILES['fupload']['name']. " byl úspěšně nahrán na server.\n<br><a href=\"$cil\">Jdi na soubor</a>";
}else{
echo "Soubor nemohl být nahrán.\nPočet chyb: " . $_FILES['fupload']['error'];
}
}
}
?>
Přes webové rozhraní je možné standardně nahrát maximálně 2MB.
Pokud chceš víc, musel bys to nastavit přes .htaccess přidáním
php_value upload_max_filesize 20M
<HTML>Jen bych opravila, že přes webové rozhraní jde 5MB.
A nemůžu si odpustit OT: to Vytajte vypadá strašně. A ten wz banner by taky neměl být v index.html, ale ve web/news.php.</HTML>
neviem ako tam mam dat ten banner
nejde to dal som tam
php_value upload_max_filesize 50M
dal som tam 24mb subore a vypuisalo toto:
Spojení přerušeno
Spojení se serverem bylo v průběhu načítání stránky ukončeno.
Spojení bylo v průběhu otevírání komunikačního kanálu se serverem neočekávaně přerušeno. Opakujte akci.
... a co jsi udělal potom?
Je otázka, co vlastně chceš dosáhnout? Ty chceš, aby ti někdo nahrával na web soubory o velikosti max. 50 MB? To je na pováženou. A pokud chceš uploadovat ty soubory sám, použij FTP klienta - velikost souboru pak není omezena.
ano ja chcem aby mi niekto na server nahraval subory o velkosti 50mb
chcem dosiahnut aby sa tam ce prehliadac dal dat taky subor
Thalia: Přes webové rozhraní 5 MB? Možná jak kde, ale mi to napsalo tohle: Warning: upload_max_filesize of 2097152 bytes exceeded - file [jmeno_souboru=... atd. V phpinfo je nastaveno 2 MB.
Když jsem to nastavil na 50 MB - tak to odesílalo (nevím kolik) ale po nějakém čase to napsalo hlášku Spojení přerušeno (viz výše). Myslím, že to souvisí s nastavením memory_limit na 40M (podle phpinfo) - a tahle velikost odhadem byla uploadována. Takže to vypadá, že nějvětší soubor může mít kolem 40 MB, pak dojde serverem nastavená paměť a upload se zruší.
a nesouvisí stím nejak třebas automatické odpojování při FTP spojení, kde je nastaveno 300 sec. a pak se spojení automaticky ukončí?
amiricas: Přečti si o čem je řeč a pokud jsi text pochopil, pak je tvá odpověď mylná.
V prvé řadě zde mluvíme o HTTP přenosu. Tento druh přenosu je omezen maximální velikosti souboru, který je defaultně nastaven na 2MB. Tuto hodnotu je možné změnit v konfiguraci serveru.
Naproti tomu FTP přenos pracuje jinak. Ten je určen právě pro přenos souborů. Takže zde není žádné omezení velikosti.
Automatické odpojování, o kterém mluvíš, je myšlen nečinný stav, kdy nic nepřenášíš. Jen zůstaneš viset. Během přenosu není žádný časový limit.
A když už mluvíme o časovém omezení, tak tam, kde jsem našel ten zápis, jsem narazil na cosi s nastavenim časového limitu. Teď si tu adresu nepamatuji. Byla to jen rychlovka přes google, kdy jsem hledal zápis pro upload_max_filesize.
Takže je klidně i možné, že v tom hraje roli i čas. Což mi tak trochu připadá i blbost.
Lamův názor o limitě paměti se mi taky zamlouvá.