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

search for in the

ftp_size> <ftp_set_option
Last updated: Thu, 17 Sep 2009

view this page in

ftp_site

(PHP 4, PHP 5)

ftp_siteEnvía un comando SITE al servidor

Descripción

bool ftp_site ( resource $secuencia_ftp , string $comando )

ftp_site() envía el comando SITE dado al servidor FTP.

Los comandos SITE no se encuentran estandarizados, y varían de un servidor a otro. Son útiles para la gestión de cosas como permisos de archivos y membresías de grupos.

Lista de parámetros

secuencia_ftp

El identificador de enlace de la conexión FTP.

comando

El comando SITE. Note que este parámetro no es escapado, así que pueden haber problemas con nombres de archivo que contengan espacios y otros caracteres.

Valores retornados

Devuelve TRUE si todo se llevó a cabo correctamente, FALSE en caso de fallo.

Ejemplos

Example #1 Envío de un comando SITE a un servidor ftp

<?php
/* Conectarse con el servidor FTP */
$con ftp_connect('ftp.example.com');
if (!
$con) die('No fue posible conectarse con ftp.example.com');

/* Iniciar sesion como "usuario" con la contrasenya "pass" */
if (!ftp_login($con'usuario''pass')) die('Error iniciando sesion en ftp.example.com');

/* Aplicar el comando "SITE CHMOD 0600 /home/usuario/archivoprivado"
 * al servidor ftp */
if (ftp_site($con'CHMOD 0600 /home/usuario/archivoprivado')) {
   echo 
"Comando ejecutado satisfactoriamente.\n";
} else {
   die(
'El comando ha fallado.');
}
?>

Ver también

  • ftp_raw() - Envía un comando arbitrario a un servidor FTP



ftp_size> <ftp_set_option
Last updated: Thu, 17 Sep 2009
 
add a note add a note User Contributed Notes
ftp_site
www.bossftp.com
06-Nov-2008 02:30
To send a SITE command and get the result, you can try this:

<?php
function ftpsite($conn, $cmd) {
    return
ftp_raw($conn, "SITE $cmd");
}
?>
Marc
05-Aug-2003 02:02
Use ftp_raw() (PHP 5+) instead of ftp_site() if you need the results of the remote command.
webmaster at beezm dot net
18-Jun-2003 06:52
I wrote some functions for an ftp server for windows called GuildFTPd.

Here they are, they are pretty much so self explanitory:
<?
function guildftpd_adduser($ftp_stream,$group,$username,$password){
    ftp_site($ftp_stream,"SITE ADDUSER $group $username $password");
}
function guildftpd_addgroup($ftp_stream,$groupname){
    ftp_site($ftp_stream,"SITE ADDGROUP $groupname");
}
function guildftpd_deluser($ftp_stream,$username){
    ftp_site($ftp_stream,"SITE DELUSER $username");
}
function guildftpd_addpath($ftp_stream,$username,$path,$vpath){
    ftp_site($ftp_stream,"SITE ADDPATH $username $path $vpath");
}
function guildftpd_delpath($ftp_stream,$username,$path,$vpath){
    ftp_site($ftp_stream,"SITE DELPATH $username $path $vpath");
}
function guildftpd_anon($ftp_stream){
    ftp_site($ftp_stream,"SITE ANON ALLOW");
}
function guildftpd_anond($ftp_stream){
    ftp_site($ftp_stream,"SITE ANON DENY");
}
function guildftpd_chpass($ftp_stream,$user,$pass){
    ftp_site($ftp_stream,"SITE CHPASS $user $pass");
}
function guildftpd_disable($ftp_stream,$user){
    ftp_site($ftp_stream,"SITE DISABLE $user");
}
function guildftpd_enable($ftp_stream,$user){
    ftp_site($ftp_stream,"SITE ENABLE $user");
}
function guildftpd_who($ftp_stream){
    $who = ftp_site($ftp_stream,"SITE WHO");
}
function guildftpd_kick($ftp_stream,$user);
    ftp_site($ftp_stream,"SITE KICK $user");
}
function guildftpd_msg($ftp_stream,$text);
    ftp_site($ftp_stream,"SITE MSG $text");
}
?>
to at mail dot isec dot pt
21-Nov-2002 01:20
Hya,
  Recently I had to work with FTP over PHP, since I didn't found any help about this topic I decided to post this here. If you need to chmod one file, I tested this on the ftp server using a ftp client and after I knew that the ftp server supported chmod I used the following commands:
$upload = ftp_put($conn_id, "/home/to/public_html/index.php", $source_file, FTP_ASCII);
$ch=@ftp_site($conn_id,"chmod 755 /home/to/public_html/index.php");

Hope this help!

daemorhedron
17-Nov-2002 01:32
I'd like to follow up with Ivan's observation there. Unless I am missing the obvious, which is entirely possible of course, this command is quite useless unless it returns the data from the SITE <foo> request.

Besides the obvious SITE HELP command, another one that would require catching the feedback would be the SITE LOCATE | SITE SEARCH commands. I completely recognize that SITE <foo> commands are indeed insanely proprietary, but the fact still remains that changing this to return the results, or at least having the option to do so (such as exec() and the like) would be vastly preferred to the current method of returning true/false values.

Thanks.
29-Jun-2001 04:36
site commands are extra-functionality provided by some ftp servers, and depend on the server :
e.g. trying "ftp> site help" (with an interactive ftp client) on a proftp server would give :
 
214-The following SITE extensions are recognized:
 RATIO -- show all ratios in effect
 The following SITE commands are recognized (* =>'s unimplemented).
 HELP    CHMOD
214 Direct comments to admin@ftp.blahblah.fr

while with wu-ftpd on can typically get :

214-The following SITE commands are recognized (* =>'s unimplemented).
   UMASK           GROUP           INDEX           GROUPS
   IDLE            GPASS           EXEC            CHECKMETHOD
   CHMOD           NEWER           ALIAS           CHECKSUM
   HELP            MINFO           CDPATH                  
214 blabla

Unfortunately, ftp_site only returns true or false. It would be nice to have a way to get the server's reply in full : ftp_site('help') return 1, which pretty much useless.

Hope that helps,

Ivan

ftp_size> <ftp_set_option
Last updated: Thu, 17 Sep 2009
 
 
show source | credits | sitemap | contact | advertising | mirror sites