Avatar billede heyn Nybegynder
24. marts 2010 - 12:48 Der er 24 kommentarer og
1 løsning

Foretage upload af store filer med FTP

Hej Eksperter

Jeg har lavet en side hvorfra jeg kan uploade nogle cvs- og xml-filer, som systemet så kan arbejde med. Jeg vælger filerne fra en mappe og anvender
<input name="et_navn" type="file" size="60" />
<input name="et_andet_navn" type="file" size="60" />
Alt fungerer med mine testfiler.
Når jeg skal uploade mine virkelige filer, så viser det sig at de er for store. Jeg må altså bruge FTP.
Har nogle et forslag til hvordan det gøres?

Mvh Christian
Avatar billede repox Seniormester
24. marts 2010 - 12:52 #1
Hvad størrelse er 'for store'?
Avatar billede michael_stim Ekspert
24. marts 2010 - 12:54 #2
Standard upload er vist 2 MB. Har du adgang til ini filen, kan du øge max_file_upload.
Avatar billede heyn Nybegynder
24. marts 2010 - 12:57 #3
Nogle gange mere end 10 mb
Avatar billede michael_stim Ekspert
24. marts 2010 - 13:01 #4
Og upload_max_filesize, hedder den ;o)
Avatar billede repox Seniormester
24. marts 2010 - 13:02 #5
Lav en .htaccess, smid den i roden af din http mappe og smid dette i:
php_value upload_max_filesize 200M
php_value post_max_size 200M
Avatar billede michael_stim Ekspert
24. marts 2010 - 13:15 #6
200 mb, er det ikke at tage i ;o)
Avatar billede heyn Nybegynder
24. marts 2010 - 13:21 #7
Det er vores webhotel som ikke tillader http-upload over 2mb. Vi har ikke adgang til .ini filer, men har adgangskode til ftp-upload. Vi kan ikke gøre så meget ved det, og er derfor tvunget til at anvende ftp. Filerne skal placeres i mappen ./upload/
Avatar billede repox Seniormester
24. marts 2010 - 13:30 #8
Har du prøvet .htaccess løsningen?
Avatar billede heyn Nybegynder
24. marts 2010 - 13:42 #9
DanDomain tillader ikke ændring af htaccess
Avatar billede repox Seniormester
24. marts 2010 - 13:47 #10
lol
Godt så :)
Løsningen på din problematik må så være at finde dig en seriøs udbyder istedet for...
Avatar billede michael_stim Ekspert
24. marts 2010 - 13:47 #11
Hvad mener du? Det er ikke en eksisterende fil, men en fil du selv lægger op.

http://www.dandomain.dk/support/prog/php-htaccess.html
Avatar billede acore Ekspert
24. marts 2010 - 13:51 #12
ftp i PHP er ret let. Du skal bruge din $host, $user og $passwd. Og så skal du kende filnavnet lokalt - $lfile og på serveren - $sfile. På serveren starter filnavnet i det directory, der er default for den pågældende $user.

Derefter er det let:

if (($conn_id = ftp_connect($host)) && ftp_login($conn_id, $user, $passwd) && ftp_get($conn_id, $sfile, $lfile, FTP_BINARY))
{
  echo("OK");
}
else
{
  echo("FEJL");
}
@ftp_close($conn_id);

Det plejer at virke umiddelbart med de ftp-oplysninger, man får fra web-hotellet. Nogen gange er der er firewall, som blokerer, og så skal du indsætte:

ftp_pasv($conn_id, TRUE);

efter ftp_connect og ftp_login, men før ftp_get.
Avatar billede repox Seniormester
24. marts 2010 - 13:52 #13
Mon så ikke også at øge grænsen gennem htaccess burde være en mulig løsning...
Avatar billede repox Seniormester
24. marts 2010 - 13:53 #14
#12
Hvordan løser det den problematik som OP har forelagt?
Avatar billede acore Ekspert
24. marts 2010 - 14:02 #15
#13
Han spørger hvordan han kan uploade med ftp. Det viser jeg.

Det skal self kombineres med et script, hvor filnavnet angives. Det kan ikke blive med browse, men skrive filnavnet er vel ok. Det script placeres på serveren og kaldes via browseren. Beklager, men det troede jeg var selvklart.

Jeg synes min løsning er mere seiøs end en ny udbyder.
Avatar billede michael_stim Ekspert
24. marts 2010 - 14:05 #16
#14

Tror nu spørger bare fortæller os at han/hun er nød til at bruge en ftp klient for at uploade store filer. Der skal under alle omstændigheder tages højde for begrænsningerne med filstørrelsen der skal uploades.
Avatar billede michael_stim Ekspert
24. marts 2010 - 14:06 #17
Hov den var til #15
Avatar billede acore Ekspert
24. marts 2010 - 14:06 #18
Ups - ser lige at ftp_get skal erstattes med ftp_put i min kode. Sådan går det, når man kopierer.
Avatar billede repox Seniormester
24. marts 2010 - 14:06 #19
#15
OP har problemer med at hans uploadscript ikke tillader ham at uploade store filer gennem hans webapplikation. Hvordan kan dit script hente hans lokale filer, som han ikke må uploade pga. af udbyderens begrænsninger?

Udover det, så synes jeg det er trist at høre at der stadig findes folk som vil tages ved røven, ved at nøjes med de her 'discount' udbydere...
Avatar billede acore Ekspert
24. marts 2010 - 14:11 #20
Det må jo komme an på en test, om det virker.

Men jeg har både up- og downloaded filer større end angivet i .htaccess på den måde hos one og domaindirect. Begrænsningerne der gælder ikke for ftp er jeg ret sikker på. Det har jeg hidtil forklaret over for mig selv ved at det var hver sin protokol - http og ftp - og hver sine begrænsninger.
Avatar billede repox Seniormester
24. marts 2010 - 14:13 #21
jeg er ikke sikker på om jeg skal græde eller grine...
Avatar billede heyn Nybegynder
24. marts 2010 - 14:23 #22
Man kan jo blive nødt til at anvende den udbyder som ens arbejdsgiver har valgt.
Nå - spurgte en kollega ang. dette med .htaccess. Lige præcis dette script viser sig ikke at køre hos DanDomain, men en anden udbyder. Jeg kan altså godt anvende .htaccess.
Jeg er dog stadig meget taknemmelig for jeres input ang. ftp-upload da jeg ret sikkert vil få brug for det i anden sammenhæng. Smider i alle et svar?

Mvh Christian
Avatar billede repox Seniormester
24. marts 2010 - 14:25 #23
jeg springer bare over...
Avatar billede michael_stim Ekspert
24. marts 2010 - 14:34 #24
Samler ikke.
Avatar billede acore Ekspert
24. marts 2010 - 14:38 #25
Min løsning kræver at du har en ftp server kørende lokalt og det har man jo langfra altid. Og det er så den du skal logge ind på - ikke serveren, hvor scriptet jo afvikles.

Det havde jeg glemt og det var nok det repox hentydede til i sin - knap så konstruktive - kommentar i #21.

Om du synes synes det er point værd må du selv afgøre...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester