Sample code for 30+ languages & platforms
PHP ActiveX

FTP Upload / Download to a BinData Object

Demonstrates how to FTP upload the contents of a BinData object, and FTP downloads to the a BinData object.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

// This example assumes Chilkat Ftp2 to have been previously unlocked.
// See Unlock Ftp2 for sample code.

$ftp = new COM("Chilkat.Ftp2");

$ftp->Hostname = 'www.my-ftp-server.com';
$ftp->Username = 'mFtpLogin';
$ftp->Password = 'myFtpPassword';

// Connect to the FTP server.
$success = $ftp->ConnectOnly();
if ($success != 1) {
    print $ftp->LastErrorText . "\n";
    exit;
}

// Authenticate with the FTP server.
$success = $ftp->LoginAfterConnectOnly();
if ($success != 1) {
    print $ftp->LastErrorText . "\n";
    exit;
}

$bdA = new COM("Chilkat.BinData");
$bdA->LoadFile('qa_data/jpg/penguins.jpg');

// Upload the contents of bdA to the FTP server.
$remoteFilename = 'penguins.jpg';
$success = $ftp->PutFileBd($bdA,$remoteFilename);
if ($success != 1) {
    print $ftp->LastErrorText . "\n";
    exit;
}

// Download...
$bdB = new COM("Chilkat.BinData");
$success = $ftp->GetFileBd($remoteFilename,$bdB);
if ($success != 1) {
    print $ftp->LastErrorText . "\n";
    exit;
}

// Verify that bdA and bdB have the exact same contents.
print 'size of bdA: ' . $bdA->NumBytes . "\n";
if ($bdA->ContentsEqual($bdB) == 1) {
    print 'Contents are equal. Success.' . "\n";
}
else {
    print 'Contents are NOT equal.  Failed.' . "\n";
}

$ftp->Disconnect();

?>