OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=" + HttpContext.Current.Server.MapPath("~/App_Data\\pmsvt.mdb"));
con.Open();
OleDbCommand cmd = new OleDbCommand("Insert into urunler(urunlerres,urunlerres_path) values(@urunlerres,@urunlerres_path)", con);
mudisel
Member
20 Points
14 Posts
Updating images within DataList with fileupload problem
Feb 29, 2012 01:25 PM|LINK
Hi everyone;
I am trying to update images (uploaded paths to database) within Datalist.
The script below INSERTs and uploads image within Datalist as a new data successfully resizing.
(i don't want to insert a new record i want record to be updated)
If i use UPDATE other fields are not updating and coming null. I am confused and looking for help.
This page will be admin page so i want each fields to be updateable
Thanks for any help.
My table is urunler
Columns urun_id, altkat_id,urunadi,urunlerres(image field),urunlerres_path(image path), bresimDesc(description)
ASPX
<table class="style14">
<tr>
<td>
<asp:Literal ID="Literal1" runat="server"></asp:Literal></td>
<td>
</td>
</tr>
<tr>
<td>
<asp:DataList ID="DataList1" runat="server" DataKeyField="urun_id"
OnEditCommand="DataList1_EditCommand"
OnCancelCommand="DataList1_CancelCommand"
OnUpdateCommand="DataList1_UpdateCommand"
DataSourceID="AccessDataSource1" CellPadding="4" ForeColor="#333333"
RepeatColumns="3" RepeatDirection="Horizontal" Width="660px">
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<AlternatingItemStyle BackColor="White" ForeColor="#284775" />
<ItemStyle BackColor="#F7F6F3" ForeColor="#333333" />
<EditItemTemplate>
<asp:TextBox ID="urunadi" runat="server" Text='<%# Eval("urunadi") %>'></asp:TextBox>
<asp:Label ID="thumbnailUploadLabel" runat="server" text="Upload a new thumbnail image:"/><br />
<asp:FileUpload ID="thumbnailImageUpload" runat="server" />
<asp:Button ID="thunbnailImageUploadButton" runat="server" Text="Upload Now" OnClick="thumbnailUpload"/><br />
<br />
<asp:LinkButton id="update" CommandName="Update" Text="Update" runat="server"/>
|
<asp:LinkButton id="cancel" CommandName="Cancel" Text="Cancel" runat="server"/>
</EditItemTemplate>
<SelectedItemStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
urun_id:
<asp:Label ID="urun_idLabel" runat="server" Text='<%# Eval("urun_id") %>' />
<br />
altkat_id:
<asp:Label ID="altkat_idLabel" runat="server" Text='<%# Eval("altkat_id") %>' />
<br />
urunadi:
<asp:Label ID="urunadiLabel" runat="server" Text='<%# Eval("urunadi") %>' />
<br />
urunlerres:<asp:Image ImageUrl='<%# Eval("urunlerres","~/urunler/{0}") %>' Width="60px" runat="server" ID="image" />
<br />
urunlerres_path:
<asp:Label ID="urunlerres_pathLabel" runat="server"
Text='<%# Eval("urunlerres_path") %>' />
<br />
bresimDesc:
<asp:Label ID="bresimDescLabel" runat="server"
Text='<%# Eval("bresimDesc") %>' />
<br />
<br /> <asp:LinkButton runat="server" ID="LinkButton3"
CommandName="edit" >
Düzenle
</asp:LinkButton>
</ItemTemplate>
</asp:DataList>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/App_Data/pmsvt.mdb"
DeleteCommand="DELETE FROM [urunler] WHERE [urun_id] = ?"
InsertCommand="INSERT INTO [urunler] ([urun_id], [altkat_id], [urunadi], [urunlerres], [urunlerres_path], [bresimDesc]) VALUES (?, ?, ?, ?, ?, ?)"
SelectCommand="SELECT * FROM [urunler]"
UpdateCommand="UPDATE [urunler] SET [altkat_id] = ?, [urunadi] = ?, [urunlerres] = ?, [urunlerres_path] = ?, [bresimDesc] = ? WHERE [urun_id] = ?">
<DeleteParameters>
<asp:Parameter Name="urun_id" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="altkat_id" Type="Int32" />
<asp:Parameter Name="urunadi" Type="String" />
<asp:Parameter Name="urunlerres" Type="String" />
<asp:Parameter Name="urunlerres_path" Type="String" />
<asp:Parameter Name="bresimDesc" Type="String" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="urun_id" Type="Int32" />
<asp:Parameter Name="altkat_id" Type="Int32" />
<asp:Parameter Name="urunadi" Type="String" />
<asp:Parameter Name="urunlerres" Type="String" />
<asp:Parameter Name="urunlerres_path" Type="String" />
<asp:Parameter Name="bresimDesc" Type="String" />
</InsertParameters>
</asp:AccessDataSource>
ASPX.CS
public partial class admin_Default4 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void DataList1_EditCommand(object source,
DataListCommandEventArgs e)
{
DataList1.EditItemIndex = e.Item.ItemIndex;
DataList1.DataBind();
}
protected void DataList1_CancelCommand(object source,
DataListCommandEventArgs e)
{
DataList1.EditItemIndex = -1;
DataList1.DataBind();
}
protected void DataList1_UpdateCommand(object source,
DataListCommandEventArgs e)
{
String urun_id =
DataList1.DataKeys[e.Item.ItemIndex].ToString();
String urunadi =
((TextBox)e.Item.FindControl("urunadi")).Text;
AccessDataSource1.UpdateParameters["urun_id"].DefaultValue
= urun_id;
AccessDataSource1.UpdateParameters["urunadi"].DefaultValue
= urunadi;
AccessDataSource1.Update();
DataList1.EditItemIndex = -1;
DataList1.DataBind();
}
protected void thumbnailUpload(object sender, EventArgs e)
{
FileUpload thumbnailImageUpload = (FileUpload)DataList1.Items[DataList1.EditItemIndex].FindControl("thumbnailImageUpload");
Label thumbnailUploadLabel = (Label)DataList1.Items[DataList1.EditItemIndex].FindControl("thumbnailUploadLabel");
System.Drawing.Image i;
if (thumbnailImageUpload.HasFile)
{
try
{
i = System.Drawing.Image.FromStream(thumbnailImageUpload.PostedFile.InputStream);
}
catch (Exception)
{
Literal1.Text = "THis is not an image file";
return;
}
string kda = thumbnailImageUpload.FileName.Substring(0, thumbnailImageUpload.FileName.LastIndexOf(".")) + ".jpg";
string dosyaadi = Server.MapPath("~/urunler/" + kda);
string tndosyaadi = Server.MapPath("~/urunler/" + kda);
if (File.Exists(dosyaadi) || File.Exists(tndosyaadi))
{
Literal1.Text += "fILE EXISTS!...";
return;
}
float oran = (float)i.Height / (float)i.Width;
int yeniboy = (int)(oran * 320f);
System.Drawing.Bitmap bm = new System.Drawing.Bitmap(320, yeniboy);
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bm);
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
//i.Save(dosyaadi, System.Drawing.Imaging.ImageFormat.Jpeg);
g.DrawImage(i, 0f, 0f, 320f, yeniboy);
bm.Save(tndosyaadi, System.Drawing.Imaging.ImageFormat.Jpeg);
string filenamea = Path.GetFileName(thumbnailImageUpload.PostedFile.FileName);
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=" + HttpContext.Current.Server.MapPath("~/App_Data\\pmsvt.mdb"));
con.Open();
OleDbCommand cmd = new OleDbCommand("Insert into urunler(urunlerres,urunlerres_path) values(@urunlerres,@urunlerres_path)", con);
cmd.Parameters.AddWithValue("@urunlerres_path", filenamea);
cmd.Parameters.AddWithValue("@urunlerres", "~/urunler/" + filenamea);
cmd.ExecuteNonQuery();
//Close dbconnection
con.Close();
}
else
{
thumbnailUploadLabel.Text = "Please choose a thumbnail image to upload.";
}
}
}
SonicMan
Participant
1472 Points
228 Posts
Re: Updating images within DataList with fileupload problem
Mar 02, 2012 06:27 AM|LINK
Hi
http://stackoverflow.com/questions/740544/findcontrol-in-datalist-edit-mode