Eléphant du PHP |
355 Messages
20 nov. 2005, 00:52
Petit récapitulatif :
Sa avance bien mais la encore je bloque j’ai bien regarder le script mais je pige pas grand-chose, donc si j’uploade seulement le logo j’ai le message :
Code : Tout sélectionner
Veuillez sélectionner un fichier de type png, gif ou jpg !
Veuillez sélectionner un fichier de type png, gif ou jpg !
Si j’uploade seulement la photo tout va bien.
Maintenant si j’uploade le logo et la photo seul le logo et copier.
Voici donc mon script complet a sont état actuel:
<?php
if(isset($_FILES['photo'])){
// params
unset($erreur);
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
$taille_max = 100000;
$dest_dossier = 'Corps_In/';
// vérifications
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
{
$erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';
}
elseif( file_exists($_FILES['photo']['tmp_name'])
and filesize($_FILES['photo']['tmp_name']) > $taille_max)
{
$erreur = 'Votre fichier doit faire moins de 500Ko !';
}
//
// 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 !';
}
}
//
// Vérification de la taille du logo
//
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 !';
}
}
//
// Fin de la vérification
//
// copie du fichier
if(!isset($erreur))
{
$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);
}
}
?>
<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>