Hello everyone
In fact, I have my script to resize an image proportionally works well and register myself with the image a name entered in a
text box on a
directory.
What I want changed is the ability to resize the same image three times (with the name entered in the textbox, and stored on the
server.
Thank you any indication which may help me to complete my script
<!------------------------------ page index.php------------------------------------>
<html>
<head></head>
<body>
<!--On affiche le formulaire d'envoi d'une image-->
<center>
<br /><hr />
<form method="post" enctype="multipart/form-data" action="upload.php">
<p>
Le nom de l'image redimensionner avec 171 ,107
<input type="text" name="video"><br><br>
Le nom de l'image redimensionner avec 200 ,200
<input type="text" name="video2"><br><br>
Le nom de l'image redimensionner avec 500 ,500
<input type="text" name="video3"><br><br>
<input type="file" name="fichier" size="30">
<input type="submit" name="upload" value="Uploader">
</p>
</form>
</center>
</body>
</html>
<!------------------------------ fin page index.php------------------------------------>
<!------------------------------ page upload.php------------------------------------>
<?php
$nomImage=$_POST['video'];
if( isset($_POST['upload']) ) // si formulaire soumis
{
$content_dir = 'upload/'; // dossier où
sera déplacé le fichier
$tmp_file = $_FILES['fichier']['tmp_name'];
if( !is_uploaded_file($tmp_file) )
{
exit
("Le fichier est introuvable");
}
// on vérifie maintenant l'extension
$type_file = $_FILES['fichier']['type'];
if(
!strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'png') && !
strstr($type_file, 'bmp') && !strstr($type_file, 'gif') )
{
exit("Le fichier n'est pas une image");
}
// on
copie le fichier dans le dossier de destination
$ext = substr($_FILES['fichier']['name'], strrpos($_FILES['fichier']
['name'], '.'));
$name_file = $nomImage.$ext;
echo $name_file;
//fonction pour changer les dimentions des
fichiers
function redimensionner($file, $maxwidth, $maxheight) {
/*
$maxwidth = 171;
$maxheight = 171;
*/
list($rawwidth,
$rawheight, $type) = @getimagesize($file);
if ($maxwidth < $rawwidth && $rawwidth >= $rawheight) {
$width = $maxwidth;
$height = ($width / $rawwidth) * $rawheight;
}
elseif ($maxheight < $rawheight && $rawheight >= $rawwidth) {
$height =
$maxheight;
$width = ($height /$rawheight) * $rawwidth;
}
else {
$height = $rawheight;
$width = $rawwidth;
}
$imgbuffer = imagecreatetruecolor($width, $height);
switch($type) {
case 1: $image = imagecreatefromgif($file); break;
case 2: $image = imagecreatefromjpeg($file); break;
case 3: $image = imagecreatefrompng($file); break;
case 4: $image =
imagecreatefrombmp($file); break;
default: exit("Tried to create thumbnail from $file: not a valid image");
}
if (!$image)
exit("Image creation from $file failed for an unknown reason. Probably not a valid image.");
else {
imagecopyresampled
($imgbuffer, $image, 0, 0, 0, 0, $width, $height, $rawwidth, $rawheight);
imageinterlace($imgbuffer);
switch($type) {
case 1: $image = imagegif($imgbuffer, $file, 80); break;
case 2: $image = imagejpeg($imgbuffer, $file, 80);
break;
case 3: $image = imagepng($imgbuffer, $file, 7); break;
}
}
}
if( preg_match('#[\x00-\x1F\x7F-\x9F/\\\\]#',
$name_file) )
{
exit("Nom de fichier non valide");
}
else if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
{
exit("Impossible de copier le fichier dans $content_dir");
}
redimensionner($content_dir.$name_file, 171, 107);
}
?>
<!------------------------------ fin page upload------------------------------------>
------------------>
resized proportionately more images
Moderator: General Moderators
Re: resized proportionately more images
Double post. Locked.
Real programmers don't comment their code. If it was hard to write, it should be hard to understand.