PHP: ftp_login - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ftp_mdtm ftp_get

Last updated: Sat, 27 Jan 2007

view this page in

# ftp_login

(PHP 3 >= 3.0.13, PHP 4, PHP 5)

ftp_login -- Выполняет вход на FTP сервер

## Описание

bool ftp_login ( resource ftp_stream, string username, string password )

Выполняет вход на FTP сервер.

## Список параметров

`ftp_stream`

  Идентификатор соединения с FTP сервером

`username`

  Имя пользователя (`USER`).

`password`

  Пароль (`PASS`).

## Возвращаемые значения

Возвращает `TRUE` в случае успешного завершения или `FALSE` в случае возникновения ошибки. Если войти на сервер не удалось, PHP вызовет предупреждение.

## Примеры

Пример 1. Пример использования ftp_login()

`<?php
$ftp_server = "ftp.example.com";
$ftp_user = "foo";
$ftp_pass = "bar";
// установить соединение или выйти
$conn_id = ftp_connect($ftp_server) or die("Не удалось установить соединение с $ftp_server");
// попытка входа
if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) {
echo "Произведен вход на $ftp_server под именем $ftp_user\n";
} else {
echo "Не удалось войти под именем $ftp_user\n";
}
// close the connection
ftp_close($conn_id);
?>`

add a note User Contributed Notes
ftp_login
Guibod
26-Oct-2004 01:37
`ftp_login does not support ftp trough proxy authentication. So think about using the new PHP5 function ftp_raw() that's allow you to send directly FTP commands. ftp_raw() allow you to send commands prior to be connected (unlike ftp_exec()).
I've writen this piece of code that's allow you to connect through a "remoteid@remotehost proxyid" proxy.
<?php
function ftp_parse_response($response, &$errstr) {
if(!is_array($response)) {
$errstr = 'Parameter \$response must be an array';
return false;
}
foreach($response as $r) {
$code = substr(trim($r),0,3);
if(!is_numeric($code)) {
$errstr = "$code is not a valid FTP code",$code);
}
if($code > 400) {
$errstr = $r;
return false;
}
}
return true;
}
$user = "user";
$pass = "password";
$host = "ftp.example.com";
$proxyuser = "proxyuser";
$proxypass = "proxypass";
$proxyhost = "ftp.proxy.com";
$conn_id = ftp_connect($proxyhost);
if(!$conn_id) {
die("cannot connect to proxy");
}
$commands = array(
"USER ".$user."@".$host." ".$proxyuser,
"PASS ".$pass,
"PASS ".$proxypass
);
foreach($commands as $c) {
$ret = ftp_raw($conn_id,$c);
//you can write your own ftp_parse_response func that
//use an array of string as input
if(!ftp_parse_response($ret,$errstr)) {
ftp_close($conn_id);
die("cannot login to $host");
}
}
echo "ok, now connected";
?>`
add a note
ftp_mdtm ftp_get

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 09:32:46 2007 PST