<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.11 $ -->
<reference id="ref.ftp">
 <title>FTP Functions</title>
 <titleabbrev>FTP</titleabbrev>

 <partintro>
  <section id="ftp.intro">
   &reftitle.intro;
   <para>
    The functions in this extension implement client access to file
    servers speaking the File Transfer Protocol (FTP) as defined in 
    <ulink url="&url.rfc;959">&url.rfc;959</ulink>.  This extension is
    meant for detailed access to an FTP server providing a wide range
    of control to the executing script. If you only wish to
    read from or write to a file on an FTP server, consider using
    the <link linkend="wrappers.ftp"><literal>ftp://</literal> wrapper</link>
    with the <link linkend="ref.filesystem">filesystem functions</link>
    which provide a simpler and more intuitive interface.
   </para>
  </section>
   
  <section id="ftp.requirements">
   &reftitle.required;
   &no.requirement;
  </section>

  &reference.ftp.configure;

  <section id="ftp.configuration">
   &reftitle.runtime;
   &no.config;
  </section>

  <section id="ftp.resources">
   &reftitle.resources;
   <para>
    This extension uses one resource type, which is the link identifier
    of the FTP connection, returned by <function>ftp_connect</function>
    or <function>ftp_ssl_connect</function>.
   </para>
  </section>

  &reference.ftp.constants;
   
  <section id="ftp.examples">
   &reftitle.examples;
   <para>
    <example>
     <title>FTP example</title>
     <programlisting role="php">
<![CDATA[
<?php
// set up basic connection
$conn_id = ftp_connect($ftp_server); 

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); 

// check connection
if ((!$conn_id) || (!$login_result)) { 
        echo "FTP connection has failed!";
        echo "Attempted to connect to $ftp_server for user $ftp_user_name"; 
        exit; 
    } else {
        echo "Connected to $ftp_server, for user $ftp_user_name";
    }

// upload the file
$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY); 

// check upload status
if (!$upload) { 
        echo "FTP upload has failed!";
    } else {
        echo "Uploaded $source_file to $ftp_server as $destination_file";
    }

// close the FTP stream 
ftp_close($conn_id); 
?>
]]>
     </programlisting>
    </example>
   </para>
  </section>
 </partintro>

 &reference.ftp.functions;

</reference>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=xml
vi: ts=1 sw=1
-->