Bonjour à vous, chez membres de Alsacréations
C'est en ce premier post que je vais poster mon premier problème sur Alsacréations
J'ai créer un petit système d'upload de fichiers, voici mon script :
Si je télécharge un petit fichier normal, comme un .ini de 50Ko, ça marche et ça m'affiche "Upload effectué avec succès !".
Mais, si je télécharge un fichier .amx, qui fais dans les 5000Ko, ça ne marche pas et me retourne "Echec de l'upload"...
Voici les extensions possibles :
Merci de vos futurs réponses
EDIT : J'ai essayé avec un .amx de 1Ko, et ça marche...
J'ai l'impression que move_uploaded_file ne fonctionne pas avec les gros fichiers. Comment ça se fait ?
Modifié par ApocKalipsS (14 Apr 2010 - 10:59)

C'est en ce premier post que je vais poster mon premier problème sur Alsacréations

J'ai créer un petit système d'upload de fichiers, voici mon script :
<form method="POST" action="ftp.php" enctype="multipart/form-data">
Fichier : <input type="file" name="fichier"><br>
<input type="hidden" name="location1" value="<?php echo $pwd1 ?>">
<input type="submit" name="envoyer" value="Envoyer le fichier">
</form>
if(isset($_FILES['fichier']))
{
$location1 = $_POST['location1'];
$dossier = "/var/www/vhosts/panel.deathrowrpg.fr$location1/";
$fichier = basename($_FILES['fichier']['name']);
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = "Cette extension n'est pas autorisée.";
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros pour être uploadé.';
}
if(!isset($erreur))
{
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['fichier']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
}
Si je télécharge un petit fichier normal, comme un .ini de 50Ko, ça marche et ça m'affiche "Upload effectué avec succès !".
Mais, si je télécharge un fichier .amx, qui fais dans les 5000Ko, ça ne marche pas et me retourne "Echec de l'upload"...
Voici les extensions possibles :
$extensions = array('.amx', '.pwn', '.cfg', '.txt','.ini','.cfg','.log','.ban','.inc');
Merci de vos futurs réponses

EDIT : J'ai essayé avec un .amx de 1Ko, et ça marche...
J'ai l'impression que move_uploaded_file ne fonctionne pas avec les gros fichiers. Comment ça se fait ?
Modifié par ApocKalipsS (14 Apr 2010 - 10:59)