Soyez le premier à donner votre avis sur cette source.
Vue 29 747 fois - Téléchargée 3 399 fois
private void save(string nomcomplet) { //Avec la class FileInfo on peut recuperer la taille de l'image FileInfo fiImage=new FileInfo(nomcomplet); //On declare un tableau de la taille de l'image this.m_lImageFileLength=fiImage.Length; m_barrImg=new byte[Convert.ToInt32(this.m_lImageFileLength)]; //Avec l'objet FileStream on remplit le tableau de byte FileStream fs = new FileStream(nomc,FileMode.Open,FileAccess.Read,FileShare.Read); int iBytesRead=fs.Read(m_barrImg,0,Convert.ToInt32(this.m_lImageFileLength)); fs.Close(); //On ouvre la connection SqlConnection myConnection = new SqlConnection(); myConnection.ConnectionString = ConfigurationSettings.AppSettings["Connect"]; //On specifie que c'est une procedure stockee SqlCommand myCommand = new SqlCommand("SP_StockImage",myConnection); myCommand.CommandType = CommandType.StoredProcedure; //Parametre myCommand.Parameters.Add("@Name", SqlDbType.VarChar, 50); myCommand.Parameters.Add("@Picture", SqlDbType.Image); //Les valeurs pour les parametres de la procedure stockee myCommand.Parameters["@Name"].Value = Label1.Text; myCommand.Parameters["@Picture"].Value = m_barrImg; //Parametre de sortie SqlParameter renvoitID = new SqlParameter("@ID_Recup",SqlDbType.Int, 4); renvoitID.Direction = ParameterDirection.Output; myCommand.Parameters.Add(renvoitID); //Open connection myConnection.Open(); //execution de la procedure stockee int id = Convert.ToInt32(myCommand.ExecuteScalar()); //Close connection myConnection.Close(); //On redirige Response.Redirect("Affiche.aspx?lastID="+id); }
3 avril 2007 à 11:01
<%@ Page Language="VB" buffer="true" %>
<%
Response.Clear()
Dim ImageBuffer As Byte()
Dim Mime As String
Dim IDImage As Integer = 0
If Not Integer.TryParse(Request("IDImage"), IDImage) Then
Response.StatusCode = 500
Response.StatusDescription = "IDImage Incorrect ou non fourni."
End If
'Récupération de MimeType et du
'code binaire de l'image dans
'les variables respective
'Graceau paramêtre IDImage
Response.ContentType = Mime
Response.BinaryWrite(ImageBuffer)
Response.End()
%>
2 avril 2007 à 18:29
31 mars 2007 à 03:37
Mais en combinant cette source avec d'autre traitant de sécurité, on doit pouvoir ce faitre un truc pas mal!
31 mars 2007 à 03:35
1-tu créé une page ASP
2-Dans le type Mime tu met "image/jpeg"(ou autre selon le type d'image)
3-tu récupère le binaire de l'image dans un buffer et tu le transmet au navigateur
ex :
Response.MimeType="image/jpeg"
'Récupération de l'image voulue dans BuffImage
Response.BinaryWrite(BuffImage)
Response.End()
Bon je pas le nom de toutes les fonction en tête donc t'attend pas a se que le code marche (mais alors vraiment pas!!!) mais c'est la démarche a suivre
ce qu'il faut retenir c'est que les navigateur ne tienne pas compte de l'extention du fichier(.aspx) mais du type mime pour gérér les contenus. La page peut prendre des param^tres commes toutes les pages asp(en URL ou en post), donc en passant en passant un ID tu peut renvoyedr la bonne image de la base de donnée. Enfin, il suffit de codé les autre page en fonction :
"/>
voilà j'espère que c'est clair je te laisse le soin de retrouvé toutes les bonne fonctions
PS: si tu as plusieurs type d'image, tu renseigne un champ avec le type mime dans la BDD et tu le met dinamiquement dans la reponse.
veille a ne pas laissé d'espace,retour a la ligne ou autre en dehors des <% et %> sinon ils risque d'être transmit avec l'image et de la corrompre.
PPS: tu peut utilisé la même technique pour transféré d'autre chose que des image(doc PDF par exemple)
30 mars 2007 à 15:13
comment récuperer l'image dans un controle asp , par exple le controle image
et merci d'avant
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.