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

Langage PHP Discussion :

[Upload] Affichage de photo


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Août 2007
    Messages : 197
    Par défaut [Upload] Affichage de photo
    Bonjour a tous et toutes

    Je vous soumets un ch'ti souci concernant l'affichage de photos uploadé...
    pour commencer je vous mets le code en question ca sera surement plus parlant pour vous.
    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
    86
    87
    88
    89
    <?php
     
    // Récupération du dossier dans lequel le fichier sera uploadé	
    $DESTINATION_FOLDER =$_SERVER['DOCUMENT_ROOT']."/livredor/admin/mini/" ;
     
    // Taille maximale de fichier, valeur en bytes					
    $MAX_SIZE = 1000000 ;													
    // Définition des extensions de fichier autorisées (avec le ".")
    $AUTH_EXT = array( ".jpg", ".jpeg",".gif",".JPG",".JPEG",".GIF") ;											
     
     
    // Fonction permettant de vérifier si l'extension du fichier est// autorisée.
    function isExtAuthorized($ext){
    	global $AUTH_EXT;
    	if(in_array($ext, $AUTH_EXT)){
    		return true;
    	}else{
    		return false;
    	}
    }
     
    // On vérifie que le champs contenant le chemin du fichier soit
    // bien rempli.
     
    if(!empty($_FILES['avatar']["name"])){
     
    	// Nom du fichier choisi:
    	$nomFichier = $_FILES['avatar']["name"] ;
    	// Nom temporaire sur le serveur:
    	$nomTemporaire = $_FILES['avatar']["tmp_name"] ;
    	// Type du fichier choisi:
    	$typeFichier = $_FILES['avatar']["type"] ;
    	// Poids en octets du fichier choisit:
    	$poidsFichier = $_FILES['avatar']["size"] ;
    	// Code de l'erreur si jamais il y en a une:
    	$codeErreur = $_FILES['avatar']["error"] ;
    	// Extension du fichier
    	$extension = strrchr($nomFichier, ".") ;
     
    	// Si le poids du fichier est de 0 bytes, le fichier est
    	// invalide (ou le chemin incorrect) => message d'erreur
    	// sinon, le script continue.
    	if($poidsFichier <> 0){
    		// Si la taille du fichier est supérieure à la taille
    		// maximum spécifiée => message d'erreur
    		if($poidsFichier < $MAX_SIZE){
    			// On teste ensuite si le fichier a une extension autorisée
    			if(isExtAuthorized($extension)){
    				// Ensuite, on copie le fichier uploadé ou bon nous semble.
    				$uploadOk = move_uploaded_file($nomTemporaire, $DESTINATION_FOLDER . $nomFichier) ;
    			}else{
    				echo ("Une photo avec cette extension $extension ne peut être chargée<br>") ;
    			}
    		}else{
    			$tailleKo = $MAX_SIZE / 10000;
    			echo("Vous ne pouvez charger une photo avec une taille supèrieure à Ko Ko.<br>");
    		}		
    	}else{
    		echo("Le fichier selectionné n'est pas valide <br>");
    	}
    }else{
    	echo("Vous ne pouvez choisir ce fichier<br>");
    }
     
     //ouvre le repertoire
       $pointeur = opendir($DESTINATION_FOLDER) ;
       $fichier = $nomFichier ;  
       $i = 0 ; 
     
       //stocke les noms de fichiers images dans un tableau
      while ($fichier = readdir($pointeur)) 
    { 
      		$tab_image = $fichier ;
     
     
     
    	} 
     
       //on ferme le répertoire 
       closedir($pointeur) ; 
     
    	?>
     
    	<div  align="center" class="truc2"><?php echo '<img src="'.$DESTINATION_FOLDER.'/'.$tab_image.'"  width=65  />' ; ?></div>
    <form action="formulaire.php" method="post">
    <div align="center" class="truc4">
    <input type="submit"  value="retour" class="boutique_bouton" />
    <input type="hidden" value="<?php echo $mod; ?>" name="mod" id="mod"> 
    </div> </form>
    A savoir donc que la photo est bien dans le dossier prévu, mais qu'a l'affichage, je n'ai que la fameuse croix rouge, ce script fonctionnait tres bien en local... mais ca marche toujours mieux en local...

    Merci a vous de passer jeter un coup d'oeil
    Cordialement

  2. #2
    Membre émérite
    Homme Profil pro
    Touche à tout informatique autodidacte
    Inscrit en
    Janvier 2007
    Messages
    812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Touche à tout informatique autodidacte

    Informations forums :
    Inscription : Janvier 2007
    Messages : 812
    Par défaut
    Bonjour,
    Dans ton code,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php echo '<img src="'.$DESTINATION_FOLDER.'/'.$tab_image.'"  width=65  />' ; ?>
    avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $DESTINATION_FOLDER =$_SERVER['DOCUMENT_ROOT']."/livredor/admin/mini/" ;
    Il me semble que tu devrais plutôt mettre ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php
    $VIEW_FOLDER = 'http://'.$_SERVER[HTTP_HOST].'//livredor/admin/mini/';?>
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php echo '<img src="'.$VIEW_FOLDER.'/'.$tab_image.'"  width=65  />' ; ?>
    Par contre, pour les autres occurences de $DESTINATION_FOLDER, je pense que c'est bon.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Août 2007
    Messages : 197
    Par défaut affichage photo
    Merci Kabkab

    merci pour ta réactivité et pour ta reponse...

    j'ai bien changé les lignes que tu me conseilles de changer, mais...
    j'ai toujours la ptite croix rouge et avec les erreurs suivantes...

    Warning: readdir(): supplied argument is not a valid Directory resource in /home.10.29/vmfloc/www/test/upload/upload.php on line 282

    Warning: closedir(): supplied argument is not a valid Directory resource in /home.10.29/vmfloc/www/test/upload/upload.php on line 291


    ligne 282
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      while ($fichier = readdir($pointeur))
    et ligne 291Merci encore pour ton aide
    Cordialement

  4. #4
    Membre émérite
    Homme Profil pro
    Touche à tout informatique autodidacte
    Inscrit en
    Janvier 2007
    Messages
    812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Touche à tout informatique autodidacte

    Informations forums :
    Inscription : Janvier 2007
    Messages : 812
    Par défaut
    Bonjour, je viens de me rendre compte d'un erreur de frappe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <?php
    $VIEW_FOLDER = 'http://'.$_SERVER[HTTP_HOST].'/livredor/admin/mini/';?>
    Essayes de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
       echo $DESTINATION_FOLDER;
       $pointeur = opendir($DESTINATION_FOLDER) ;
    ?>
    et voir si ça correspond à ton arborescence. Autrement, il faut savoir que certains hébergeurs ont "bridé" le php pour que le opendir et les fonctions du même genre ne pointent pas en dehors d'une certaine branche de l'arborescence.

Discussions similaires

  1. Affichage de photos déjà uploadées sur JBoss
    Par vOnYuRi dans le forum Wildfly/JBoss
    Réponses: 2
    Dernier message: 05/02/2011, 01h54
  2. [FLASH MX2004] Affichage de photo
    Par mooky dans le forum Flash
    Réponses: 1
    Dernier message: 20/02/2006, 14h27
  3. Affichage de photos provenant d'une base mySQL
    Par archos6 dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 18/10/2005, 18h41
  4. pb affichage des photos incorporées par balises html
    Par laville dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 01/04/2005, 12h47

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