Page 1 sur 1

script concenant le format des images.

Posté : 14 oct. 2005, 22:12
par archos6
Mes images provenant d'une base mySQL s'affichent toutes sur un même format. Je voudrais qu elles s affichent soient en format portrait ou paysage.

le script ce dessous devrait permettre cela mais il fonctionne mal.

Il affiche le message d'erreur suivant.

Merci d avance de m aider à compléter ce script.

Code : Tout sélectionner

Warning: getimagesize(photo2.jpg): failed to open stream: No such file or directory in c:\program files\easyphp1-7\www\artnetvideo2\public\recherche-artiste-affichage.php on
La ligne où il y a l'erreur c est celle ci
$tableauTaille = getimagesize($row_rstableau['photo']);
<?php 
$tableauTaille = getimagesize($row_rstableau['photo']);

   $longueur = $tableauTaille[0]="150px";
   $largeur  = $tableauTaille[1]="100px";
          ?> 

   <img src="../images/<?php echo $row_rstableau['photo']; ?> 

  width="<?php 
if($largeur > $longueur){ 
echo"150px";
} 
else{
echo"100px";
} ?> " 
  
   
  height="<?php
if($largeur>$longueur){
echo"100px";
}
else{
echo"150px";
} ?>" />


Posté : 14 oct. 2005, 22:15
par Truc
Salut, d'apres le message d'erreur, le fichier n'existe pas ou certainement erreur de chemin d'accès.
a tout hasard,remplace:
$tableauTaille = getimagesize($row_rstableau['photo']);
par
$tableauTaille = getimagesize("../images/".$row_rstableau['photo']);
avec le meme chemin que pour l'affichage de l'image.

suite à intervention de Truc

Posté : 16 oct. 2005, 08:59
par archos6
Merci Truc pour ton intervention

J ai essayé..

Je pense qu il ne manque pas grand chose pour que cela fonctionne.


 $tableauTaille = getimagesize("../images/".$row_rstableau['photo']); 
Mais j ai le message d'erreur suivant

Code : Tout sélectionner

Warning: getimagesize(../images/): failed to open stream: Permission denied in c:\program files\easyphp1-7\www\artnetvideo2\public\recherche-artiste-affichage.php on line 186

Posté : 16 oct. 2005, 09:07
par Cyrano
D'Apr`es ton code, le répertoire images se trouve à la même hauteur dans l'arborescence que le répertoire public : si c'est pas ça, alors il est noral que tu aies ce message d'erreur. Fais nous un schéma sommaire de la struture des répertoires. Tiens compte quand tu crées un chemin relatif de l'endroit où est la page affichée: Si ta page est à la racine par exemple dans le répertoire artnetvideo2 et que ton répertoire images est à la même hauteur, le chemin sera alors "./images/etc..", mais si le répertoire images est à l'intérieur du répertoire "public", alors le chemin sera "./public/images/etc..." : mais c'est toujours par rapport à la page affichée et jamais par rapport au fichier inclus qui pourrait se trouver ailleurs lui-même.

pour répondre à ta question cyrano

Posté : 16 oct. 2005, 22:22
par archos6
Les images sont bien dans un répertoire nommé image qui est au même niveau que le répertoire ou se trouve le script de recherche.

images
photo1.jpg
proto2.jpg
..........

Public
fichier.php (fichier où se trouve le programme)

Je pense que le chemin indique ../images dans le répertoire public est exact. Le script fonctionne sans erreur quand je ne cherche pas à ajouter de code concernant le dimentionnement des images. C est cela qui m intrigue.


Voilà j espère avoir répondu à ta question.

Posté : 16 oct. 2005, 22:41
par pjl
A priori, c'est un problème de droit. Vérifie donc le CHMOD de ton répertoire.

Posté : 16 oct. 2005, 22:55
par Cyrano
Bon, on va partir d'un croquis :

Code : Tout sélectionner

racine |_____images | |__image1.jpg | |__image2.jpg | |__etc... | |_____public | |__fichier1.php | |__fichierx.php |__index.php
Si tu exécute une page dont l'adresse (dans ta barre de navigation) est tonsite.com/public/fichier1.php, le chemin vers les images sera "../images/image1.jpg

Si par contre l'adresse de ta page est tonsite.com/fichierx.php, alors le chemin vers les images sera "./images/image1.jpg

Le relatif est par rapport à la page courrante: "." indique le répertoire courant, ".." le répertoire parent.

Vérifie donc soigneusement ton arborescence par rapport à la page ou tu es quand la commande est exécutée.

..

Posté : 17 oct. 2005, 12:32
par archos6
je comprends très bien ce qui concerne les paths pour accèder aux fichiers des répertoires et sous répertoire.

Je suis dans le cas ou l'image ("image1.jpg"( recherché est sous le répertoire fichier images.

Le fichier ou se trouve le script est sous le répertoire public.

j ai bien sur essayé ../images et ./ et plus bien sur

Je pense qu il manque peu de chose peut être qu il manque quelque chose après images.

quand il y a ../images le message d erreur est :
dans le code
$tableauTaille = getimagesize("../images".$row_rstableau['photo']);

Code : Tout sélectionner

Warning: getimagesize(images): failed to open stream: No such file or directory in c:\program files\easyphp1-7\www\artnetvideo2\public\recherche-artiste-affichage.php on line 186
quand il y a ./images l e message d erreur est :

Code : Tout sélectionner

Warning: getimagesize(./images): failed to open stream: No such file or directory in c:\program files\easyphp1-7\www\artnetvideo2\public\recherche-artiste-affichage.php on line 186
quand images seul

Code : Tout sélectionner

Warning: getimagesize(images): failed to open stream: No such file or directory in c:\program files\easyphp1-7\www\artnetvideo2\public\recherche-artiste-affichage.php on line 186
Quand
$tableauTaille = getimagesize("../images/'photo'".$row_rstableau['photo']);

Code : Tout sélectionner

Warning: getimagesize(../images/'photo'): failed to open stream: No such file or directory in c:\program files\easyphp1-7\www\artnetvideo2\public\recherche-artiste-affichage.php on line 186

suite à mon problème sur ce script

Posté : 18 oct. 2005, 13:14
par archos6
Ce script fonctionne sans erreur mais il n affiche pas les images
Je pense qu il ne s'agit pas d'un problème de chemin. J ai placé ce script dans le même sous répertoire que les images recherchées.

Je pense qu il y a juste à améliorer ce script.

<?php 
$tableauTaille = getimagesize($row_rstableau['photo']); 

   $longueur = $tableauTaille[0]="150px"; 
   $largeur  = $tableauTaille[1]="100px"; 
          ?> 

   <img src="<?php echo $row_rstableau['photo']; ?> 

  width="<?php 
if($largeur > $longueur){ 
echo"150px"; 
} 
else{ 
echo"100px"; 
} ?> " 
   
    
  height="<?php 
if($largeur>$longueur){ 
echo"100px"; 
} 
else{ 
echo"150px"; 
} ?>" /> 

résolu

Posté : 19 oct. 2005, 21:53
par archos6
il manquait effectivement peu de chose un guillement à la fin de cette ligne.

Code : Tout sélectionner

<img src="<?php echo $row_rstableau['photo']; ?> "
[/code]

Posté : 19 oct. 2005, 22:39
par Cyrano
Tu aurait surtout pu simplifier pas mal:
<?php
$tableauTaille = getimagesize($row_rstableau['photo']);

$longueur = $tableauTaille[0];
$largeur  = $tableauTaille[1];
$l = $largeur > $longueur ? "150px" : "100px";
$h = $largeur > $longueur ? "100px" : "150px";
?>
   <img src="<?php echo $row_rstableau['photo']; ?>" width="<?php echo($l); ?>" height="<?php echo(?h); ?>" />