Redimensionner automatiquement image suite a upload....

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 : Redimensionner automatiquement image suite a upload....

par mere-teresa » 24 juil. 2005, 14:23

Modération : ça ne concerne pas les base de données :)

par kochalski » 24 juil. 2005, 14:09

Je te remercie, je vais le mettre en place
@+

Francis

par ouckileou » 24 juil. 2005, 13:58

j'ai trouvé ce post sur le forum :
http://www.phpfrance.com/forums/voir_su ... dimage.php

et ce code sur le net :
http://www.phpcs.com/codes/CREATION-DE- ... 25709.aspx

sinon tu peux voir que ce type de script n'est pas très long, si tu veux le coder toi-même ce forum sera là pour t'aider ;)

par kochalski » 24 juil. 2005, 13:51

Désolé,
En fait, quand l'internaute insere une image sur mon site, je ne veux pas lui afficher des messages d'erreur comme "format non pris en compte ou
trop vomumineux et puis je ne voudrais pas charger l'hebergeur avec des images trop lourde.
Ces images concernent soit le logo de l'entreprise soit les articles
que l'internaute met en vente.
j'ai fouiné sur le net, mais je ne trouve pas vraiment ce que je veux.

par ouckileou » 24 juil. 2005, 13:43

script ASP sur un forum PHP dans la partie "Base de données" =D>
Donc je recherche ce meme genre de script mais en PHP?
une petite recherche sur le forum ? ça a déjà du être évoqué
ou pourriez vous me dire ce que je dois y changer.....
tu ne dis même pas ce que tu veux faire...

Redimensionner automatiquement image suite a upload....

par kochalski » 24 juil. 2005, 13:31

Bonjour à tous,
Je viens de trouver un script pour redimensionner automatiquement les images suite a un upload. (Trouvé sur http://www.a525g.com/programmation/resi ... hp)Lorsque l'utilisateur télécharge une image, peut importe le format et la taille de celle-ci, l'image est automatiquement redimensionné à 90x130 pixels et enregistrée au format png.
Le probleme est que celui çi est en ASP et je ne connais pas ce langage.
Donc je recherche ce meme genre de script mais en PHP? ou pourriez vous me dire ce que je dois y changer.....
D'avance merci
<%@ Page Language="C#" Debug="true" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.IO" %>
<script runat="server">
void UploadBtn_Click(Object sender, EventArgs e)
{
String UploadedFile = MyFile.PostedFile.FileName;
int ExtractPos = UploadedFile.LastIndexOf("\\") + 1;

// Extraire le nom du fichier depuis le path
String UploadedFileName = UploadedFile.Substring(ExtractPos,UploadedFile.Length - ExtractPos);

// Enregistrer le fichier téléchargé sur le serveur dans le répertoire images.
// On change le nom de l'image en lui ajoutant la date du jour en début de nom
// de fichier. 
// Ceci permet d'éviter qu'un autre utilisateur télécharge une image du même nom.
DateTime rightNow = DateTime.Now;
String s = rightNow.ToString();
s = s.Replace(" ","-");
s = s.Replace(":",""); 
MyFile.PostedFile.SaveAs(Server.MapPath("/exemple") + "\\images\\" + s + UploadedFileName );

// Début de la création de la petite image (thumbnail)
try
{
// Trouver le nom de l'image dont le thumbnail doit être créé.
String imageUrl= s + UploadedFileName;
// Trouver la hauteur et la largeur de l'image.

// Spécifier une taille standard
int imageWidth1 = 0;
int imageHeight1 = 0; 
if (po.Checked) 
{
imageWidth1 = 90; 
imageHeight1 = 130;
}
if (pa.Checked) 
{
imageWidth1 = 130; 
imageHeight1 = 90;
}

if (imageUrl.IndexOf("/") >= 0 || imageUrl.IndexOf("\\") >= 0 )
{
// Il y a présence d'un / ou \
Response.End();
}

// L'image téléchargée sera emmagasinée dans le répertoire images.
// Pour que la taille de l'image soit changé, l'image originale doit être dans le dossier images.
imageUrl = "/exemple/images/" + imageUrl;
System.Drawing.Image fullSizeImg = System.Drawing.Image.FromFile(Server.MapPath(imageUrl));
System.Drawing.Image.GetThumbnailImageAbort dCallBack = new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback);

System.Drawing.Image thumbNailImg1 = fullSizeImg.GetThumbnailImage(imageWidth1, imageHeight1, dCallBack, IntPtr.Zero);



// Enregistrer les images en format PNG
// Le format peut être ajusté en utilisant la propriété ImageFormat
thumbNailImg1.Save ( Server.MapPath("/exemple") + "\\images\\" + s + "-p.png", ImageFormat.Png);
thumbNailImg1.Dispose();

divImg.InnerHtml = "<img src=\"/exemple/images/" + s + "-p.png\" style=\"border:3px solid #999999;\" />";
}
catch(Exception ex)
{
Response.Write("Une erreur s'est produite : " + ex.ToString());
}
}
// Cette fonction est requise pour la création du thumbnail.
public bool ThumbnailCallback()
{
return false;
}
</script>

<html>
<head>
<title>A525G - Exemple d'upload et de resize d'image</title>
</head>
<body>
<form action="fileupload.php" method="post" enctype="multipart/form-data" runat="server">
<br />
<table border="1" width="95%" align="center" cellpadding="0" cellspacing="0" summary="">
<tr>
<th align="left" valign="middle" width="65%">
<span class="formulaire-texte-section-entete">
Ajout d'une image
</span>
</th>
<th align="left" valign="middle" width="35%">
 
</th>
</tr> 
<tr>
<td align="left" colspan="2" width="100%">
<br />
<table width="100%" align="center" cellspacing="0" cellpadding="5">
<tr>
<td >
<b>Sélectionnez l'image à ajouter</b>
<br />
<input name="PostedFile" type="file" id="MyFile" runat="server" />
</td>
</tr>
</table>
<br />
<table width="100%" align="center" cellspacing="0" cellpadding="5">
<tr>
<td colspan="3">
<b>Indiquez l'orientation de votre photo</b>
</td>
</tr>
<tr>
<td width="30%">&nbsp;</td> 
<td width="30%">&nbsp;</td>
<td width="40%">
 
</td>
</tr>
</table>
<table align="center" width="100%" cellpadding="3" cellspacing="0">
<tr>
<td bgcolor="#999999" align="center"><input type="submit" value="Ajouter" runat="server" onserverclick="UploadBtn_Click" /></td>
</tr>
<tr>
<td align="center"><div id="divImg" runat="server" /></td>
</tr>
</table>
</td>
</tr>
</table>

</form>
</body> 
</html>