Alors déjà le copier/coller c'est bien, mais dans votre code, il aurait fallu l'adapter.
Tout d'abord, votre script ne fait pas les vérifications d'extension et de poids max seulement pour le fichier "photo" envoyer. On vous a donné la partie pour les vérifications pour les tailles max. Pour les autres exercices, ca aurait été pour vous un bon exercice pour vous d'adapter les quelques lignes de vérification pour le logo.
Il en va de même pour la partie traitement, seul la photo est envoyé dans le dossier car seule elle est traité par le code.
Voici donc le code complet avec toutes les vérifications, les traitements et l'affichage..
<?php
if(isset($_FILES['photo'])){
//
// Paramètres globaux
//
unset($erreur);
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
$taille_max_photo = 500000;
$taille_max_logo = 100000;
$dest_dossier = 'Corps_In/';
//
// Vérifications pour la photo
//
// Extension :
if( !in_array( strtolower(substr(strrchr($_FILES['photo']['name'], '.'), 1)), $extensions_ok ) )
{
$erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';
}
// Taille max :
elseif( file_exists($_FILES['photo']['tmp_name'])
and filesize($_FILES['photo']['tmp_name']) > $taille_max_photo)
{
$erreur = 'Votre fichier doit faire moins de '.$taille_max_photo.' octets !';
}
// Vérification de la taille de la photo
elseif(file_exists($_FILES['photo']['tmp_name'])){
// Définition de la longueur et de la largeur max
$longueur_photo_max = "700";
$largeur_photo_max = "500";
$size = getimagesize($_FILES['photo']['tmp_name']);
if(($size[0] > $largeur_photo_max) || ($size[1] > $longueur_photo_max)){
$erreur .= 'Les dimensions de la photo sont trop grandes !<br />';
$erreur .= 'Taille de votre photo : '.$size[1].'x'.$size[0].'<br />';
$erreur .= 'Taille maximale autorisée :'.$longueur_photo_max.'x'.$largeur_photo_max.'<br />';
}
}
//
// Vérifications pour le logo
//
// Extension :
if( !in_array( strtolower(substr(strrchr($_FILES['logo']['name'], '.'), 1)), $extensions_ok ) )
{
$erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';
}
// Taille max :
elseif( file_exists($_FILES['logo']['tmp_name'])
and filesize($_FILES['logo']['tmp_name']) > $taille_max_logo)
{
$erreur = 'Votre fichier doit faire moins de '.$taille_max_logo.' octets !';
}
elseif(file_exists($_FILES['logo']['tmp_name'])){
// Définition de la longueur et de la largeur max
$longueur_logo_max = "80";
$largeur_logo_max = "80";
$size_logo = getimagesize($_FILES['logo']['tmp_name']);
if(($size_logo[0] > $largeur_logo_max) || ($size_logo[1] > $longueur_logo_max)){
$erreur .= 'Les dimensions du logo sont trop grandes !';
$erreur .= 'Taille de votre photo : '.$size_logo[1].'x'.$size_logo[0].'<br />';
$erreur .= 'Taille maximale autorisée :'.$longueur_logo_max.'x'.$largeur_logo_max.'<br />';
}
}
//
// Fin des vérifications
//
//
// Copie des fichiers
//
if(!isset($erreur))
{
//
// Copie de la photo.
//
$dest_fichier = basename($_FILES['photo']['name']);
// formatage nom fichier
// enlever les accents
$dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
// remplacer les caracteres autres que lettres, chiffres et point par _
$dest_fichier = preg_replace('/([^.a-z0-1]+)/i', '_', $dest_fichier);
// copie du fichier
move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);
//
// Copie du logo.
//
$dest_fichier = basename($_FILES['logo']['name']);
// formatage nom fichier
// enlever les accents
$dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
// remplacer les caracteres autres que lettres, chiffres et point par _
$dest_fichier = preg_replace('/([^.a-z0-1]+)/i', '_', $dest_fichier);
// copie du fichier
move_uploaded_file($_FILES['logo']['tmp_name'], $dest_dossier . $dest_fichier);
}
}
?>
<html>
<body>
<!-- Erreur ? -->
<?php
if(isset($erreur)){
echo '<p>', $erreur ,'</p>';
}
?>
<html>
<body>
<!-- Erreur ? -->
<?php
if(isset($erreur)){
echo '<p>', $erreur ,'</p>';
}
?>
<!-- Formulaire -->
<!-- Attention, ne de ne pas oublier le enctype="multipart/form-data" -->
<form method="POST" action="Upload_2a.php" enctype="multipart/form-data">
<!-- Limiter la taille des fichiers à 500Ko -->
<input type="hidden" name="MAX_FILE_SIZE" value="500000" />
<fieldset>
<legend>Uploader vos images</legend>
<!-- champs d'envoi de fichier, de type file -->
<p><label for="logo">Uploader votre logo : </label><input type="file" name="logo" /></p>
<p><label for="photo">Uploader votre photo : </label><input type="file" name="photo" /></p>
<!-- bouton d'envoi -->
<p><input type="submit" name="envoi" value="Envoyer les fichiers" /></p>
</legend>
</fieldset>
</form>
Notes :- la taille max pour la photo et le logo sont à définir par vos soins au début du code (parametre globaux, $taille_max_photo et $taille_max_logo).
- j'ai aussi modifié le message d'erreur pour la vérification des tailles, comme ca ce sera plus parlant.