Probleme pour redimensionner image

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Probleme pour redimensionner image

par Invité » 11 août 2005, 06:09

je suis desolée mais je ne sais pas ou est le bouton mettre Résolu, j'ai bien parcouru tout le reglment et suivi à la lettre ce qu'il disait:

(Cette opération est possible grâce à un bouton se situant dans la partie supérieure du sujet)

mais j'avoue qu'en desespoir de cause je reviens vers vous pour que vous puissiez me dire ou se situe ce bouton?

d'avance je vous remercie, en esperant ne pas etre mise à l'ecart de ce super forum qui m'aide beaucoup.
muriel

[Résolu] Probleme pour redimensionner image

par Invité » 11 août 2005, 05:58

Bonjour à tous,

Voilà j'ai un petit probleme j'ai reussi à trouver un morceau de code pour redimensionner mes images mais il ne marche que pour redimensionner tout un repertoire , et cela marche parfaitement, mais je voudrais pouvoir redimensionner les images pas pour tout un repertoire mais juste l'image qui est demandé.

Je vous mets en premier le code avec le redimensionnement pour tout un repertoire:
<?php
// url du fichier qui contient les images
$urlphoto = "http://www.votre-site.com/images";

// nom du répertoire qui contient les images
$nomRepertoire = "images";
if (is_dir($nomRepertoire))
{
$dossier = opendir($nomRepertoire);
while ($Fichier = readdir($dossier))
{
if ($Fichier != "." AND $Fichier != ".." AND (stristr($Fichier,'.gif') OR stristr($Fichier,'.jpg') OR stristr($Fichier,'.png') OR stristr($Fichier,'.bmp')))
{
// Hauteur de toutes les images
$h_vign = "120";
$taille = getimagesize($nomRepertoire."/".$Fichier);
$reduc = floor(($h_vign*100)/($taille[1]));
$l_vign = floor(($taille[0]*$reduc)/100);

echo '<a target="_blank" href="', $urlphoto, '/',$Fichier, '">';
echo '<img src="', $urlphoto, '/',$Fichier, '" ';
echo "width='$l_vign' height='$h_vign'>";
echo "</a>&nbsp;";
}
}
closedir($dossier);
}else{
echo' Le répertoire spécifié n\'existe pas';
}
?>



je vous mets maintenant mon code ou je voudrais inserer la meme chose mais sur ume image qui a été appelé:

<?
// connection à la base de données
mysql_connect("localhost","root","");
mysql_select_db("test");

$req = mysql_query("SELECT * FROM annonces WHERE id ='$id'");
$res = MYSQL_NUM_ROWS($req);

while ($res!=$i)
{
$id=mysql_result($req,$i,"id");
$image = mysql_result($req,$i,"image");

if ($image =="" ){ $img="";}
else {$img="<img src='images_upload/$image'>";}
?>


<?php echo $img; ?>

<?php
$i++;
}

mysql_close();
?>



En esperant avoir été comprehensible,
d'avance merci à tous ceux qui pourront m'aider
muriel

par Invité » 11 août 2005, 05:57

oupss !!! desolée je ferme le topic

encore merci pour votre aide

[Résolu]

par Cyrano » 10 août 2005, 20:10

Modération : Muriel : Prière de lire les règles du forum, en particulier la première ligne de l'article 3 !

par Invité » 10 août 2005, 19:33

juste une derniere petite chose j'ai rajouté à mon code cette ligne:

echo '<a target="_blank" href="', $urlphoto,$cheminphoto, '">';

pour pouvoir cliquer sur l'image et l'avoir en grand mais comment faire pour que à la place d'avoir une nouvelle fenetre je puisse avoir un popup qui s'ouvre au dimension que j'aurai choisi ?

je vous redonne mon code au complet:

// connection à la base de données
mysql_connect("localhost","root","");
mysql_select_db("immobilier");

$req = mysql_query("SELECT * FROM annonces WHERE id ='$id'");
$res = MYSQL_NUM_ROWS($req);

while ($res!=$i)
{
$id=mysql_result($req,$i,"id");
$image = mysql_result($req,$i,"image");

if ($image =="" ){ $img="";}

else {

$cheminphoto= "$image";// nom du champs de la base de donnée ou est ton imazge[/color]
$urlphoto = "images_upload/"; //Nom du répertoire ou est l'image[/color]
$h_vign = "50";
$taille = getimagesize($urlphoto."/".$cheminphoto);
$reduc = floor(($h_vign*100)/($taille[1]));
$l_vign = floor(($taille[0]*$reduc)/100);
echo '<a target="_blank" href="', $urlphoto,$cheminphoto, '">';
echo '<img src="', $urlphoto, '/',$cheminphoto, '" ';
echo "width='$l_vign' height='$h_vign' ALIGN='middle'";
echo "</td>";
}

$i++;
}

mysql_close();
?>


en esperant ne pas abuser,
encore merci pour votre aide
muriel

par Manio 54 » 10 août 2005, 18:01

donc tu peux mettre le resolu !!!

par muriel » 10 août 2005, 16:53

bonjour à tous,

Merci à Manio 54 et minichette pour vos reponses, ça marche parfaitement bien avec le code de minichette pour le code de manio 54 j'avoue ne pas avoir essayé cela me paraissait trop compliqué, desolée je ne suis qu'une debutante en php.
Je vous donne le code comme il marche chez moi car j'ai du faire 1 modification pas trop compliqué puisque le plus dur minichette l'a fait, ça peut toujours servir pour d'autres.

// connection à la base de données
mysql_connect("localhost","root","");
mysql_select_db("immobilier");

$req = mysql_query("SELECT * FROM annonces WHERE id ='$id'");
$res = MYSQL_NUM_ROWS($req);

while ($res!=$i)
{
$id=mysql_result($req,$i,"id");
$image = mysql_result($req,$i,"image");

if ($image =="" ){ $img="";}

else {

$cheminphoto= "$image";// nom du champs de la base de donnée ou est ton imazge[/color]
$urlphoto = "images_upload/"; //Nom du répertoire ou est l'image[/color]
$h_vign = "50";
$taille = getimagesize($urlphoto."/".$cheminphoto);
$reduc = floor(($h_vign*100)/($taille[1]));
$l_vign = floor(($taille[0]*$reduc)/100);
echo '<img src="', $urlphoto, '/',$cheminphoto, '" ';
echo "width='$l_vign' height='$h_vign' ALIGN='middle'";
echo "</td>";
}




$i++;
}

mysql_close();
?>

encore merci à tous et tout particulierement à minichette

muriel

par cyrill » 10 août 2005, 08:52

l'esprit est pas mal deja lol :wink:

Re: Probleme pour redimensionner image

par minichette » 10 août 2005, 07:58

tu met qq de ce type :

Code : Tout sélectionner

[color=red]// connection à la base de données[/color] mysql_connect("localhost","root",""); mysql_select_db("test"); $req = mysql_query("SELECT * FROM annonces WHERE id ='$id'"); $res = MYSQL_NUM_ROWS($req); while ($res!=$i) { $id=mysql_result($req,$i,"id"); $image = mysql_result($req,$i,"image"); if ($image =="" ){ $img="";} else { $cheminphoto= "";[color=red]// nom du champs de la base de donnée ou est ton imazge[/color] $urlphoto = "";[color=red] //Nom du répertoire ou est l'image[/color] [color=red]//afficher l'image en miniature[/color] $h_vign = "50"; $taille = getimagesize($nomRepertoire."/".$cheminphoto); $reduc = floor(($h_vign*100)/($taille[1])); $l_vign = floor(($taille[0]*$reduc)/100); echo '<img src="', $urlphoto, '/',$cheminphoto, '" '; echo "width='$l_vign' height='$h_vign' ALIGN='middle'"; echo "</td>"; } }


désolée s'il y a des fautes mais dans l'esprit c'est ça.

par Manio 54 » 10 août 2005, 07:51

J'ai bien un code juste pour une image
<?php
function redimensioner ($adresse, $largeurmax, $hauteurmax)
{
$ext = strrchr($adresse,'.');
     $ext = substr($ext,1);
     $ext = strtolower($ext);
	 
	 if ($ext !== 'gif' AND $ext !== 'jpg' AND $ext !== 'jpeg' AND $ext !== 'png') return FALSE;
	 
   if ($ext == 'gif')                   $res1 = imagecreatefromgif($adresse);
   if ($ext == 'jpg' || $ext == 'jpeg') $res1 = imagecreatefromjpeg($adresse);
   if ($ext == 'png')                   $res1 = imagecreatefrompng($adresse);
$largeur = imagesx($res1);
$hauteur = imagesy($res1);

   $rx = $largeurmax / $largeur;
   $ry = $hauteurmax / $hauteur;
   
   $r0 = ($rx < $ry) ? $rx : $ry ;
   
    $x2 = $largeur * $r0;
   $y2 = $hauteur * $r0;
   $res2 = imagecreatetruecolor($x2,$y2);
   imagecopyresized($res2,$res1,0,0,0,0,$x2,$y2,$largeur,$hauteur);
   imagedestroy($res1);
   if ($ext == 'gif')                   $reussi = imagegif($res2,$adresse);
   if ($ext == 'jpg' || $ext == 'jpeg') $reussi = imagejpeg($res2,$adresse);
   if ($ext == 'png')                   $reussi = imagepng($res2,$adresse);
   imagedestroy($res2);
   return $reussi;
   }
   ?>
Ce que tu fais tu mets sa dans un inc que tu mets dans le dossier de tes images et après tu as juste a mettre l'adresse de l'image et les dimensions voulues !!!

bonne continuation !!!

Probleme pour redimensionner image

par muriel » 10 août 2005, 04:05

Bonjour à tous,

Voilà j'ai un petit probleme j'ai reussi à trouver un morceau de code pour redimensionner mes images mais il ne marche que pour redimensionner tout un repertoire , et cela marche parfaitement, mais je voudrais pouvoir redimensionner les images pas pour tout un repertoire mais juste l'image qui est demandé.

Je vous mets en premier le code avec le redimensionnement pour tout un repertoire:
<?php
// url du fichier qui contient les images
$urlphoto = "http://www.votre-site.com/images";

// nom du répertoire qui contient les images
$nomRepertoire = "images";
if (is_dir($nomRepertoire))
{
$dossier = opendir($nomRepertoire);
while ($Fichier = readdir($dossier))
{
if ($Fichier != "." AND $Fichier != ".." AND (stristr($Fichier,'.gif') OR stristr($Fichier,'.jpg') OR stristr($Fichier,'.png') OR stristr($Fichier,'.bmp')))
{
// Hauteur de toutes les images
$h_vign = "120";
$taille = getimagesize($nomRepertoire."/".$Fichier);
$reduc = floor(($h_vign*100)/($taille[1]));
$l_vign = floor(($taille[0]*$reduc)/100);

echo '<a target="_blank" href="', $urlphoto, '/',$Fichier, '">';
echo '<img src="', $urlphoto, '/',$Fichier, '" ';
echo "width='$l_vign' height='$h_vign'>";
echo "</a>&nbsp;";
}
}
closedir($dossier);
}else{
echo' Le répertoire spécifié n\'existe pas';
}
?>



je vous mets maintenant mon code ou je voudrais inserer la meme chose mais sur ume image qui a été appelé:

<?
// connection à la base de données
mysql_connect("localhost","root","");
mysql_select_db("test");

$req = mysql_query("SELECT * FROM annonces WHERE id ='$id'");
$res = MYSQL_NUM_ROWS($req);

while ($res!=$i)
{
$id=mysql_result($req,$i,"id");
$image = mysql_result($req,$i,"image");

if ($image =="" ){ $img="";}
else {$img="<img src='images_upload/$image'>";}
?>


<?php echo $img; ?>

<?php
$i++;
}

mysql_close();
?>



En esperant avoir été comprehensible,
d'avance merci à tous ceux qui pourront m'aider
muriel