Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Charger une image a partir d'une base de données [ Archives ASP & ASP.NET / AU SECOURS !!!! ] (billou_13)

mardi 29 mars 2005 à 19:18:28 | Charger une image a partir d'une base de données

billou_13

Membre Club
Alors voila, je sais, vous allez me dire que il y a des posts qui parlent de ça mais j'ai été les voir et rien ne ressemble à ce que je fais ou du moins g pas compris LOL (désolé, il en faut non?)

Je récupèe mon image à partir d'une base de données Sql Server 2000 dans un sqlDataReader et à partir de là je bloque sur plein de points :
- d'une part, j'ai positionner un image à partir de visual studio .net 2003 sur un page aspx, et là impossible d'écrire dans l'image (pas de propriété ou du moins, g pas vu). Et je veux forcément afficher l'image dans une page web aspx (je suis chiant je sais).
- d'autre part, tous les posts à ce sujet ne donne que le chargement d'une image sur une nouvelle page ou ne sont pas en ASP.Net (du moins, il sont du genre VB). Moi, je suis plutot version C#.

J'arrive à récupérer le tableau de bytes à partir de l'image chargée de la base de données dans byte[] Image. Mais la je c pas comment faire pour:
- soit charger dans mon objet image qui est créé au préalable sur la page
- soit créer une image et l'insérée dans la page

(Pour info, ma requête est du type SELECT Image FROM Table_Image WHERE PK_Image='une valeur')

Il me manque que ça, alors si vous savez comment faire à partir de:
- sqlDataReader RD (d'ailleurs je c pas comment faire, moi je fais RD.GetBytes(0) )
- ou un tableau de byte[]
c'est du bon pour moi !

       Merci beaucoup à tous ceux qui se seront déjà donné la peine de lire,

               Bonne soirée !

Billou_13
Bask En Force

mardi 29 mars 2005 à 20:17:47 | Re : Charger une image a partir d'une base de données

jesusonline

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
dans un image.aspx tu fais un

response.clear
response.addheader("image/jpeg")

response.write(tableaudebyte)

response.flush
response.close

Je crois que c'est un truc comme ca, mais ca fait tres longtemps que j'ai pas fait ca ...



Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr

mercredi 30 mars 2005 à 00:22:05 | Re : Charger une image a partir d'une base de données

billou_13

Membre Club
oki, merci beaucoup, je vais tester ça !

Mais j'ai peur d'un truc. Est-ce que ta solution n'est pas pour une image dans une nouvelle page ? Car moi, je veux que ce soit une image qui est sur une page deja rempli ou je place un objet image.

D'ailleurs, a ce sujet la, le response.(quelque chose) place les resultats ou ca ??? dans une nouvelle page, ou tu peux choisir ?

Je c que la question doit etre bidon, mais j'ai du me mettre à l'ASP.NET vite fait en une journée aujourd'hui (d'habitude, je suis un développeur C# et je connais plutot le console.write LOL)

       Bonne nuit à tous et merci,

Billou_13
Bask En Force

mercredi 30 mars 2005 à 00:28:21 | Re : Charger une image a partir d'une base de données

jesusonline

Membre Club Administrateur CodeS-SourceS
Non c'est evidemment pas possible de mettre une image directement dans le code html de la page.

Comment ferais tu pour mettre ton image ? ou l'enregistrait tu ? tu es obligé de faire un <img src="image.aspx?id=truc" />


Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr

mercredi 30 mars 2005 à 09:18:06 | Re : Charger une image a partir d'une base de données

billou_13

Membre Club
Non, ce que je veux dire est que lorsque tu créé une application ASP.Net, tu as la possibilité de placer des images avec les outils dans ta page aspx. Dans ce cas, tu image ne s'ouvre pas toute seule sur un page internet comme quand tu clique sur une image sur une page web pour l'agrandir. Tu l'as plutot intégré à ta page.
     En fait, ce que je veux faire, en prenant un exemple est simple. C'est comme si l'image de nos avatars était dans une base de données et que je voulais la charger lorsque tu ouvre un post du forum CSSource. C'est tout simple!
  Mais, mon problème vient lorsque tu place une image à l'aide de la barre d'outils dans visual studio .net 2003 en ASP.net. Tu n'as alors pas accès à l'image créée dans ton code de programmation, à moins de faire pointer l'image sur un lien url. Donc c'est a ce niveau la que je bloque !

              Bonne journée,

Billou_13
Bask En Force

mercredi 30 mars 2005 à 10:34:51 | Re : Charger une image a partir d'une base de données

billou_13

Membre Club
Bon alors, voila g trouvé ma petite solution : je vais la mettre ici :
seulement, le petit problème est que lorsque l'on place un Response.(quelquechose), on efface toute la page web et toute la petite présentation que l'on a fait à l'aide de visual studio .Net 2003 (genre des labels, des champs de saisie ...) disparraissent.

Je voudrais savoir s'il existe pas un truc du genre :
- je place mon image avec l'id "Map" et après au lieu de faire Response.BinaryWrite(), je met Map.BinaryWrite(). Merci

   Voici le code :

private void Page_Load(object sender, System.EventArgs e)
        {
            // Placer ici le code utilisateur pour initialiser la page
            if (Session["PK_Image"]!=null)
            {
                MapLabel.Text="Image";
                sqlConnection.ConnectionString = "Persist Security Info=False;"
                    +"User ID=MapClient;"
                    +"Initial Catalog=BDD;"
                    +"Data Source=127.0.0.1;"
                    +"Packet Size=4096;"
                    +"Workstation ID=127.0.0.1;";

                try
                {
                    sqlConnection.Open();
                    string Request = "SELECT Image "
                        + "FROM Table_Image "
                        + "WHERE PK_Image="+Session["PK_Image"];
                    sqlCommand.Connection = sqlConnection;
                    sqlCommand.CommandText = Request;
                   
                    SqlDataReader RD = sqlCommand.ExecuteReader();
               
                    if(RD.Read())
                    {
                        byte[] ImageByte = new byte[50000];
                       
                        RD.GetBytes(0,0,ImageByte,0,50000);
                       
                        Response.BinaryWrite(ImageByte);
                                               
                        Result.Text = "Map Loaded";
                    }
                    else
                    {
                        Result.Text = "Map failed";
                    }
                    RD.Close();                               
                    sqlConnection.Close();
                }
                catch(Exception Error)
                {
                    Result.Text="Erreur: "+Error.Message;
                }
            }
            else Response.Redirect("notfound.aspx");
        }

Voila, mon problème vient du fait que tout mes MapLabel.text , Result.Text ne serve plus a rien car la fenêtre que je créé sous Visual Studio .NET est écrasée par le Response.BinaryWrite().Alors, si vous avez une solution, vous me sauvez !

          Merci, et bonne journée

Billou_13
Bask En Force

mercredi 30 mars 2005 à 10:50:24 | Re : Charger une image a partir d'une base de données

jesusonline

Membre Club Administrateur CodeS-SourceS
Oui c'est normal !!!

Tu peux pas faire ce que tu veux, pour mettre une image dans une page il faut la faire pointer quelque part, tu peux pas ecrire une image directement dans le flux html.

regarde les avatars, je suis sur que l'url pointent vers une page aspx avec un ID


Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr

mercredi 30 mars 2005 à 12:55:49 | Re : Charger une image a partir d'une base de données

billou_13

Membre Club
oki, merci dans ce cas la, je dois charger l'image dans une page aspx. Si je comprend bien alors, il faudrait que je fragmente ma page web en page aspx (à la style frames mais mieux) et alors je pourrais incorporer mon image dans ma page web.

Est ce que vous avez de bons tutoriaux ou autres pour savoir comment fragmenter un page web en pages aspx. Mais surtout, une fois les pages créées, comment faire pour mettre un barre sur le coté (comme Cssource.fr) et que des que l'on clique sur un lien du menu, pour faire charger la page dans une autre frame ("aspx"). Je sais pas comment pointer un page aspx. Si vous avez des trucs, je veux bien ?

         En tout cas merci beaucoup a toi jesusonline, ca fait plaisir d'avoir du soutient comme ca ! Merci encore et bonne après midi

Billou_13
Bask En Force

mercredi 30 mars 2005 à 13:06:05 | Re : Charger une image a partir d'une base de données

jesusonline

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Je pense que tu aurais besoin de quelques sur le HTML :) pour lier une image à une page HTML tu dois utiliser une balise <img src="adresseimage" alt="nom de l'image" />

pour les menus etc.. regarde du coté des user controls, j'ai expliqué plusieurs fois sur le forum comment ca marchait.


Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr

mercredi 30 mars 2005 à 15:44:47 | Re : Charger une image a partir d'une base de données

billou_13

Membre Club
Alors la, g vraiment un gros problème. J'ai beau allez voir tout sur les usercontrol, ca ne marche pas.

Je rajoute une page .ascx en faisant projet/ajouter un controle utilisateur web . La je met mon code que je vous ai présenté plus haut dans le page_Load

Ensuite, sachant que mon image sera en bas à droite de ma page, je créé un tableau de 4 cases et dans la case du bas à droite, j'ai tester deux trucs :
- L'histoire avec <img src="image.ascx" alt="limage" /> ne marche pas (même en spécifiant dans l'entête de la page ascx que c'est une image gif.
- Et d'autre part, j'ai tester, à l'aide d'une page trouvée sur le net, l'ajout direct dans le HTML d'une entête
<%@ Register TagPrefix="HPPH" TagName="MonImage" src="image.ascx" %>
et en mettant dans la case du bas a droite du tableau, <HPPH:MonImage id="M" runat="server"> . Et cette fois, mon image écrase tout le tableau ! et s'affiche sur toute la page

Alors, la je c vraiment plus quoi faire et c'est la misère, je penser que la création d'une page ascx m'aurait permis d'avoir un composant que je met n'importe ou sur la page.

La je dis au sercours SVP Comment faire ??? !!!


                    Merci,


Billou_13
Bask En Force


1 2

Cette discussion est classé dans : base, page, données, partir, image


Répondre à ce message

Sujets en rapport avec ce message

Afficher une image d'une base de données sur une page web [ par jimini ] Est-ce que quelqu'un sait comment afficher une image provenant d'une table ? J'aimerais enregistrer une image par ligne dans ma base de données. Tout Enregistrer dans base de données à partir de XML... [ par quickaboy ] Coucou les gens ! Voilà, je suis stagiaire en Informatique dans une boite, et je dois insérer des tuples dans une base de données à partir d'un fic DROP DATABASE SqlServer 2000 à partir d'une page ASP [ par yh ] Bonjour,J'utilise ADO pour effectuer mes requêtes sur SqlServer.Je souhaite supprimer une base de données à partir d'une page ASP. Pour cela je crée u Base de données et espace [ par lochet ] J'ai une base de données Access dans laquelle je rentre des informations avec des espaces entre les paragraphes mais quand je la remonte en page ASP t Listes et bases de données... [ par Chris_LaFouine ] Dans ma base de données, j'ai une table qui s'appelle Tarif voilà la structure :QF : Clef PrimaireTarifNiortTarifHorsNiortLe QF va de 1 à 9, il représ Comment remplir un 'dropdownlist' a partir d'une base de données [ par habouba ] Salut!!Comment faire pour remplir un dropdownlist a partir d'un ensemble d'unformation se trouvant dans une base de données? Aide: Connection base de données & configuration de web.config [ par asp_shamai ] Salut à tous;je voudrais effectuer une authentification sur ma page web. j'ai créer une page d'accueil qui donne accès à une page de connection(Login+ Récupérer une image contenu dans une base de données [ par badboy62cfp ] voila mon pb est le suivant, jai stocké des images dans une base de données access ms le seul pb c'est q je suis incapable de récupérer les images sur Projet => Base de Donnée [ par Pierrrot ] Bonjour,J'ai une base de donnée contenant des champs :d.Je souhaiterais raptrier toutes les données de la table vers la page asp.Dans le modéle suivan Base de données [ par emmanuel9 ] Bonjour à tous, J'ai une application en asp.net et à partir de cette application je me connecte à sql server pour récupérer des données et à partir


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,406 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.