I wrote a php script that allows me to upload files to my server via ftp. The script works fine and uploads the file, but the size of the file on the server always ends up being 0KB, any help would be appreciated.
PHP Code:
<?php
///phpinfo();
// FTP Configuration
$FTP_User = "$###";
$FTP_Pass = "$###";
$FTP_Host = "$###";
$FTP_Root = "httpdocs/charbel/upload/";
// If the form was submitted
if (isset($action) && $action == "submit") {
// Connect to the ftp address
$Connect = ftp_connect($FTP_Host);
if (!$Connect)
{
echo "Error: Could not connect to ftp server<br>";
exit;
}
echo "Connected to $FTP_Host<br>";
// Login
$login = ftp_login($Connect, $FTP_User, $FTP_Pass);
// Turn passive mode on
$passive = ftp_pasv ($Connect, true );
echo "Current directory is now: " . ftp_pwd($Connect) . "<br>";
if (ftp_chdir($Connect, "$FTP_Root"))
{
echo "Current directory is now: " . ftp_pwd($Connect) . "<br>";
} else echo "Cannot change directory";
$contents = ftp_nlist($Connect, ".");
// output $contents
print_r($contents);
// check upload status
if (!passive){
echo "Failed to enter passive mode.<br>";
}
else {
echo "Entered passive mode.<br>";
}
if (!$login)
{
echo "Error: Could not log on as $FTP_User<br>";
ftp_quit($Connect);
exit;
}
echo "Logged in as $FTP_User<br>";
// Set the filename to be uploaded
$Filename = $_FILES['File_1']['name'];
$myFile = $_Files['File_1'];
if (file_exists($Filename))
{
echo "The file $Filename exists<BR>";
}
else
{
echo "The file $Filename does not exist<BR>";
}
$destination_file = $FTP_ROOT.$_FILES['File_1']['name'];
// Set the local resource (the file that will be uploaded)
$file = $myFile['tmp_name'];
// If the file was successfully uploaded
$upload = ftp_put($Connect, $destination_file, $file, FTP_BINARY);
if (!$upload)
{
// Show success message
echo "There was a problem uploading $destination_file";
}
else
{
// Else show error message
echo "Successfully uploaded $Filename";
}
ftp_close($Connect);
}
?>
Form Code:
<html>
<head>
<title> PHP FTP Upload Test </title>
</head>
<body>
<table>
<form method="post" action="?action=submit" enctype="multipart/form-data">
<tr>
<td>Username:</td>
<td><input type="text" name="username" size="30"></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="password" size="30"></td>
</tr>
<tr>
<td>File:</td>
<td><input type="file" name="File_1" size="30"></td>
</tr>
<tr>
<td colspan="2" align="right"><input type="submit" value="Submit"></td>
</tr>
</form>
</table>
</body>
</html>