ftp_login
(PHP 4, PHP 5)
ftp_login — Logs in to an FTP connection
Description
bool ftp_login
( resource
$ftp_stream
, string $username
, string $password
)Logs in to the given FTP stream.
Parameters
-
ftp_stream
-
The link identifier of the FTP connection.
-
username
-
The username (USER).
-
password
-
The password (PASS).
Return Values
Returns TRUE
on success or FALSE
on failure.
If login fails, PHP will also throw a warning.
Examples
Example #1 ftp_login() example
<?php
$ftp_server = "ftp.example.com";
$ftp_user = "foo";
$ftp_pass = "bar";
// set up a connection or die
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
// try to login
if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) {
echo "Connected as $ftp_user@$ftp_server\n";
} else {
echo "Couldn't connect as $ftp_user\n";
}
// close the connection
ftp_close($conn_id);
?>
- ftp_alloc
- ftp_cdup
- ftp_chdir
- ftp_chmod
- ftp_close
- ftp_connect
- ftp_delete
- ftp_exec
- ftp_fget
- ftp_fput
- ftp_get_option
- ftp_get
- ftp_login
- ftp_mdtm
- ftp_mkdir
- ftp_nb_continue
- ftp_nb_fget
- ftp_nb_fput
- ftp_nb_get
- ftp_nb_put
- ftp_nlist
- ftp_pasv
- ftp_put
- ftp_pwd
- ftp_quit
- ftp_raw
- ftp_rawlist
- ftp_rename
- ftp_rmdir
- ftp_set_option
- ftp_site
- ftp_size
- ftp_ssl_connect
- ftp_systype
Коментарии
Note that to make an anonymous ftp connection, you need to specify "anonymous" as the username and "" (empty string) as the password.
Example:
<?php
ftp_login('ftp.example.com', 'anonymous', '');
?>
To suppress the PHP warning, just prepend the function with the error suppression character @. I'm usually against error suppression, but apparently some genius thought it was a good idea to really drive the point home that you have a bad login. Returning false wasn't enough?
if( ! @ftp_login( $connection, 'USERNAME', 'PASSWORD' ) ){
die( 'Bad login, but no PHP warning thrown.');
}
from: http://www.ietf.org/rfc/rfc1635.txt
"What is Anonymous FTP?
"...
"Traditionally, this special anonymous user account accepts any string as a password, although it is common to use either the password "guest" or one's electronic mail (e-mail) address. Some archive sites now explicitly ask for the user's e-mail address and will not allow login with the "guest" password. Providing an e-mail address is a courtesy that allows archive site operators to get some idea of who is using their services. "
So your code would be:
<?php
ftp_login('ftp.example.com', 'anonymous', 'user@example.com');
?>
If a blank password works, you might have a default password set in your php.ini