Forum > ASP.NET 1.x och 2.x > Språk - C#
Hej!
Är ny på här med asp och har lyckats fixa en upload funktion till databas och mapp..Problemet är det att det är filnamnet som sparas i databasen och det är det som visas när man sedan hämtar info ifrån databasen.
Här är min kod:
<asp:Image ID="Image1" runat="server" ImageUrl='<%# Bind("pic") %>'/>
<asp:FileUpload ID="FileUpload1" runat="server"/>
<asp:Button ID="uploadbutton" runat="server" Text="Ladda Upp" OnClick="uploadbutton_click" CssClass="knapp2"/>
protected void uploadbutton_click(object sender, EventArgs e)
{
String savePath = @"d:\\golfklubben\WebApplication2\bilder\";
Button button = (Button)sender;
FileUpload FileUpload1 = (FileUpload)button.Parent.FindControl("FileUpload1");
Label lars = (Label)button.Parent.FindControl("lars");
Image Image1 = (Image)button.Parent.FindControl("Image1");
if (FileUpload1.HasFile)
{
String fileName = FileUpload1.FileName;
savePath += fileName;
FileUpload1.SaveAs(savePath);
lars.Text = "Your file was saved as " + fileName;
Image1.ImageUrl = fileName;
}
else
{
lars.Text = "You did not specify a file to upload.";
}
}
Kan ni se vad som är fel?
Jag förstår inte riktigt din formulering av felet?
Får du något felmeddelande eller vad händer?
Inget felmeddelande! Utan när jag sedan ska läsa in bilden från databasen, blir det ett kryss bara.
Vad säger källkoden när du kör projektet, har du databundit innehållet?
hur binder man data då, är inte det <%# bind ("pic") %> som binder bilderna till databasen?
Källkoden säger :<img id="ListView1_image1_0" src="tattooo.jpg" /> om bilderna
det är bundet, då du får ut innehåll, men jag gissar på att tattooo.jpg inte ligger i rooten på ditt projekt?
<asp:Image ID="Image1" runat="server" ImageUrl='bilder/<%# Bind("pic") %>'/><asp:Image ID="Image1" runat="server" ImageUrl='~/bilder/<%# Bind("pic") %>'/>Det fungerar inte ändå. Vet verkligen inte vad det är för fel..Något annat förslag?
var ligger dina bilder mot var din genererade html kod? Du måste pekar var i bilderna finns på webben.
bilderna ligger i en mapp som ligger i samma mapp som de övriga filerna... just nu d:\\golfklubben\WebApplication2\bilder\. Men meningen är ju att sidan ska läggas upp sedan och mappen blir en annan.
Det är var bilderna läggs på disk, jag undra var addressen till bilderna är ifrån din webbsida. var ligger din aspx fil, i rooten av webapplication2?
Har kollat i databasen, det är bara filnamnet som sparas. Borde det inte vara sökvägen till bilden som ska sparas, för att det ska fungera?
Nej, eller du kan köra sökvägen som en webburl, inte var filen ligger på disk. Var ligger bilderna på servern? http://localhost/bilder/xxx.jpg och du kör din applikation mot http://localhost då få du helt enkelt lägga in bilder/ i din url.
Jag tror inte bilderna läggs på servern. När jag söker på dem så som du skrev, finns det inga filer.
Eftersom din kod du har bifogat har inget med att spara något till en databas, så vet jag inte alls hur logiken är kopplad på hur du få in filnamn i din databas.