Je veux télécharger des fichiers mp3 sur le serveur en utilisant ftp dans le langage PHP.J'ai fait un script de code brut pour cela.In image du serveur, pdf, fichiers doc sont téléchargés, mais je ne peux pas télécharger de fichiers mp3.Comment puis-je télécharger des fichiers mp3 sur le serveur en php par ftp?
Plz, quelqu'un m'aiderait? Je suis dans le pétrin !!!
Il montre le fichier n'existe pas quand je vais télécharger des fichiers mp3
Voici mon code, -
<?php
// FTP Configuration
$FTP_User = $_POST["username"];
$FTP_Pass = $_POST["password"];
$FTP_Host = "###";
$FTP_Root = "$dir";
$action=$_GET["action"];
$username=$_POST["username"];
$password=$_POST["password"];
$dir=$_POST["dir"];
$Filename=$_POST["Filename"];
$MAX_FILE_SIZE= $_POST["MAX_FILE_SIZE"];
// If the form was submitted
if (isset($action) && $action == "submit") {
if ($_FILES['File_1']['size'] > $MAX_FILE_SIZE)
{
echo "Error: $Filename exceeds upload limit";
exit;
}
echo $_FILES['File_1']['size'];
echo $MAX_FILE_SIZE;
if ($dir == "-1")
{
echo "Error: Please choose a File Type to upload";
exit;
}
// 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);
//Turns 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'];
//echo 'Filename is :'. $Filename;
print_r($myFile);
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="file_upload.php?action=submit" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="10000000">
<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 Type:</td>
<td><select name="dir">
<option value="-1">File Type</option>
<!--<option value="/httpdocs/charbel/upload/">Image</option>
<option value="/httpdocs/charbel/upload/">PDF</option>
<option value="/httpdocs/charbel/upload/">MP3</option>
<option value="/httpdocs/charbel/upload/">Video</option>
-->
<option value="/public_html/">Image</option>
<option value="/public_html/">PDF</option>
<option value="/public_html/">MP3</option>
<option value="/public_html/">Video</option>
</select>
</td>
</tr>
<tr>
<td>File:</td>
<td><input type="file" name="File_1" size="70"></td>
</tr>
<tr>
<td colspan="2" align="right"><input type="submit" value="Submit"></td>
</tr>
</form>
</table>
</body>
</html>
'$ MAX_FILE_SIZE = $ _POST [" MAX_FILE_SIZE "];' est vraiment non sécurisé. – jantimon