/*
Cette fonction fonctionne bien lorsque $repository est de type "media/grd/" mais des que l'on insère les ".." pour aller dans le directory precedent dans l'arborescence il ne passe plus */
Erreur :
Warning: imagesx(): supplied argument is not a valid Image resource in mapage.php on line 40
Warning: imagesy(): supplied argument is not a valid Image resource in mapage.php on line 41
Warning: imagecopyresized(): supplied argument is not a valid Image resource in mapage.php on line 46
Est-il possible que j'accede a ce repertoire "../medias/grd/" sachant qu'il est impossible (point de vu sécurité) de mettre ma page php dans le dossier media ?
Trascal
Messages postés12Date d'inscriptionjeudi 18 mars 2004StatutMembreDernière intervention21 juillet 2004 6 juil. 2004 à 12:03
salut Houzéf@,
Merci beaucoup effectivement je n'y avait pas pensé :)
je vais regarder ton code au calme tout à l'heure ;)
et cela change quoi au niveau de la fonction si je rajoute des majuscule a la place des minuscule? je penserai a laisser les fonction en minuscule ;)
cs_Houzefa
Messages postés453Date d'inscriptiondimanche 9 février 2003StatutMembreDernière intervention 9 juillet 20042 6 juil. 2004 à 13:13
pour les minuscules je sais pas si ca peut vraiment perturber l'exécution ; je ne pense pas. mais vu que ces fonctions ont été définies en minuscules, autant toujours laisser les minuscules meme si ca peut paraitre moins lisible.
cs_GRenard
Messages postés1662Date d'inscriptionlundi 16 septembre 2002StatutMembreDernière intervention30 juillet 2008 6 juil. 2004 à 15:55
Pour ce qui est de
$type=strtolower(substr($fichier, -4));, c'est vraiment bête... et les fichiers une extension de 2 caractères ? tu perds une lettre...
Plutot faire
cs_Houzefa
Messages postés453Date d'inscriptiondimanche 9 février 2003StatutMembreDernière intervention 9 juillet 20042 6 juil. 2004 à 18:06
le pb c'est que là on veut seulement savoir si c'est ".jpg" donc seuls les 4 derniers caractères comptent et dans ce cas mon code est + rapide que le tien, c tout juste une question de performances (et aussi mon code est + petit).
cs_GRenard
Messages postés1662Date d'inscriptionlundi 16 septembre 2002StatutMembreDernière intervention30 juillet 2008 6 juil. 2004 à 18:21
oui mais pas fonctionnel à 100 % !!!!!!!!!!
tu préfères un code qui marche 1 fois sur 2 ou un code qui est un peu plus lent et plus gros (lent c'est relatif la... 0.000000001 sec :P) mais qui fonctionne a tout coup ?
cs_Houzefa
Messages postés453Date d'inscriptiondimanche 9 février 2003StatutMembreDernière intervention 9 juillet 20042 6 juil. 2004 à 19:09
oui ta raison si jutilise des include avec des fonctions prédéfinies, ta méthode est mieux. mais tas raison moi je fais plus au cas par cas, j'utilise le moins possib d'includes.
d'ailleurs sur mon site les seul include que je fais c'est pour mes infos MySQL et pour une fonction qui parcourt un dossier.
cs_GRenard
Messages postés1662Date d'inscriptionlundi 16 septembre 2002StatutMembreDernière intervention30 juillet 2008 6 juil. 2004 à 19:29
Bah c'est pas une bonne idée... moi pour chaque page loadé je fais 1 include qui fait environ 15 includes... tous très modulaire
C'est ca qui faut apprendre en programmant...
isidor91
Messages postés1Date d'inscriptiondimanche 6 juin 2004StatutMembreDernière intervention10 juillet 2004 10 juil. 2004 à 00:53
Bonjour,
J'ai un petit soucis, je cherche à faire un script qui liste le contenu du répertoire courant et s'il trouve des images *.gif *.jpg construit des miniatures de ces fichiers.
Mon problème c'est qu'il construit les 2 premières miniatures et le script s'arrête là!!!
Je vois pas de problème de compteur alors si quelqu'un peut me filer un coup de main.
Merci d'avance
Voici le code :
<?
$rep2 = opendir('.');while(false !($filename readdir($rep2)))
{
$arrayfile[]=$filename;
}
$i=0;
$cpt=count($arrayfile);
while($i < $cpt)
{
if($arrayfile[$i] != '..' && $arrayfile[$i] !='.' && $arrayfile[$i] !='')
{
if(is_file($arrayfile[$i]))
{
$nomfile = basename($arrayfile[$i]);
$ext = strtolower(substr($nomfile ,strrpos($nomfile ,".")+1,strlen($nomfile )-strrpos($nomfile ,".")-1));
if($ext=='gif' || $ext=='jpg' || $ext=='jpeg')
{
$Image = $nomfile ;
// on définit le nom de notre miniature
$miniature = "mini_$Image";
// Si l'image miniature existe déjà on la détruit
if(file_exists("./".$miniature))
{
imagedestroy ($miniature );
}
// on impose la taille de la largeur ou de la hauteur de la photo
$ratio = 150;
// on crée une ressource représentant en fait l'image à miniaturiser
$src=imagecreatefromjpeg($Image);
// on récupère les paramètres de notre image
$size =getimagesize($Image);
// on test si la largeur de l'image est supérieur à sa longueur
if ($size[0] > $size[1])
{
// on crée une ressource pour notre miniature
$im=@imagecreatetruecolor (round(($ratio/$size[1])*$size[0]), $ratio);
@imagecopyresampled($im, $src, 0, 0, 0, 0, round(($ratio/$size[1])*$size[0]),$ratio, $size[0], $size[1]);
}
else
{
// si la largeur est inférieure ou égale à la hauteur, on entre dans ce cas
// on crée une ressource pour notre miniature
$im=@imagecreatetruecolor (round(($ratio/$size[1])*$size[0]), $ratio);
@imagecopyresampled($im, $src, 0, 0, 0, 0, $ratio, round($size[1]*($ratio/$size[0])), $size[0], $size[1]);
}
ImageJpeg ($im, $miniature);
}
}
}
$i++;
}
unset($arrayfile);
?>