IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez / Téléchargez Sources et Outils PHP Discussion :

Classe d'Upload et Redimensionnement


Sujet :

Contribuez / Téléchargez Sources et Outils PHP

  1. #61
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Bonjour,

    La classe en version 3.2 corrige une petite erreur dans le fichier d'exemple "Formulaire_inscription_simple.php".

  2. #62
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2016
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Tester l'upload
    Bonjour, ma question est simple, j'aimerais simplement savoir comment tester l'upload !

    En gros :
    SI l'upload a fonctionné ALORS insertion des données dans la base
    SINON affichage du message d'erreur

    Merci d'avance

  3. #63
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Salut,

    Tu peux récupérer le tableau de résultat des fichiers uploadés avec $tab_result = $up->Get_Tab_upload();Il y a un exemple dans le fichier "Formulaire_inscription_simple.php". Si tu fais un upload multiple fait un var_dump($tab_result); pour voir la structure du tableau et pouvoir lister les fichiers uploadés.

    Après si tu veux des informations en temps réel, ou afficher la vignette image dès la sélection du fichier si le fichier est une image, ou encore pouvoir télécharger des très gros fichiers, tu peux utiliser directement ce module d'upload ajax.

  4. #64
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    Salut ,
    petit problème qui a une idée ??
    je me sert de la class pour uploader des images de fiche produit dans un backoffice (se sont des clients qui s'en servent au final).
    le problème c'est que si ils utilisent des images ayant le même nom, cela écrase les précédentes, même avec le "Incr"
    config :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $up = new Telechargement('lmgco/tccadm/vehicule/photos/','envoyer','laphoto');
     
    $extensions = array('jpg','jpeg');
    $up->Set_Extensions_accepte ($extensions);
     
    $up->Set_Renomme_fichier('incr');
     
    $up->Set_Redim ('200','150', array('','','min-'));
    $up->Set_Redim  ('1024','768',array('','','max-'));
    $up->Set_Max_nombreFichers('10');
    je m'explique :
    - Envoi fiche produit N°1 nomimage.jpg ->upload -> min-nomimage.jpg et max-nomimage.jpg
    - Envoi fiche produit N°2 nomimage.jpg ->upload -> min-nomimage1.jpg et max-nomimage1.jpg
    - Envoi fiche produit N°3 nomimage.jpg ->upload -> min-nomimage1.jpg et max-nomimage1.jpg

    Lors de l’envoi de la fiche N° 3, les images de la fiche N°2 sont écrasé car il incrémente le nom de 1

    Quelqu’un a une idée ???

  5. #65
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Salut,

    Je n'arrive pas à reproduire ton problème. Tu te sert de la dernière version en ligne ?

    J'ai ouvert l'exemple "Redimensionnements_avec_suffixe_ou_prefixe.php" et recopié ton code. Si je charge trois fois consécutivement un fichier nommé "monimage.jpg", j'obtiens ceci dans le tableau des résultats :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
                       [0] => Array
                                    (
                                        [nom_ini] => monimage.jpg
                                        [nom] => min-monimage.jpg
                                        [dim] => 200x150
                                    )
     
                                [1] => Array
                                    (
                                        [nom_ini] => monimage.jpg
                                        [nom] => max-monimage.jpg
                                        [dim] => 1000x750
                                    )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
                       [0] => Array
                                    (
                                        [nom_ini] => monimage.jpg
                                        [nom] => min-monimage_1.jpg
                                        [dim] => 200x150
                                    )
     
                                [1] => Array
                                    (
                                        [nom_ini] => monimage.jpg
                                        [nom] => max-monimage_1.jpg
                                        [dim] => 1000x750
                                    )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
                      [0] => Array
                                    (
                                        [nom_ini] => monimage.jpg
                                        [nom] => min-monimage_2.jpg
                                        [dim] => 200x150
                                    )
     
                                [1] => Array
                                    (
                                        [nom_ini] => monimage.jpg
                                        [nom] => max-monimage_2.jpg
                                        [dim] => 1000x750
                                    )
     
                            )
    Donc c'est bien le résultat attendu... D'ailleurs je ne comprends pas que tu obtienne une incrémentation sans un underscore (comme dans mon résultat) puisque c'est le fonctionnement par défaut de la fonction de renommage.
    Fais le même test avec le même fichier d'exemple pour voir ce que ça donne.

    Ou tu peux aussi utiliser la fonction de renommage sans argument ex: $up->Set_Renomme_fichier(); cela produira un renommage avec suffixe aléatoire unique.

    Sinon pour info j'ai fais un autre module d'upload ici plus complet puisque il y a d'origine une prévisualisation des images avant upload, information d'upload en temps réel, et qui surpasse les configuration serveur concernant la taille et le nombre des fichiers. Il y a des exemples de redimensionnement mais aussi de recadrage avant upload. Bref c'est du web 2.0.

  6. #66
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    Après test je te confirme que lors de l'incrémentation il ne me met pas l'unserscore,
    tu penses que le problème vient de la ???

    Quel paramétres utilise tu pour tes test ?

  7. #67
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Comme déjà dit c'est le fichier d'exemple 'Redimensionnements_avec_suffixe_ou_prefixe.php' dans lequel j'ai mis tes paramètres, soit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    <?php
    //Si on travaille en utf-8 (recommandé)
    header('Content-type: text/html; charset=UTF-8');
     
    // Appel de la classe
    require('../Classe_Upload.php');
     
    require('../adresses_dossiers.php');
     
    $up = new Telechargement($dossier_photo,'form1','photo');
     
    /* paramétrage extensions autorisées */
    $extensions = array('jpg','jpeg');
    $up->Set_Extensions_accepte ($extensions);
     
     
    // Renommage incrémentiel en cas de doublons (le contrôle se fera sur nomdufichier_min.jpg)
    $up->Set_Renomme_fichier('incr');
     
     
    // redimensionnements
    $up->Set_Redim ('200','150', array('','','min-'));
    $up->Set_Redim  ('1024','768',array('','','max-'));
     
     
     
     
    $up->Upload('reload');
     
     
    $messages_upload = $up->Get_Tab_message();
    $messages_upload_html = null;
    foreach ($messages_upload as $num) foreach ($num as $value) $messages_upload_html .= '<p>- '.htmlspecialchars($value).'</p>';
     
    $tableau_resultat = $up->Get_Tab_result();
    ?>
    <!doctype html>
    <html lang="fr">
    <head>
    <meta charset="UTF-8" />
    <title>Redimentionnements avec suffixes ou préfixes</title>
    <script type="text/javascript">
    <!--
    function Verif_attente(id_attente)
    {              
    	var id_attente = document.getElementById(id_attente);
     
    	if (id_attente)
    	{
    		id_attente.innerHTML = 'Patientez...';  
     
    		id_attente.style.fontWeight="bold";
    		id_attente.style.fontSize="1.5em";         
    	}
    }
    -->
    </script>
     
    <style type="text/css">
    body {font-family:Arial, Helvetica, sans-serif; font-size:12px;}
    </style>
    </head>
    <body>
    	<form enctype = "multipart/form-data" action = "#" method = "post" onsubmit = "Verif_attente('message_tele')">		
    	<input name = "photo[]" type = "file" multiple = "multiple" size = "70" /><br />	 
     	<input  type="submit" value="Envoyer les images" id="envoyer" name = "form1"><br />
        </form>
     
         <div id = "message_tele" style="margin-top:20px;">
        <?= $messages_upload_html; ?>
        </div>
     
     
        <div style="margin-top:50px">
        <?php if(!empty($tableau_resultat))
        {
            echo 'tableau des résultats :';
            echo '<pre>';
            print_r($tableau_resultat);
            echo '</pre>';
        }
        ?>
        </div>
    </body>
    </html>

  8. #68
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Bon alors ça fonctionne puisque tu me poses maintenant une autre question par MP...?

    Donc concernant ta dernière question pour récupérer le nom des fichiers uploadés, tu vois que le tableau des résultat est à trois dimensions. Il te faut donc lister ces trois dimensions.
    Par exemple dans le code php juste après la ligne $tableau_resultat = $up->Get_Tab_result(); tu peux faire :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    //...
     
    $tableau_resultat = $up->Get_Tab_result();
     
    $fichiers_uploads = array();
    if(!empty($tableau_resultat['resultat']))
    {
    	foreach ($tableau_resultat['resultat'] as $img) 
    	if(is_array($img)) 
    	foreach ($img as $dossiers) 
    	if(is_array($dossiers))
    	foreach ($dossiers as $img_upload) 
    	if(isset($img_upload['nom'])) 
            $fichiers_uploads[] = $img_upload['nom'];
    }
    var_dump($fichiers_uploads);

    Enfin fais attention car je vois que tu mets un nombre de fichiers maximum égal à 10. Hors si le visiteur veut uploader des grosses images de 8Mo chacune par exemple, on va arriver à un total de 80Mo et ton serveur risque de te jeter car aujourd'hui sur un mutualisé les limites hautes sont plutôt vers 64Mo et vers 4 à 12Mo chez d'autres hébergeurs pour les limites basses.

    Je te le redis car il ne faut pas te tromper d'outil. Celui-ci est très rapide à mettre en place mais il ne pourra pas surpasser les limitations serveur. Il est donc plutôt réservé à des "petits" besoins.

    Pour des gros besoins et pouvoir surpasser ces limites serveur ou pour avoir des informations en temps réel il existe cet autre module d'upload.

  9. #69
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    Bon alors pour repondre,
    j'ai essayé mais cela ne fonctionne toujours pas pour moi.
    Le fichier est écrasé comme expliqué précédemment.
    j'utilise donc la fonction $up->Set_Renomme_fichier(); sans paramètre ce qui permet d'avoir un nom aléatoire.

    ensuite pour ton code pour récupérer les noms, cela a l'air de fonctionner, cela me ressort

    array(4) { [0]=> string(15) "min-00aston.jpg" [1]=> string(15) "max-00aston.jpg" [2]=> string(17) "min-00bugatti.jpg" [3]=> string(17) "max-00bugatti.jpg" }
    la j'ai un peu de mal pourtant ca y est presque je pense.
    j'ai besoin que de min-00aston.jpg et min-00bugatti.jpg
    comment je fais pour insérer ce résultat dans ma BDD ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sql="INSERT INTO catalogue (ref,categorie,photo1,photo2) VALUES ('$theref','$thecategorie', ??????? )";
    $req= $mysqli->query($sql) or die ('Erreur SQL !<br />'.$sql.'<br />'.$mysqli->error);

  10. #70
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Est-ce que tu es bien certain que tu utilises la dernière version 3.2 ?

    Peut-être tu as eu un pb lors du dézippage, ça peut arriver. Alors recommence.

    Encore une fois je viens de recharger la version 3.2 depuis le site, je l'ai mise sur mon serveur local et je l'ai testée avec le fichier "Redimensionnements_avec_suffixe_ou_prefixe.php" que j'ai modifié avec tes valeurs comme ceci (je te redonne une dernière fois le code) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    <?php
    //Si on travaille en utf-8 (recommandé)
    header('Content-type: text/html; charset=UTF-8');
     
    // Appel de la classe
    require('../Classe_Upload.php');
     
    require('../adresses_dossiers.php');
     
    $up = new Telechargement($dossier_photo,'form1','photo');
     
    /* paramétrage extensions autorisées */
    $extensions = array('jpg','jpeg');
    $up->Set_Extensions_accepte ($extensions);
     
    // redimensionnements
    $up->Set_Redim ('200','150', array('','','min-'));
     
    $up->Set_Redim ('1000','800',array('','','max-'));
     
    // Renommage incrémentiel en cas de doublons (le contrôle se fera sur nomdufichier_min.jpg)
    $up->Set_Renomme_fichier('incr');
     
     
    $up->Upload('reload');
     
     
    $messages_upload = $up->Get_Tab_message();
    $messages_upload_html = null;
    foreach ($messages_upload as $num) foreach ($num as $value) $messages_upload_html .= '<p>- '.htmlspecialchars($value).'</p>';
     
    $tableau_resultat = $up->Get_Tab_result();
     
    $fichiers_uploads = array();
    if(!empty($tableau_resultat['resultat']))
    {
    	foreach ($tableau_resultat['resultat'] as $img) 
    	if(is_array($img)) 
    	foreach ($img as $dossiers) 
    	if(is_array($dossiers))
    	foreach ($dossiers as $img_upload) 
    	if(isset($img_upload['nom'])) $fichiers_uploads[] = $img_upload['nom'];
    }
    var_dump($fichiers_uploads);
    ?>
    <!doctype html>
    <html lang="fr">
    <head>
    <meta charset="UTF-8" />
    <title>Redimentionnements avec suffixes ou préfixes</title>
    <script type="text/javascript">
    <!--
    function Verif_attente(id_attente)
    {              
    	var id_attente = document.getElementById(id_attente);
     
    	if (id_attente)
    	{
    		id_attente.innerHTML = 'Patientez...';  
     
    		id_attente.style.fontWeight="bold";
    		id_attente.style.fontSize="1.5em";         
    	}
    }
    -->
    </script>
     
    <style type="text/css">
    body {font-family:Arial, Helvetica, sans-serif; font-size:12px;}
    </style>
    </head>
    <body>
    	<form enctype = "multipart/form-data" action = "#" method = "post" onsubmit = "Verif_attente('message_tele')">		
    	<input name = "photo[]" type = "file" multiple = "multiple" size = "70" /><br />	 
     	<input  type="submit" value="Envoyer les images" id="envoyer" name = "form1"><br />
        </form>
     
         <div id = "message_tele" style="margin-top:20px;">
        <?= $messages_upload_html; ?>
        </div>
     
    </body>
    </html>
    ... Tout fonctionne correctement, y compris l'incrémentation si je charge plusieurs fois de suite une même série d'images.

    Ou alors tu utilises une version php serveur obsolète ? Laquelle utilises-tu ?

    Pour ce qui concerne ta requête, ouvre un nouveau sujet dans le forum php. Ce n'est pas ici le sujet. En plus je vois que tu veux faire tenir 4 images dans deux champs photos ? Faut pas mettre des champs photos dans ta table "catalogue" mais créer une table photo qui sera en relation (jointure) avec ta table catalogue si tu veux un minimum de souplesse.
    Donc bon il est probable que le schéma de tes tables soit à revoir. Ouvres un nouveau sujet qui pourrait être : "requête pour insertion de photo dans une table produits" dans le forum php !

  11. #71
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    re,
    je te confirme j'ai bien la dernière version en court. 3.2.
    je fait les tests en semi/local sur un Nas Synology en php 5.6.17
    et j'utilise l'url rewritting (je sais pas si cela joue) mais l'incrémentation ne fonctionne toujours pas avec l'underscrore.

    je vais essayer sur mon serveur dédié dés que j'ai un peux de temps.

    j'essayerais également ta version ajax.

    Merci d'avance de ton aide
    Cdt

  12. #72
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    La fonction qui renomme les fichier est dans le fichier "Classe_Upload.php" (à la racine du dossier). Elle se nomme "public function Rename_fich" et voici son contenu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    public function Rename_fich($adresse_fichier, $incr = false, $unix = false, $stop = 0)
    {
    	if (is_file($adresse_fichier))
    	{
    		$info = pathinfo($adresse_fichier);
    		$extension = isset($info['extension']) && $info['extension'] != '' ? '.'.$info['extension'] : null;
    		$dossier = $info['dirname'];
    		$filename = $info['filename'];
     
    		if (trim($incr) != false && $stop < 90)
    		{
    			$file = addcslashes($filename,'.');			
    			$ext = isset($extension) ? addcslashes($extension,'.') : null;									
     
    			$match = $unix ? '#^'.$file.'_[0-9]+'.$ext.'$#' : '#^'.$file.'_[0-9]+'.$ext.'$#i';
     
    			$tab_identique = array();
     
    			$files = new RegexIterator(new DirectoryIterator($dossier),$match);
    			foreach ($files as $fileinfo) $tab_identique[] = $fileinfo->getFilename();
     
    			natsort($tab_identique);
     
    			$dernier = array_pop($tab_identique);
     
    			unset($tab_identique);
     
    			$dernier = isset($dernier)? pathinfo($dernier, PATHINFO_FILENAME) : '';
     
    			$file = preg_replace_callback('#([0-9]+$)#', create_function('$matches','return $matches[1]+1;'), $dernier, '1', $count);
     
    			$filename = !empty($count)? $file : $filename.'_1';
    		}
    		else
    		{
    			$filename .= '_'.uniqid();
    		}
     
    		$filename = isset($extension) ? $filename.$extension : $filename;												
     
    		$adresse = $dossier.'/'.$filename;
     
    		if (!is_file($adresse)) return $adresse;
    		else																													
    		return $this->Rename_fich($adresse_fichier, $incr, $unix, ++$stop);                        
    	}																				 
    	else 
    	{
    		return $adresse_fichier;
    	}
    }

  13. #73
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    Re, c'est encore le boulet
    juste une petite question cette fois ci concernant les messages après l'upload
    j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $messages = $up->Get_Tab_message();
     
    foreach ($messages as $num)
            {
            foreach ($num as $value)
            echo htmlspecialchars($value).'<br />';
    }
    est il possible de récupérer que les messages d'erreurs uniquement ?
    et pas "redimensionné en ... optimisé en etc..."

    Merci
    Cdt

  14. #74
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Salut,

    Oui c'est possible.

    T'as pas dû bien chercher quand même puisque c'est indiqué dans l'exemple "Basique.php" (que tout le monde devrait normalement commencer par consulter en premier).
    Il existe de nombreuses possibilités pour paramétrer le retour du tableau des messages obtenu par Get_Tab_message(). Notamment vous pourriez compléter ce code par l'utilisation de Set_Message_court() qui permet de retourner un message de votre choix passé en paramètre à cette fonction, ou uniquement les messages d'erreurs si cette fonction est utilisée sans paramètre.
    En plus je l'ai mise en commentaire dans le code source de ce même fichier. Par ailleurs cette fonction Set_Message_court() est également utilisée dans l'exemple "Formulaire_inscription_complet_affichage_vignette.php", et on la retrouve aussi documentée dans le mode d'emploi au paragraphe H/ TRADUCTION OU PERSONNALISATION DES MESSAGES D'INFORMATIONS ET DE RESULTATS, chapitre "Autres fonctions de personnalisation des messages"...

  15. #75
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    Ok autant pour moi,
    j'avais bien lu l'info mais j'avais placé l'instruction après l'upload

    Merci
    Cdt

Discussions similaires

  1. upload et redimensionnement d'image
    Par tim1789 dans le forum Langage
    Réponses: 2
    Dernier message: 20/06/2011, 09h52
  2. upload puis redimensionnement d'image limité à 2 Mo
    Par franckcl dans le forum Langage
    Réponses: 2
    Dernier message: 22/08/2010, 12h38
  3. [GD] Upload et redimensionnement d'images volumineuses
    Par migli dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 10/06/2010, 11h12
  4. Réponses: 1
    Dernier message: 18/01/2008, 16h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo