CodeIgniter Forums
FTP Class: file_exists() does not work - Printable Version

+- CodeIgniter Forums (https://forum.codeigniter.com)
+-- Forum: Archived Discussions (https://forum.codeigniter.com/forumdisplay.php?fid=20)
+--- Forum: Archived General Discussion (https://forum.codeigniter.com/forumdisplay.php?fid=21)
+--- Thread: FTP Class: file_exists() does not work (/showthread.php?tid=56122)



FTP Class: file_exists() does not work - El Forum - 11-27-2012

[eluser]WoolyG[/eluser]
Hi all,

Take a look:

Code:
public function cron_download_transaction_data()
    {

    

        $config['hostname'] = 'ip_addr';
        $config['username'] = 'user_name';
        $config['password'] = 'pass';
        $config['debug'] = TRUE;

        $this->ftp->connect($config);

        $list = $this->ftp->list_files('/');

        print_r($list); // /file1.csv and /file2.csv show up here


        $files_array = array('/file1.csv', '/file2.csv');

        foreach($files_array as $file)
        {
            $this->ftp->chmod($file, DIR_WRITE_MODE); // WORKS
            if(file_exists($file))
            {
                if(!$this->ftp->download($file, '/var/www/assets/import/folder1/'.$file, 'ascii', 0775))
                {
                    $details = "ERROR: Could not download $file to local folder ('/var/www/assets/import/folder1/$file').";
                    

                }
            }
            else
            {
                echo "File $file does not exist.";
            }

        }


        $this->ftp->close();
    }

I am able to CHMOD the files, which proves that they exist (I see the permissions changing), but always get "File X does not exist".

Do standard PHP file commands not work with the FTP class?

All input appreciated.
Thanks,
Wooly


FTP Class: file_exists() does not work - El Forum - 11-27-2012

[eluser]monoclonal[/eluser]
maybe a safe mode issue?


FTP Class: file_exists() does not work - El Forum - 11-27-2012

[eluser]Aken[/eluser]
PHP file commands are relevant to the local server that PHP is installed on. The FTP class utilizes the ftp_* set of functions.

You can use $this->ftp->list_files() to get a list of current files and see if it is uploaded. Or you can extend the FTP library with additional functionality. If you do the latter, consider contributing those additions to CodeIgniter's Github repo to expand CI.


FTP Class: file_exists() does not work - El Forum - 11-28-2012

[eluser]InsiteFX[/eluser]
Maybe take a look at this:
Code:
'/var/www/assets/import/folder1/'.$file,

Now look at your $files_array, you are adding on an extra forward slash...

Remove the forward slash off of the filename.