par
roro166 » 08 avr. 2005, 10:40
alors oui normalement c 'est activé sur beaucoup d'hebergeur gratuit. Les probleme que tu vas rencontrer sont:
Le temps d'envoie de ta photo (limité à 1 minute le plus souvent)
La taille des fichiers (chez free c 'est environ 200 ko je crois)
Verifie bien quelle fonction de la librairie gd que tu vas prendre. Certaine sont bien determiné pour un seul type de fichier.
Bien sur il existe beaucoup de script pour arriver a envoyer une photo avec la gestion d'un miniature a la volée. Je te passe le mien mais la prochaine fois cherche un peu ...
Code : Tout sélectionner
// Recuperation du lien
if(isset($_FILE['image1'])){ $g1_photo= $_FILE['image1'];} else{ $g1_photo="images/grande/defaut.jpg"; $p1_photo="images/petite/defaut.jpg";}
//on traite la variable $image1: upload de l'image1
if ($_FILES['image1']['type'] == "image/gif" || $_FILES['image1']['type'] == "image/jpeg" || $_FILES['image1']['type'] == "image/pjpeg")
{
$nouveau_chemin = "../images/grande/";
$photo=$_FILES['image1']['name'];
$cible=$nouveau_chemin.$photo;
$temporaire=$_FILES['image1']['tmp_name'];
move_uploaded_file($temporaire, $cible) or die ("uploaded non effectué");
$fichierSource = "images/grande/$photo";
$g1_photo=$fichierSource;
//on crée un image vide dans laquelle se trouvera la miniature
$source = ImageCreateFromJpeg($cible) or die ("creation de l'image erronée");
$largeurSource = imagesx($source); //on recupere la taille original de l'image
$hauteurSource = imagesy($source);
if($largeurSource> $hauteurSource)
{
$new_largeur = 210; // largeur a definir
$new_hauteur = ($new_largeur * $hauteurSource) / $largeurSource ; // hauteur proportionnelle
}
if($hauteurSource>$largeurSource)
{
$new_largeur = 150; // largeur a definir
$new_hauteur = ($new_largeur * $hauteurSource) / $largeurSource ; // hauteur proportionnelle
}
if($hauteurSource == $largeurSource)
{
$new_largeur = 200 ; // largeur a definir
$new_hauteur = 200 ; // hauteur proportionnelle
}
$im = ImageCreateTrueColor ($new_largeur, $new_hauteur) or die ("Erreur lors de la création de l'image3");
ImageCopyResampled($im, $source, 0, 0, 0, 0, $new_largeur, $new_hauteur, $largeurSource, $hauteurSource);
$photo1 = "../images/petite/".$photo;
ImageJpeg ($im,$photo1);
$p1_photo = "images/petite/".$photo;
}
else
{
echo"<br>";
echo "Ne mettez que des images GIF ou JPG pour le champ 1<br>Recommencer l'opération pour l'image 1<br>";
echo"<br>";
}
alors oui normalement c 'est activé sur beaucoup d'hebergeur gratuit. Les probleme que tu vas rencontrer sont:
Le temps d'envoie de ta photo (limité à 1 minute le plus souvent)
La taille des fichiers (chez free c 'est environ 200 ko je crois)
Verifie bien quelle fonction de la librairie gd que tu vas prendre. Certaine sont bien determiné pour un seul type de fichier.
Bien sur il existe beaucoup de script pour arriver a envoyer une photo avec la gestion d'un miniature a la volée. Je te passe le mien mais la prochaine fois cherche un peu ...
[code]
// Recuperation du lien
if(isset($_FILE['image1'])){ $g1_photo= $_FILE['image1'];} else{ $g1_photo="images/grande/defaut.jpg"; $p1_photo="images/petite/defaut.jpg";}
//on traite la variable $image1: upload de l'image1
if ($_FILES['image1']['type'] == "image/gif" || $_FILES['image1']['type'] == "image/jpeg" || $_FILES['image1']['type'] == "image/pjpeg")
{
$nouveau_chemin = "../images/grande/";
$photo=$_FILES['image1']['name'];
$cible=$nouveau_chemin.$photo;
$temporaire=$_FILES['image1']['tmp_name'];
move_uploaded_file($temporaire, $cible) or die ("uploaded non effectué");
$fichierSource = "images/grande/$photo";
$g1_photo=$fichierSource;
//on crée un image vide dans laquelle se trouvera la miniature
$source = ImageCreateFromJpeg($cible) or die ("creation de l'image erronée");
$largeurSource = imagesx($source); //on recupere la taille original de l'image
$hauteurSource = imagesy($source);
if($largeurSource> $hauteurSource)
{
$new_largeur = 210; // largeur a definir
$new_hauteur = ($new_largeur * $hauteurSource) / $largeurSource ; // hauteur proportionnelle
}
if($hauteurSource>$largeurSource)
{
$new_largeur = 150; // largeur a definir
$new_hauteur = ($new_largeur * $hauteurSource) / $largeurSource ; // hauteur proportionnelle
}
if($hauteurSource == $largeurSource)
{
$new_largeur = 200 ; // largeur a definir
$new_hauteur = 200 ; // hauteur proportionnelle
}
$im = ImageCreateTrueColor ($new_largeur, $new_hauteur) or die ("Erreur lors de la création de l'image3");
ImageCopyResampled($im, $source, 0, 0, 0, 0, $new_largeur, $new_hauteur, $largeurSource, $hauteurSource);
$photo1 = "../images/petite/".$photo;
ImageJpeg ($im,$photo1);
$p1_photo = "images/petite/".$photo;
}
else
{
echo"<br>";
echo "Ne mettez que des images GIF ou JPG pour le champ 1<br>Recommencer l'opération pour l'image 1<br>";
echo"<br>";
}
[/code]