Avatar billede Slettet bruger
12. juni 2003 - 10:27 Der er 11 kommentarer og
3 løsninger

Upload til FTP med fopen()

$handle = fopen("ftp://xxxx:xxxx@domæne/test.txt","w") or print "error1";
fwrite($handle,$data) or print "error2";
fclose($handle) or print "error3";

Denne kode virker på vores lokale server men på vores eksterne server bliver der hverken uploaded fil eller genereret fejl...

Ekstern server: RH7.3, PHP4.2.2
Intern server: Win2k, PHP4.3.1
Avatar billede tipsen Nybegynder
12. juni 2003 - 11:05 #1
hvilken af de 3 linier tilter den på?
Avatar billede Slettet bruger
12. juni 2003 - 11:08 #2
Ingen af dem... der kommer ingen fejl.
Avatar billede jpvj Nybegynder
12. juni 2003 - 11:11 #3
Er du sikker på, at det virker lokalt med FTP??

FTP kræver 2 connections for at virke. Enten kører du Active mode eller også Passive. En rigtig god guide er her: http://slacksite.com/other/ftp.html

Jeg kan ikke lige se, hvordan det skulle fungere med din kode...
Avatar billede Slettet bruger
12. juni 2003 - 11:28 #4
Ja, jeg har gemt ovennævnte kode i test.php og kørt det samme script på begge servere.
Avatar billede jpvj Nybegynder
12. juni 2003 - 11:40 #5
*Sorry* - har lige dummet mig... troede vi var i c/c++

Fra PHP dokumentationen:
If filename begins with "ftp://" (not case sensitive), an ftp connection to the specified server is opened and a pointer to the requested file is returned. If the server does not support passive mode ftp, this will fail. You can open files for either reading or writing via ftp (but not both simultaneously). If the remote file already exists on the ftp server and you attempt to open it for writing, this will fail. If you need to update existing files over ftp, use ftp_connect().

Kan problemet ligge her?
Avatar billede Slettet bruger
12. juni 2003 - 11:44 #6
Hvor?

Fejlen kan ikke rigtig ligge på "modtager" serveren da scriptet virker fra én server men ikke en anden.
Avatar billede jpvj Nybegynder
12. juni 2003 - 11:48 #7
Det kan vel være, at den server som der "hostes" på, ikke må starte forbindelser ud. Ved ikke om der kan sættes "restrictions" på PHP installationen. Har du hørt din ISP?
Avatar billede tipsen Nybegynder
12. juni 2003 - 11:48 #8
Prøv:

$handle = fopen("ftp://xxxx:xxxx@domæne/test.txt","w") or print "error1";
echo "titler i 1. linie!";
fwrite($handle,$data) or print "error2";
echo "titler i 2. linie!";
fclose($handle) or print "error3";
echo "titler i 3. linie!";

hvad er output fra det?
Avatar billede Slettet bruger
12. juni 2003 - 11:57 #9
titler i 1. linie!titler i 2. linie!titler i 3. linie!

Jeg sagde jo, at der ikke blev genereret nogen fejl...
Avatar billede Slettet bruger
12. juni 2003 - 11:58 #10
jpvj, jeg har forresten været i stand til at uploade til en helt trejde server - så det kan ikke være det.
Avatar billede tipsen Nybegynder
12. juni 2003 - 12:09 #11
net: Ja, men du sagde ikke om den stoppede eller kørte færdigt - har tidligere set et problem med url_fopen_wrappers som bevirkede at scriptet bare stoppede i første linie uden fejl eller noget!
Avatar billede tipsen Nybegynder
12. juni 2003 - 12:10 #12
Har ingen forslag her.
Avatar billede nanodead Nybegynder
12. juni 2003 - 12:10 #13
den server du prøver at forbinde dig til, er du sikker på at den understøtter passv. ftp mode?, og i givet fald, at der ikke er lukket af for de porte der er afsat til passv. connections?, det kunne være en firewall hos dig, eller der hvor den eksterne ftp står..
prøv at forbinde dig til den eksterne ftp server med en ftp klient, og sikre dig at du køre passv., jeg er næsten sikker på at det er der problemet ligger.
Avatar billede Slettet bruger
12. juni 2003 - 12:40 #14
Ja, den understøtter også passiv mode. Jeg kunne connecte med WS_FTP og uploade filer fint...

Jeg har opgivet - bruger i stedet: http://www.eksperten.dk/spm/363813
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