uploaden naar ftp in passive mode
Ik heb verbinding via een router/switch/modem met firewall erin, en dus moet ik passive mode gebruiken.
Ik heb het volgende:
en dan ziet mijn ftpconnect.php er zo uit:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
$ftp_host = 'ftp.members.lycos.nl';
// if ftp server across proxy set $ftp_port to 2121
$ftp_port = "21";
$ftp_user_name = '***';
$ftp_user_pass = '***';
// connect to FTP-server (or firewall)
$ftp_conn = @ftp_connect($ftp_host,$ftp_port);
// meld je aan met een gebruikersnaam en wachtwoord
$login_result = @ftp_login($ftp_conn, $ftp_user_name, $ftp_user_pass);
if ((!$ftp_conn) || (!$login_result)) {
echo "FTP connectie is mislukt! <br>\n";
#echo "Probeerde naar $ftp_host te verbinden met de gebruiker $ftp_user_name <br>\n";
exit;
}
// turn on passive mode transfers
ftp_pasv ($ftp_conn, true);
?>
$ftp_host = 'ftp.members.lycos.nl';
// if ftp server across proxy set $ftp_port to 2121
$ftp_port = "21";
$ftp_user_name = '***';
$ftp_user_pass = '***';
// connect to FTP-server (or firewall)
$ftp_conn = @ftp_connect($ftp_host,$ftp_port);
// meld je aan met een gebruikersnaam en wachtwoord
$login_result = @ftp_login($ftp_conn, $ftp_user_name, $ftp_user_pass);
if ((!$ftp_conn) || (!$login_result)) {
echo "FTP connectie is mislukt! <br>\n";
#echo "Probeerde naar $ftp_host te verbinden met de gebruiker $ftp_user_name <br>\n";
exit;
}
// turn on passive mode transfers
ftp_pasv ($ftp_conn, true);
?>
maar ik krijg dus aldoor de melding
"FTP connectie is mislukt!"
wie kan mij verder helpen?
alvast bedankt
@ tjes weghalen en error reporting op E_ALL zetten.
Code (php)
1
2
3
4
5
2
3
4
5
<?php
...
$login_result = ftp_login($ftp_conn, $ftp_user_name, $ftp_user_pass);
...
?>
...
$login_result = ftp_login($ftp_conn, $ftp_user_name, $ftp_user_pass);
...
?>
Gewijzigd op 07/01/2006 14:49:00 door John de Boer
Wat voor fout? Parse error? Mijn houten bol ligt te rotten in de tuin, dus ik kan de fout niet vanaf hier zien? ;-)
Warning: ftp_login: Login incorrect. in include/ftpconnect.php on line 17
met een FTP-programma kom ik er met die naam en pass wel in...
Gewijzigd op 07/01/2006 14:55:00 door John de Boer
ftp_login($ftp_conn, trim($ftp_user_name), trim($ftp_user_pass)); proberen
EDIT:
als ik $ftp_port = "2121"; zet dan krijg ik de melding
"Warning: Unable to find ftpbuf 0 in include/ftpconnect.php on line 17"
Gewijzigd op 07/01/2006 15:18:00 door John de Boer
$ftp_conn = @ftp_connect($ftp_host,$ftp_port);
// meld je aan met een gebruikersnaam en wachtwoord
$login_result = @ftp_login($ftp_conn, $ftp_user_name, $ftp_user_pass);
Probeer het eens zonder dat je de ftp_port meegeeft
$ftp_conn = ftp_connect($ftp_host);
krijg ik weer de melding
"Warning: ftp_login: Login incorrect. in include/ftpconnect.php on line 17"
P.S.
Ik heb een Eminent EM4202 router/switch
www.eminent-online.com
en ik lees op http://nl3.php.net/manual/nl/function.ftp-connect.php
Connecting through a firewall also depends on the type. This is an example for the Secure Gateway FTP. First you have to connect to the firewall, then open a session to the destination ftp server. This looks like this:
// Connect to firewall
$conn_id = ftp_connect("firewall.yournet.com");
maar hoe connect ik dan naar de firewall?
Gewijzigd op 07/01/2006 15:40:00 door John de Boer
Connecten naar FTP moet gewoon kunnen. Op het moment dat er een connectie is gaat de ftp-server naar een andere port en dan werkt het niet meer achter een firewal. Bij passive FTP blijft de ftp-server op dezelfde port. (Heel simpel uitgelegd)