Changer la taille maximum de la photo formulaire
Résolu
flo39400
Messages postés
596
Date d'inscription
Statut
Membre
Dernière intervention
-
flo39400 Messages postés 596 Date d'inscription Statut Membre Dernière intervention -
flo39400 Messages postés 596 Date d'inscription Statut Membre Dernière intervention -
Bonsoir,
J'aimerai modifier la taille maximum d'une photo depuis le formulaire le problème sais que je sais même pas a combien elle a été configurer, vu que j'ai trouver ce formulaire.
J'aimerai modifier la taille maximum d'une photo depuis le formulaire le problème sais que je sais même pas a combien elle a été configurer, vu que j'ai trouver ce formulaire.
<?php // © Jérome Réaux : http://j-reaux.developpez.com - http://www.jerome-reaux-creations.fr // --------------------------------------------------- // ADMIN NEWS : TRAITEMENT des photos // --------------------------------------------------- // RECUPERATION DES DONNEES DU FORMULAIRE // photo $newsPhotoAvant = (isset($_POST['newsPhotoAvant']))? formatage_from_post($_POST['newsPhotoAvant']) : ''; $newsPhotoDelete = (isset($_POST['newsPhotoDelete']))? formatage_from_post($_POST['newsPhotoDelete']) : ''; $newsPhotoLargeur = (isset($_POST['newsPhotoLargeur']))? formatage_from_post($_POST['newsPhotoLargeur']) : ''; // ----------------- // Gestion des photos supprimees if ($newsPhotoAvant!='' && $newsPhotoDelete=='ON') { // Suppression de l'ancienne Photo if(file_exists('../../'.NEWS_REP_PHOTOS.$newsPhotoAvant)) { unlink('../../'.NEWS_REP_PHOTOS.$newsPhotoAvant); } // ----------------- // Suppression dans la base de donnees par UPDATE $update_query = "UPDATE ".T_NEWS_TABLE." ". " SET news_photo = '' ". " WHERE news_id = :newsId;"; try { $pdo_update = $pdo->prepare($update_query); $pdo_update->bindValue(':newsId', $newsId, PDO::PARAM_INT); $pdo_update->execute(); } catch (PDOException $e) { echo 'Erreur SQL : '. $e->getMessage().'<br/>'; die(); } // ----------------- } // ---------------------------------- // VERIFICATION / TRAITEMENT de la photo si uploadee // ---------------------------------- $msgErreurPhoto = ''; // message d erreur $traiterPhotoOK = true; // (par defaut) if(isset($_FILES['newsPhoto']) && $_FILES['newsPhoto']['size']>0) { // ------------------------------------- // extension du fichier uploadé (en minuscule) $file_Extension = strtolower(pathinfo($_FILES['newsPhoto']['name'],PATHINFO_EXTENSION)); // Type MIME réel du fichier (important : évite les fichiers NON valides, dont l'extension a été renommée) // $finfo = new finfo(FILEINFO_MIME_TYPE, NULL); // Retourne le type mime // $file_MimeType = $finfo->file($_FILES['newsPhoto']['tmp_name']); // (alternative, si la CLASS finfo n'est pas supportée) $finfo = finfo_open(FILEINFO_MIME_TYPE); // Retourne le type mime à la extension mimetype $file_MimeType = finfo_file($finfo, $_FILES['newsPhoto']['tmp_name']); finfo_close($finfo); // ------------------------------------- // GESTION DES ERREURS // ------------------------------------- // on vérifie les RESTRICTIONS sur les fichiers if (UPLOAD_ERR_OK<>0 && UPLOAD_ERR_FORM_SIZE==2) { $msgErreurPhoto .= 'Taille de fichier trop important ('.NEWS_SIZEMAX_PHOTO.' octets)<br />'; $traiterPhotoOK = false; } // ----------------- // on vérifie la TAILLE MAXI elseif ($_FILES['newsPhoto']['size'] > NEWS_SIZEMAX_PHOTO) { $msgErreurPhoto .= 'Taille de fichier supérieure à la taille maxi autorisée ('.NEWS_SIZEMAX_PHOTO.' octets)<br />'; $traiterPhotoOK = false; } // ----------------- // on vérifie l'EXTENSION elseif(!in_array($file_Extension, explode(',', constant('NEWS_EXTENSION_PHOTO')))) { $msgErreurPhoto .= 'L\'extension ne correspond pas (Extensions acceptées : <b>'.constant('NEWS_EXTENSION_PHOTO').'</b>)<br />'; if(in_array($file_MimeType, explode(',', constant('NEWS_MIMETYPE_PHOTO')))) { $msgErreurPhoto .= '<b>Attention</b> : Ce fichier est peut-être corrompu !<br />'; $msgErreurPhoto .= 'L\'extension ne correspond pas au type MIME !<br />'; } $traiterPhotoOK = false; } // ----------------- // on vérifie le TYPE MIME elseif(!in_array($file_MimeType, explode(',', constant('NEWS_MIMETYPE_PHOTO')))) { $msgErreurPhoto .= 'Le type MIME ne correspond pas (Extensions acceptées : <b>'.constant('NEWS_EXTENSION_PHOTO').'</b>)<br />'; if(in_array($file_Extension, explode(',', constant('NEWS_EXTENSION_PHOTO')))) { $msgErreurPhoto .= '<b>Attention</b> : Ce fichier est peut-être corrompu !<br />'; $msgErreurPhoto .= 'L\'extension ne correspond pas au type MIME !<br />'; } $traiterPhotoOK = false; } // ----------------- if ($traiterPhotoOK===false) { $msgErreurPhoto = '<b>Erreur (Photo)</b> :<br />'.$msgErreurPhoto.'Impossible d\'enregistrer le fichier.'; } // ------------------------------------- // si pas d'erreur : TRAITEMENT // ------------------------------------- if ($traiterPhotoOK===true) { // -------------------- // enregistement de la PHOTO sous forme id_nom-image(.jpg, ...) // NB : id etant unique (auto-increment), cela rend le nom de la photo unique $file_Upload = $newsId.'_'.$_FILES['newsPhoto']['name']; $file_Upload = formatage_nom_fichier($file_Upload); // remplacement des caracteres speciaux + tout en minuscules $file_Upload = str_replace('.jpeg','.jpg',$file_Upload); // on remplace aussi .jpeg par .jpg // -------------------- // enregistrement de la photo dans le dossier $temp = $_FILES['newsPhoto']['tmp_name']; move_uploaded_file($temp, '../../'.NEWS_REP_PHOTOS.$file_Upload); // -------------------- // REDIMENSIONNEMENT et SAUVEGARDE de la PHOTO (si necessaire) // ecraser (remplacer) la photo (meme rep, meme nom) $redimPHOTOOK = fctredimimage($newsPhotoLargeur,0,'','','../../'.NEWS_REP_PHOTOS,$file_Upload); // -------------------- // SUPPRESSION des ANCIENNES PHOTOS (si necessaire) dans le dossier if ($newsPhotoAvant!='' && $newsPhotoAvant!=$file_Upload) { if(file_exists('../../'.NEWS_REP_PHOTOS.$newsPhotoAvant)) { unlink('../../'.NEWS_REP_PHOTOS.$newsPhotoAvant); } } // ----------------- // enregistrement du NOM dans la base de donnees par UPDATE $update_query = "UPDATE ".T_NEWS_TABLE." SET ". " news_photo = :file_Upload, ". " news_photo_largeur = :newsPhotoLargeur ". " WHERE news_id = :newsId;"; try { $pdo_update = $pdo->prepare($update_query); $pdo_update->bindValue(':file_Upload', $file_Upload, PDO::PARAM_STR); $pdo_update->bindValue(':newsPhotoLargeur', $newsPhotoLargeur, PDO::PARAM_STR); $pdo_update->bindValue(':newsId', $newsId, PDO::PARAM_INT); $pdo_update->execute(); } catch (PDOException $e) { echo 'Erreur SQL : '. $e->getMessage().'<br/>'; die(); } // ----------------- } } // fin TRAITEMENT PHOTO // ---------------------------------------------------
A voir également:
- Changer la taille maximum de la photo formulaire
- Changer dns - Guide
- Whatsapp formulaire opposition - Guide
- Comment réduire la taille d'un fichier - Guide
- Google photo - Télécharger - Albums photo
- Comment reduire la taille d'une photo - Guide
1 réponse
Bonjour,
Quand tu parles de "taille" .. tu veux parler des dimensions de la photo ou de la taille mémoire du fichier ?
Tu l'as trouvé où ?
Tu veux configurer quoi exactement ?
Sachant que ce code utilise, visiblement, de nombreuses fonctions et constantes ... qui se trouvent très certainement définies dans d'autres fichiers... (que tu ne nous montres pas...)
Quand tu parles de "taille" .. tu veux parler des dimensions de la photo ou de la taille mémoire du fichier ?
le problème sais que je sais même pas a combien elle a été configurer, vu que j'ai trouver ce formulaire.
Tu l'as trouvé où ?
Tu veux configurer quoi exactement ?
Sachant que ce code utilise, visiblement, de nombreuses fonctions et constantes ... qui se trouvent très certainement définies dans d'autres fichiers... (que tu ne nous montres pas...)
J'ai trouver cela sur https://php.developpez.com/cours/ ( je sais pas si j'ai le droit de publié des liens externe ).
Donc je parle de taille, je parle de la mémoire que fait la photo.
Et aussi comment vous voyer que cette page fait appel a d'autre fichiers ?
Merci d'avance.
Hors elles en sont pas définies dans cette page... j'en conclus donc qu'il y a au moins un autre fichier dans lequel elles sont déclarées...
En regardant le lien que tu nous as donné.. j'ai trouvé le fichier : modules/mod_news/news_config.php
Dedans, tu verras les lignes :
Car j'ai ajouter avant l'accès a cette page administration que l’utilisateur connecter sois administrateur sinon il ne pas accéder a cette page.